Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git MSBuild和Jenkins:将凭据放在哪里?_Git_Visual Studio_Msbuild_Jenkins_Continuous Integration - Fatal编程技术网

Git MSBuild和Jenkins:将凭据放在哪里?

Git MSBuild和Jenkins:将凭据放在哪里?,git,visual-studio,msbuild,jenkins,continuous-integration,Git,Visual Studio,Msbuild,Jenkins,Continuous Integration,我正在尝试使用Jenkins、Git和MSBuild设置一个小型的持续集成服务器。 我已经阅读了很多关于这个主题的教程,但是我仍然有很多问题 我创建了一个Jenkins作业,它将从Git中提取更改并使用MSBuild部署到另一台服务器 生成操作正在调用MSBuild.exe,并具有以下属性: /p:VisualStudioVersion=12.0 /p:Configuration=Release /p:Platform="Any CPU" /p:DeployOnBuild=T

我正在尝试使用Jenkins、Git和MSBuild设置一个小型的持续集成服务器。
我已经阅读了很多关于这个主题的教程,但是我仍然有很多问题

我创建了一个Jenkins作业,它将从Git中提取更改并使用MSBuild部署到另一台服务器

生成操作正在调用MSBuild.exe,并具有以下属性:

/p:VisualStudioVersion=12.0
/p:Configuration=Release
/p:Platform="Any CPU"
/p:DeployOnBuild=True
/p:DeployTarget=Test
/p:MsDeployServiceUrl=https://myserver:8172/MsDeploy.axd
/p:AllowUntrustedCertificate=True
/p:UserName=myusername
/p:Password=mypassword
它工作得很愉快,但我想知道更多。例如:

  • 我正在将凭据指定为属性。还有更好的办法吗?请注意,部署服务器是外部的(不在LAN中)
  • 是否需要使用
    /P:CreatePackageOnPublish=True
    属性?若有,原因为何
  • 到目前为止,我一直尝试遵循以下教程:

  • 我建议不要直接构建.sln或.csproj文件。但要编写一个迷你msbuild定义文件(通常是.proj)并在其中放入一些参数。(并使命令行调用更简单)

  • 然后,您的问题将略微更改为“如何存储凭据”。我通常将它们存储在一个独立的文件中

  • 此url显示如何保护“敏感信息”文件

    我喜欢将我的信息存储在一个小xml文件中,如下所示:

    下面是一个“基本msbuild(.proj)”文件的示例。(以下链接)

    这是给CC.NET的。但哲学是一样的。 很少打hudson/jenkins/cc.net/other-propetary电话。使用.proj文件完成99%的所需操作。并将您的CI(jenkins/cc.net/other)视为“超级花哨的msbuild执行器”


    您的凭据用于哪些目的,您正在使用/p交换机?在目标服务器(IIS或计算机用户)上进行Web部署身份验证。感谢GranadCoder,我将探索在其他文件中加密凭据的这种方法。那么/p:CreatePackageOnPublish参数呢?它被编码到.proj文件中。对不起,我是说那个参数是什么?它到底有什么作用?我不知道,对不起。