我的问题与此类似
Build and Deploy a Web Application with TFS 2015 Build
但是,该解决方案对我不起作用。我正在研究持续集成,我必须部署一个 Web 应用程序和其他网站,通过该网站,我在创建用于部署的 .zip 包时没有问题。我正在使用 /p:DeployOnBuild=true/p:WebPublishMethod=Package/p:PackageAsSingleFile=true/p:SkipInvalidConfigurations=true/p:PackageLocation="$(Build.StagingDirectory)\\"
然后我使用部署 IIS 应用程序在网站的虚拟目录中提取 .zip 包。
但是对于 Web 应用程序,无论我在 MSBuild 参数中使用什么参数,都不起作用,而且我不想将所有文件从项目复制到服务器,并且我想要一个与删除 .sln 不同的选项以及从服务器释放后的其他文件。
我尝试了 /p:DeployOnBuild=True/p:PublishProfile=$(DeploymentConfiguration)
并使用了作为 Web 部署包创建的发布配置文件,但在工件中构建之后,我得到了相同的文件,我的意思是所有项目文件,包括 .sln。
我不确定当我使用 /p:DeployOnBuild=True/p:PublishProfile=$(DeploymentConfiguration)
时应该在工件中期待什么,但我没有看到变化。
有人可以解释一下在这种情况下我应该等待什么吗?以及如何使用 TFS 正确部署 Web 应用程序项目(因为当我使用 .pubxml 从 Visual Studio 发布时工作正常,在服务器中仅复制权限文件),并且想法是在TFS 不使用任何来自 Visal Studio 的手册。
欢迎任何想法和解释,谢谢。
最佳答案
直到我研究构建定义的 TFS 选项,并且当您必须为定义选择模板时,您可以看到构建和部署两个选项,我选择了构建的模板,但我尝试使用部署选项时,一切都不起作用:
默认情况下,MSBuild Arguments 中的参数为:/p:OutDir="$(build.binariesdirectory)\\"
在该文件夹中,我们拥有部署所需的一切。
关于web-applications - 使用 Web 部署包通过 TFS 2017 构建和部署 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43985427/