我有一个Visual Studio解决方案,其中包含各种类库和几个ASP.NET网站项目。该网站项目引用了类库项目,因此为了便于工作,它们需要使用同一解决方案。
整个解决方案是通过Visual Studio Team Services(现在称为Azure DevOps)进行版本控制的。
将解决方案提交给VSTS后,该解决方案将由VSTS自动构建。
我还想使用持续集成,并将解决方案中的网站项目通过FTP部署到各种Web服务器(FTP是唯一的选择,MSDeploy等不可用)。这些版本将由基于提交的构建触发。
问题是我需要在由构建触发的发行版中通过FTP发布实际的网站文件,但是构建工件仅包含.zip文件。
例如,如果解决方案具有一个名为“ MyWebsite”的网站项目,则构建工件具有一个名为Mywebsite.zip的zip,但无法访问任何文件。这样,我可以将zip文件部署到Web服务器,而不是实际的网站文件。
如何部署这些文件?
此外,我不想在网站项目中部署所有文件。我想部署一个发布版本(类似于使用Visual Studio 2017的发布工具发布的版本),该zip文件似乎包含该版本。
答案 0 :(得分:0)
VSTS / Azure Dev Ops在Extract Files和FTP Upload中内置了任务。发布管道还具有一个变量,您可以通过发布任务和powershell对其进行访问。 $(System.DefaultWorkingDirectory)
是将工件(内置代码)下载到的位置。具有两个任务的代理工作应该能够完成您想要的工作。