我正在尝试使用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
它正在愉快地工作,但我想知道更多。例如:
/P:CreatePackageOnPublish=True
属性?如果是,为什么?到目前为止,我已尝试按照以下教程进行操作:
非常感谢!
答案 0 :(得分:4)
我建议不要直接构建.sln或.csproj文件。但是编写一个迷你msbuild定义文件(通常是.proj)并在其中放入一些参数。 (并保持命令行调用更简单)
然后您的问题稍微更改为"如何存储凭据"。我通常将它们存储在一个独立的文件中。
此网址显示了如何保护敏感信息"文件。
Encrypting password in a MSBuild file
我喜欢将我的信息存储在一个小的xml文件中,如下所示:
FTP Credentials for MSBuild.ExtensionPack.Communication.Ftp
以下是"基本msbuild(.proj)"的示例。文件。 (链接下方)
这是针对CC.NET的。但哲学是一样的。 做很少的hudson / jenkins / cc.net /其他propietrary电话。使用.proj文件可以获得99%的需要。把你的CI(jenkins / cc.net / other)想象成一个超级花哨的msbuild执行者"
How to setup building steps for CruiseControl.net from repository of the building project?