在Team City Build中复制文件

我有一个存储在Git中的MVC 5项目。 我已经在我们的构建服务器上安装了TeamCity 9.1.7(构建37573),并且我已经将其设置为在开发人员检查Git代码时成功执行构建。 我的目标是如果构建成功,则使用MS Web Deploy部署MVC应用程序。 我见过很多教程,建议使用Web部署包,但这些教程已有六年或更久。 这仍然是将成功的TeamCity构建部署到IIS的首选方法吗?

此外,由于多种原因,我们已将web.config文件添加到gitignore。 作为Web.config.base的开发者将复制到他们自己的web.config文件作为起点。 开发人员在第一次下拉项目时会将web.config.base文件复制到web.config中。 我试图在TeamCity中设置一个命令行任务,将web.config.base文件拷贝到web.config中

Working Directory: (left blank)
Command: xcopy MyMVCProjectWeb.config.base MyMVCProjectWeb.config

此构建步骤始终失败,并始终显示退出代码4。 我已经将TeamCity构建代理服务设置为以本地管理员身份运行。 我已经将它作为上面的直接命令文本,作为cmd或bat文件,以及各种不同的路径样式,尽可能使用TeamCity工作目录变量,从路径中排除MyMVCProject,包括MyMVCSolution在路径等等。为什么xcopy会失败的任何想法?


这是我面对的同样的问题。

但最后,我们将主web.config文件放在安装了TeamCity的服务器上。

然后,一旦项目被部署,我用web.config文件取代了web.config文件,该文件现在在服务器上。 所以在web.cofig文件中不会有冲突

在Web部署步骤之后,您只需添加一个构建步骤。 在这里你可以使用Xcopy,你可以替换你的web.config文件

希望这会起作用


WebDeploy仍然是部署ASP.NET Web应用程序的理想选择。 它甚至与全新的ASP.NET Core框架一起使用。 我们不使用TC,而是在工作中广泛使用WebDeploy / MSDeploy来部署50多个应用程序。

关于你的配置设置,我从来没有见过这种方法。 我们使用参数化来处理每个环境的配置更改(包括本地开发)。 如果您担心配置值的安全性,则可以保护具有敏感信息的SetParameter文件,并使用默认值或占位符值在源代码管理中包含web.config。

http://www.dotnetcatch.com/2014/09/08/parameterizationpreview-visual-studio-extension/

链接地址: http://www.djcxy.com/p/36791.html

上一篇: Copy file during Team City Build

下一篇: Setting Team City Build Agent Port Number in Marathon