2016-06-30 102 views
3

我有一个现有网站,我想部署在Azure,使用Visual Studio团队服务。该网站由静态文件组成,没有ASP.NET或其他任何涉及的内容。如何从Visual Studio团队服务部署静态网站到Azure

在Visual Studio Team Services中,我创建了一个构建,它执行npm installgulp构建。这会导致包含网站的所有文件的dist文件夹。在Azure中,所有设置都正确(订阅,网络应用,...)。

但是,我不确定如何将我的代码推送到Azure。浏览VSTS的Release选项卡中的选项,似乎总是需要一个'artifact',但我只是有一堆文件。我需要发布dist文件夹中的文件并确保index.html已投放。

我该怎么做?

这个问题与this有关,但是,答案都从Azure开始,并没有提到如何使用Visual Studio Team Services部署现有代码。

回答

4

诀窍是自己创建工件,它可以像包含静态网站文件的zip文件一样简单。该zip文件应该作为工件复制到$(build.artifactstagingdirectory)目标目录中。接下来,您可以使用简单的Web应用程序部署任务将该zip文件发布到Azure。如果index.html位于根目录中,则Azure足够智能以便为其提供服务。

下面是一个工作构建和部署流程。假定gulp用于构建网站并将构建输出(即静态文件)写入dist文件夹。

enter image description here

1

最简单的方法是从源代码管理中进行部署,如果您在Azure门户网站的“设置”下查看,您可能会看到"Continuous deployment"

从那里,你可以从Visual Studio团队服务,Github上部署等

每次签入将被部署,也是错误的,所以你可能想引入一个分级环境作为deployment slot为好,当您感觉您的网站已准备好生产时,您可以在这里与生产交换分段。

+0

那么这肯定是一个选项创建服务端点后FTP部署,但我想用VSTS控制发行版,而不是从Azure设置CD。我的确有一个测试,测试和生产环境,我想'推动'从一个部署版本发布到下一个版本。 – fikkatra

+0

如果您想从Visual Studio Online完成所有工作,您必须查看发布管理,网址为:https://www.visualstudio.com/en-us/features/release-management-vs.aspx – Lostfields

+0

如果您只想使用VSO对于源代码控制和工作任务,您可以查看https://www.appveyor。com /将自动化你的构建和部署 – Lostfields

1

没有必要创建一个神器,另一种解决方案可以在VSTS

enter image description here

enter image description here

相关问题