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

问题描述 投票:1回答:2

有没有人使用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任务。

azure deployment azure-devops umbraco azure-pipelines
2个回答
1
投票

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

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

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


1
投票

要直接回答你的问题,是的MSBuild参数在这里建立或破坏部署。你可以在我的截图中看到我的。我从Umbraco成功的生产部署中获取了它。

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

因为你必须首先使用Nuget,然后恢复包,然后构建应用程序。您不需要复制任何东西(因此您不需要复制步骤),它将构建正确的MS Build参数并自行复制到build.artifactstagingdirectory。然后你需要有适当的发布管道,但一次只有一件事。我使用的构建步骤在下面。在npm custom步骤之后是应用程序的实际构建。

enter image description here

附:确保运行应用程序的相应文件包含在csproj中,因为这是azure devops读取要构建的内容的地方。

© www.soinside.com 2019 - 2024. All rights reserved.