-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work list
Description
Background: Fuchsia and Android artifacts with content hashing require some extra work from scripts in the flutter repository. These do not have access to LUCI's "content_hash" variable. Fuchsia in particular handles the complete upload via build_fuchsia_artifacts.py
Problem: If two builds are in the merge queue with the same content hash; they can race to build and upload the fuchsia artifacts and tag them with the same content_hash:[a-f0-9]{40} tag. We tried to handle this here:
already_exists = CheckCIPDPackageExists('flutter/fuchsia', content_tag)
if already_exists:
print('CIPD package flutter/fuchsia tag %s already exists!' % content_tag)
# do not return; content hash can match multiple PRs (reverts, framework only)
else:
command.extend(['-tag', content_tag])Instead we should upload the artifact and tag with the git_revision, and then check if the content_hash exists before tagging with a different call to RunCIPDCommandWithRetries
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work list