Windows 服务的 Azure 构建任务 :- no zip under $(build. 工件暂存目录)

标签 azure azure-devops

我们有一个 azure 的管道,它在 $(build.artifactstagingdirectory) 中生成 zip 工件。稍后我们将其提取并部署到目标文件夹。这对于网站来说效果很好。 msbuildargs 如下所示:-

msbuildArgs : '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'

我们有一个 Windows 服务,它不会生成任何 zip 工件。关注article后。我在 msbuildargs 中添加了/p:OutDir="$(build.stagingDirectory),现在我可以看到文件,但看不到 zip 文件。我们实际使用的是它。

msbuildArgs : '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)" /p:OutputPath="$(Build.ArtifactStagingDirectory)"'

是否有针对 zip 工件的 csproj 设置? Windows 服务有什么具体设置吗?找不到 PackageAsSingleFile 的更多文档。

最佳答案

is there any csproj settings for zip artifact? any specific setting for windows service ? Could not find more documents for PackageAsSingleFile.

大多数 MSBuild 参数都适用于 ASP .NET 项目,对于 Windows 服务(控制台应用程序)没有任何作用。

我们只需要使用/p:OutDir=$(Build.ArtifactStagingDirectory)。这将告诉 MSBuild 将构建输出放入工件暂存目录中。

但这仍然不会生成带有参数 /p:OutDir=$(Build.ArtifactStagingDirectory) 的 zip 包。如果你想生成 zip,我们可以使用任务 Archive files .

此外,我们可以将/p:OutDir更改为其他文件夹,以便我们可以使用Archive files任务来生成zip,例如:

/p:OutDir=$(System.DefaultWorkingDirectory)/output

然后使用归档文件任务:

enter image description here

关于Windows 服务的 Azure 构建任务 :- no zip under $(build. 工件暂存目录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67538906/

相关文章:

c# - 如何从 Azure Key Vault KeyBundle 创建 X509Certificate2 对象

azure - 启用 vnet 集成时,限制从特定 azure 功能对存储帐户的专用终结点的网络访问

excel - 在 Excel VBA 宏中使用 Azure 翻译器

rest - 如何使用 VSTS REST API 对新构建进行排队

Azure 门户中缺少 Azure DevOps 项目

Azure 混合 worker Docker

c# - 从 Azure Web 应用程序提供 Logstash。如何?

android - 将 Android Studio 项目与 Azure Pipelines CI/CD 集成

Azure DevOps Rest API 不返回属于特定组的成员的组

azure-devops - VSTS 版本中不存在工件目录