Skip log publish for WinGet/Homebrew installer jobs#16865
Merged
Conversation
These jobs only download already-built CLI archives and prepare WinGet manifests / Homebrew casks; they never run the repo build, so artifacts/log/$(_BuildConfig) is never produced. With enablePublishBuildArtifacts: true, the Arcade 1ES job template injects a Publish Logs pipelineArtifact output whose targetPath points at that empty/missing directory. 1ES path validation on that output fails the job (continueOnError on the CopyFiles step doesn't help because the failure is on the 1ES publish output itself). Set enablePublishBuildArtifacts: false on the WinGet/Homebrew installer stage in both the internal (azure-pipelines.yml) and unofficial (azure-pipelines-unofficial.yml) pipelines. There are no build logs to publish from these jobs. This fixes the Prepare Installers stage failures in the internal pipeline (e.g. dnceng/internal build 2969660). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 16865Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 16865" |
Member
Author
Contributor
There was a problem hiding this comment.
Pull request overview
Disables Arcade/1ES build-log artifact publishing for the prepare_installers stage jobs (WinGet + Homebrew) in both official and unofficial Azure Pipelines, preventing failures caused by the log artifact directory not being created in jobs that only consume previously-built archives.
Changes:
- Set
enablePublishBuildArtifacts: falsefor theprepare_installersstagejobs.ymltemplate invocation in the official pipeline. - Set
enablePublishBuildArtifacts: falsefor the same stage in the unofficial pipeline. - Added inline YAML comments documenting why log publishing must be disabled for these jobs.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| eng/pipelines/azure-pipelines.yml | Disables build-log artifact publishing for WinGet/Homebrew packaging jobs that don’t produce artifacts/log/.... |
| eng/pipelines/azure-pipelines-unofficial.yml | Applies the same log-publish disablement to the unofficial pipeline’s installer-prep stage. |
davidfowl
approved these changes
May 8, 2026
This was referenced May 11, 2026
Member
Author
|
/backport to release/13.3 |
Contributor
|
Started backporting to |
nellshamrell
pushed a commit
to nellshamrell/aspire
that referenced
this pull request
May 18, 2026
These jobs only download already-built CLI archives and prepare WinGet manifests / Homebrew casks; they never run the repo build, so artifacts/log/$(_BuildConfig) is never produced. With enablePublishBuildArtifacts: true, the Arcade 1ES job template injects a Publish Logs pipelineArtifact output whose targetPath points at that empty/missing directory. 1ES path validation on that output fails the job (continueOnError on the CopyFiles step doesn't help because the failure is on the 1ES publish output itself). Set enablePublishBuildArtifacts: false on the WinGet/Homebrew installer stage in both the internal (azure-pipelines.yml) and unofficial (azure-pipelines-unofficial.yml) pipelines. There are no build logs to publish from these jobs. This fixes the Prepare Installers stage failures in the internal pipeline (e.g. dnceng/internal build 2969660). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes the Prepare Installers stage failure in the internal pipeline (e.g. dnceng/internal build 2969660) where the WinGet and Homebrew jobs fail at log-publish time.
Why it fails today
The
WinGetandHomebrewjobs inazure-pipelines.ymlandazure-pipelines-unofficial.ymlgo through Arcade'seng/common/templates-official/jobs/jobs.ymlwithenablePublishBuildArtifacts: true.That setting (in
eng/common/templates-official/job/job.yml) injects a 1ESpipelineArtifactoutput:But these jobs never run
./build.sh— they onlycheckout+DownloadPipelineArtifact+ run the WinGet manifest / Homebrew cask packaging template against previously-built CLI archives. Soartifacts/log/Release/is never created, and 1ES path validation on the publish output fails the job.continueOnErroron the upstreamCopyFilesstep doesn't save us because the failing step is the 1ESpipelineArtifactoutput itself.Fix
Set
enablePublishBuildArtifacts: falseon the installer-stagejobs.ymlinvocation in both pipelines. There are no build logs to publish from these jobs.enableTelemetry: trueis preserved (that flag controls dotnet CLI telemetry env vars, not log publishing).Verification
./restore.shand./build.share not affected — this only changes pipeline YAML for the WinGet/Homebrew packaging stage.azure-pipelines.yml) and unofficial (azure-pipelines-unofficial.yml) pipelines, since both define identical WinGet/Homebrew jobs that hit the same template path.build_sign_native.ymlkeepenablePublishBuildArtifacts: truebecause they do run a build and produce logs.