microsoft / microsoft/go

Official build retry failed due to overlapping artifact names with first attempt

Open
#850 1 comment 0 reactions 1 assignee View on GitHub

@dagood is already working on this.

Since Sep 8, 2023.

Dominant language
Go
Stars
431
Forks
44
Avg merge
21h 18m
Merged PRs (30d)
30

Description

Example: https://dev.azure.com/dnceng/internal/_build/results?buildId=2092753&view=logs&j=096efaa6-b2f0-564b-cac3-a8304bac7ae1&t=d709f04b-0994-5a1e-d441-17028e26568f&l=1309

Potential solutions:

  • Make sure artifact names have the attempt number in them to ensure retries can succeed. This may involve more complicated YML to access the attempt number in downstream jobs/stages/pipelines.
  • Make sure artifact publishes with potentially conflicting names can't happen unless the job/stage is successful. Artifact publish for diagnosis purposes (logs, etc.) can be done in a separate publish step that contains the attempt number. (The attempt number doesn't complicate the build, because downstream jobs/stages don't need to download artifacts that are only uploaded for diagnosis purposes.)
  • Upload with attempt number, and re-upload without attempt number later in the build when we know we have had success. This approach might be useful with cross-pipeline dependencies if figuring out the attempt number over the boundary is too complicated.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.