【问题标题】:DOTNETCORECLI@2 Publish succeeds but no artifactsDOTNETCORECLI@2 发布成功但没有工件
【发布时间】:2021-09-09 10:55:15
【问题描述】:

我有一个遗留项目,想进入 Azure Devops 管道。我有一个构建管道设置,构建似乎成功了。我添加了一个 DotnetcoreCli Publish 任务,这成功了,但运行后我没有任何可用的工件,因此无法实现发布管道。

想知道是否有人能发现我所做的任何愚蠢的事情?

这些是我的管道中定义的任务:

  - task: DotNetCoreCLI@2
    inputs:
      command: 'build'
      projects: '$(solution)'
      arguments: '--configuration $(buildConfiguration)'
    displayName: 'dotnet build $(buildConfiguration)'
  - task: DotNetCoreCLI@2
    condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/UAT'))          
    inputs:
      command: 'publish'
      publishWebProjects: true
      configuration: $(BuildConfiguration)
      arguments: '--output $(Build.ArtifactStagingDirectory) --verbosity detailed'
      zipAfterPublish: false # We want individual files published, not a zip

这是我的发布任务跟踪的结尾:

(入口点):2021-09-09T08:57:26.4983992Z 任务“消息” 2021-09-09T08:57:26.4984515Z MYOrg.MyApp.UI-> D:\a\1\a\Staging\MYOrg.MyApp.UI\ 2021-09-09T08:57:26.4985051Z
完成执行任务“消息”。 2021-09-09T08:57:26.4985655Z
1>在项目“MYOrg.MyApp.UI.csproj”中完成构建目标“Publish”。 2021-09-09T08:57:26.4986271Z 目标 跳过“_InitProjectCapabilityProperties”。以前建造的 成功地。 2021-09-09T08:57:26.4991632Z 1>目标 文件中的“_InitPublishIntermediateOutputPath” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\DotNetCLIToolTargets\Microsoft.NET.Sdk.DotNetCLITool.targets” 来自项目“D:\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj”(目标 “_AspNetCoreProjectSystemPostPublish”取决于它): 2021-09-09T08:57:26.4992847Z 任务“ConvertToAbsolutePath” 2021-09-09T08:57:26.4993300Z 完成执行任务 “转换为绝对路径”。 2021-09-09T08:57:26.4993889Z 1>完成 在项目中构建目标“_InitPublishIntermediateOutputPath” “MYOrg.MyApp.UI.csproj”。 2021-09-09T08:57:26.4994986Z 1>目标 文件中的“_TransformWebConfig” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets”来自项目“D :\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj"(目标 “_AspNetCoreProjectSystemPostPublish”取决于它): 2021-09-09T08:57:26.4996207Z 使用“TransformWebConfig”任务 从组装 “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0....\tools\netcoreapp1.0\Microsoft.NET.Sdk.Publish.任务.dll”。 2021-09-09T08:57:26.4997005Z 任务“TransformWebConfig” 2021-09-09T08:57:26.5010124Z 配置以下 用于 IIS 的项目:'D:\a\1\a\Staging\MYOrg.MyApp.UI' 2021-09-09T08:57:26.5010856Z 在更新 web.config 'D:\a\1\a\Staging\MYOrg.MyApp.UI\web.config' 2021-09-09T08:57:26.5129541Z 配置项目完成 成功 2021-09-09T08:57:26.5140303Z 完成执行任务 “转换网络配置”。 2021-09-09T08:57:26.5143720Z 1>完成 在项目中构建目标“_TransformWebConfig” “MYOrg.MyApp.UI.csproj”。 2021-09-09T08:57:26.5145086Z 1>目标 文件中的“_TransformAppSettings” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets”来自项目“D :\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj"(目标 “_AspNetCoreProjectSystemPostPublish”取决于它): 2021-09-09T08:57:26.5146333Z 任务“TransformAppSettings” 跳过,由于错误条件; ('$(_IsAspNetCoreProject)' == '真' 和 '$(IsTransformAppSettingsDisabled)' != 'true' 和 @(DestinationConnectionStrings) != '') 被评估为 ('true' == '真'和''!='真'和!='')。 2021-09-09T08:57:26.5153800Z
1>在项目中完成构建目标“_TransformAppSettings” “MYOrg.MyApp.UI.csproj”。 2021-09-09T08:57:26.5156303Z 1>目标 文件中的“_GenerateEFSQLScripts” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets”来自项目“D :\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj"(目标 “_AspNetCoreProjectSystemPostPublish”取决于它): 2021-09-09T08:57:26.5157868Z 任务“生成EFSQLScripts” 跳过,由于错误条件; ('$(_IsAspNetCoreProject)' == '真' 和 '$(IsGenerateEFSQLScriptsDisabled)' != 'true' 和 @(EfMigrations) != '') 被评估为 ('true' == 'true' And '' != 'true' And != '')。 2021-09-09T08:57:26.5180482Z 1>完成构建目标 项目“MYOrg.MyApp.UI.csproj”中的“_GenerateEFSQLScripts”。 2021-09-09T08:57:26.5183010Z 1>目标“_GenerateRunCommandFile” 在文件中 “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets”来自项目“D :\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj"(目标 “_AspNetCoreProjectSystemPostPublish”取决于它): 2021-09-09T08:57:26.5185028Z 任务“GenerateRunCommandFile” 跳过,由于错误条件; ('$(_IsWebJobProject)' == 'true' 并且 '$(IsGenerateRunCommandFileDisabled)' != 'true') 被评估为 ('' == 'true' 和 '' != 'true')。 2021-09-09T08:57:26.5185862Z 1>在项目中完成构建目标“_GenerateRunCommandFile” “MYOrg.MyApp.UI.csproj”。 2021-09-09T08:57:26.5186601Z 目标 由于错误条件,“_PublishFiles”被跳过; ('$(发布协议)' != 'FileSystem' 和 '$(PublishProtocol)' != '') 被评估为 ('文件系统'!='文件系统'和'文件系统'!='')。 2021-09-09T08:57:26.5187820Z 1>目标 文件中的“_AspNetCoreProjectSystemPostPublish” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\DotNetCLIToolTargets\Microsoft.NET.Sdk.DotNetCLITool.targets” 来自项目“D:\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj”(目标 “_DotNetCLIPostPublish”依赖它):2021-09-09T08:57:26.5188885Z
1>完成构建目标“_AspNetCoreProjectSystemPostPublish” 项目“MYOrg.MyApp.UI.csproj”。 2021-09-09T08:57:26.5189885Z
1>在文件中定位“AfterPublish” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\Microsoft.NET.Sdk.Publish.targets” 来自项目“D:\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj”(目标 “_DotNetCLIPostPublish”依赖它):2021-09-09T08:57:26.5190833Z
1>在项目中完成构建目标“AfterPublish” “MYOrg.MyApp.UI.csproj”。 2021-09-09T08:57:26.5191798Z 1>目标 文件中的“_DotNetCLIPostPublish” “C:\hostedtoolcache\windows\dotnet\sdk\2.0.3\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\DotNetCLIToolTargets\Microsoft.NET.Sdk.DotNetCLITool.targets” 来自项目“D:\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj”(条目 点):2021-09-09T08:57:26.5192771Z 1>完成构建目标 项目“MYOrg.MyApp.UI.csproj”中的“_DotNetCLIPostPublish”。 2021-09-09T08:57:26.5193415Z 1>完成建筑项目 “D:\a\1\s\MYOrg.MyApp.UI\MYOrg.MyApp.UI.csproj”(发布目标)。 2021-09-09T08:57:26.5210238Z 2021-09-09T08:57:26.5225190Z 构建 成功了。 2021-09-09T08:57:26.5260048Z 0 警告 2021-09-09T08:57:26.5260950Z 0 错误

【问题讨论】:

    标签: .net-core azure-devops azure-pipelines publish dotnetcorecli


    【解决方案1】:

    在 dontet publish 命令之后,您需要制作 Azure Pipeline 工件。

    你可以这样做:

    - publish: $(Build.ArtifactStagingDirectory)
      artifact: WebApp
    

    Here 你有这方面的文档。之后,您将获得一个可用于发布管道的工件。

    【讨论】:

    • @PAblo 如果我的回复对你有帮助,你能考虑点赞吗?
    猜你喜欢
    • 2021-11-05
    • 1970-01-01
    • 1970-01-01
    • 2018-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-14
    相关资源
    最近更新 更多