是否有人使用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任务。
答案 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
步骤之后是应用程序的实际构建。
P.S。确保csproj中包含用于运行该应用程序的适当文件,因为那是azure devops读取选择和构建内容的地方。