我需要build立一个Jenkins构build服务器,可以在没有Visual Studio的情况下构buildASP.NET项目?

我试图使用Jenkins(在Windows Server 2012上)来build立一个构build服务器,它将负责构build(使用config变换)和打包(zip文件)ASP.NET MVC / Web API项目,然后将它们移动到指定的位置C:/出版)。

基本上,我需要通过命令行Visual Studio Web Publish for File System,而无需安装Visual Studio。 压缩过程可以通过Jenkins推迟到命令行。

从search中,以下步骤是我迄今为止所做的:

  1. 安装了Jenkins
  2. 安装了Jenkins MSBuild插件
  3. 复制'C:\ Program Files文件(x86)\ MSBuild \ Microsoft \ VisualStudio \ v11.0 \ WebApplications \ Microsoft.WebApplication.targets'到我的生成服务器
  4. 安装了Windows 8 SDK
  5. 创buildJenkins的工作,从回购拉动源代码
  6. 将命令行参数添加到MSBuild任务….

第6步是什么绊我。 我已经在网上尝试了很多build议,但不知道如何获得Visual Studio的发布命令的全部效果。

一个build议是使用发布configuration文件属性作为参数:

/p:WebPublishMethod=FileSystem /p:LastUsedBuildConfiguration=Release /p:LastUsedPlatform=AnyCPU /p:ExcludeApp_Data=False /p:publishUrl=C:\Published\ /p:DeleteExistingFiles=True 

但是这不会将任何文件移动到c:\Published\

我需要将C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web从我的开发箱C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web到生成服务器上的相同位置,然后属性工作正常。

除了上面列出的步骤之外,下面是我必须做的额外步骤来完成这个工作:

  1. 更改Jenkins Windows服务以管理员身份登录
  2. C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web从我的开发机器C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web到构建服务器上的相同位置
  3. 通过在Powershell中运行[Environment]::SetEnvironmentVariable("EnableNuGetPackageRestore", "true.", "Machine")来启用NuGet包恢复