使用Azure DevOps将Umbraco v8应用程序部署到Azure

时间:2019-04-12 10:02:49

标签: azure deployment azure-devops umbraco azure-pipelines

是否有人使用Azure DevOps将Umbraco v8应用程序部署到Azure? 我可以通过Visual Studio成功进行部署,但是Azure DevOps似乎只能将所有dll复制到目标,没有任何视图或任何内容,并且不会生成zip。

如果有人设法做到这一点,他们可以分享他们采取的步骤吗? 我在管道中执行的步骤是:

  • 构建
  • 测试
  • 部署
  • 发布符号
  • 将文件复制到
  • 发布工件

我注意到的是我需要一个发布配置文件才能从Visual Studio成功发布,但是我看不到Devops中应该包含配置文件的位置,除非它应该在构建参数中?

我当前的构建参数:

/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\" 

我正在使用Visual Studio Build任务。

2 个答案:

答案 0 :(得分:1)

我假设您只是将文件复制到VM上,并且已经处理了数据库/内容的部署。

如果要复制Visual Studio项目中的所有文件,则需要确保MSBuild将其复制到build / artifact目录中。

要复制丢失的文件,需要确保已将“构建操作”设置为“复制到输出目录”,例如,视图或您在App_Data中编写的几乎所有内容。这就是您在VS中设置构建操作的方式:https://docs.microsoft.com/en-us/visualstudio/ide/build-actions?view=vs-2019

答案 1 :(得分:1)

要直接回答您的问题,可以在此处生成或破坏MSBuild参数。您可以在我的屏幕截图中看到我的。我从Umbraco成功的生产部署中提取了它。

所以我看不到您的实际管道,但是从我看来,您实际上并没有“构建”该应用程序。

因为您必须先使用Nuget,然后还原软件包,然后构建应用程序。您不需要复制任何内容(因此您不需要复制步骤),只需使用正确的MS Build参数即可构建并复制到build.artifactstagingdirectory上。然后,您需要具有适当的发布管道,但一次只有一件事。我使用的构建步骤在下面。 npm custom步骤之后是应用程序的实际构建。

enter image description here

P.S。确保csproj中包含用于运行该应用程序的适当文件,因为那是azure devops读取选择和构建内容的地方。