【问题标题】:DotNetCoreCLI@2 publish does not filter projectsDotNetCoreCLI@2 发布不过滤项目
【发布时间】:2021-11-05 06:17:13
【问题描述】:

我的存储库中有以下文件夹结构:

  • 来源
    • 后台

      • Module1.Api => 可发布
        • Module1.Api.csproj 和所有其他项目文件
      • 其他项目文件夹
      • Module1.Api.sln
    • 前端

      • 模块1.UI
        • Module1.UI.csproj 和所有其他项目文件
      • 其他项目文件夹
      • Module1.UI.sln

在我们的管道中,我们有一个步骤可以为 Backend 服务生成所需的发布包。

- task: DotNetCoreCLI@2
      displayName: DotNet Publish
      inputs:
        command: publish
        publishWebProjects: True
        arguments: '--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory) --runtime win-x64 --self-contained true'
        zipAfterPublish: False
        projects: 'Source/Backend/**/*.csproj' ##FILTER BACKEND ONLY

但是项目是一个通配符,只能发布后端 (projects: 'Source/Backend/**/*.csproj') 它仍然为 Module1.UI.csproj 运行 dotnet publish,这是错误的,因为它位于 Source/Frontend 文件夹中。

我错过了什么吗?

【问题讨论】:

  • 克日什托夫的建议怎么样?你试过了吗?是否有项目参考?

标签: azure-pipelines dotnet-cli


【解决方案1】:

请使用工作目录:

- task: DotNetCoreCLI@2
  displayName: DotNet Publish
  inputs:
    command: publish
    publishWebProjects: True
    arguments: '--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory) --runtime win-x64 --self-contained true'
    zipAfterPublish: False
    projects: '**/*.csproj' ##FILTER BACKEND ONLY
    workingDirectory: 'Source/Backend'

【讨论】:

    猜你喜欢
    • 2020-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多