1.内网安装插件
如果在内网安装Jenkins插件,可以考虑在有外网的地方安装完插件,把插件目录下对应的文件夹及文件Copy到内网。 Jenkins有丰富的插件: http://localhost:8080/pluginManager/
如:
2.配置TFS及MSBuild
访问:http://localhost:8080/configure 可以配置TFS\MSBuild
如果不想这么配置的话,直接在环境变量里加上:(不推荐哈)
C:\Program Files\TortoiseGit\bin;C:\Program Files (x86)\VisualSVN\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE;C:\Program Files (x86)\MSBuild\12.0\Bin
3.TFS配置注意事项:
http://xxx.xxx.xxx.xxxx:8888/tfs/DefaultCollection 不要忘记DefaultCollection
4.MSBuild配置注意事项:
/p:Configuration=Sharepoint /p:VisualStudioVersion=12.0 /p:DeployOnBuild=true /p:PublishProfile=”C:\Program Files (x86)\Jenkins\workspace\xxxprj\Web\Properties\PublishProfiles\Jenkins.AutoDeploy.pubxml“
编译完之后,可以再执行一些cmd命令
建议使用VS先创建一个发布配置,这样子直接在MSBuild中可以使用。
5.参考配置:
<?xml version='1.0' encoding='UTF-8'?> <project> <actions/> <description></description> <keepDependencies>false</keepDependencies> <properties/> <scm class="hudson.plugins.tfs.TeamFoundationServerScm" plugin="tfs@3.1.1"> <serverUrl>http://xxxx.xxxx.xxx.xxx:xxxx/tfs/DefaultCollection</serverUrl> <projectPath>$/xxxx.Web</projectPath> <localPath>.</localPath> <workspaceName>Hudson-${JOB_NAME}-${NODE_NAME}</workspaceName> <userPassword>cGFzczAxIQ==</userPassword> <userName>xxxx\dq</userName> <useUpdate>true</useUpdate> </scm> <canRoam>true</canRoam> <disabled>false</disabled> <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding> <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding> <triggers/> <concurrentBuild>false</concurrentBuild> <builders> <hudson.plugins.msbuild.MsBuildBuilder plugin="msbuild@1.23"> <msBuildName>(Default)</msBuildName> <msBuildFile>IFund.Web.sln</msBuildFile> <cmdLineArgs>/p:Configuration=Sharepoint /p:VisualStudioVersion=12.0 /p:DeployOnBuild=true /p:PublishProfile="C:\Program Files (x86)\Jenkins\workspace\xxx.Web\Properties\PublishProfiles\Jenkins.AutoDeploy.pubxml"</cmdLineArgs> <buildVariablesAsProperties>false</buildVariablesAsProperties> <continueOnBuildFailure>false</continueOnBuildFailure> <unstableIfWarnings>false</unstableIfWarnings> </hudson.plugins.msbuild.MsBuildBuilder> <hudson.tasks.BatchFile> <command>xcopy /E /C /Y "C:\Jenkins\Web" "C:\target" xcopy /E /C /Y "C:\Jenkins\workflow" "C:\target\workflow\"</command> </hudson.tasks.BatchFile> </builders> <publishers/> <buildWrappers/> </project>
6.参考文章
http://nakedalm.com/configuring-jenkins-talk-tfs-2013/
http://www.ganshani.com/blog/2014/03/build-automation-using-jenkins-and-tfs-repository/
如遇到问题,可以查看日志