-
Notifications
You must be signed in to change notification settings - Fork 166
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ansible: promote release assets from staging r2 bucket #3620
Conversation
Rebased to latest as nodejs/node#51394 has landed |
relativedir=${dstdir/$dist_rootdir/"$site/"} | ||
aws s3 cp ${dstdir}/index.json $staging_bucket/$relativedir/index.json --endpoint-url=$cloudflare_endpoint --profile $cloudflare_profile | ||
aws s3 cp ${dstdir}/index.tab $staging_bucket/$relativedir/index.tab --endpoint-url=$cloudflare_endpoint --profile $cloudflare_profile |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't we also copy the two shasum files?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The shasum files are already put into the dist-prod bucket by the release script, https://github.com/nodejs/node/blob/a923fed8743cf787add2a22def0fdbb88d736a42/tools/release.sh#L20C1-L20C18
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
_resha.sh is not only called by releasers. Automation for nightly, test, rc, builds also calls it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah I see, should I remove the upload of the .asc and .sig files from the release script then?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe? I'm not entirely sure about the order in which things happen during a release.
I noticed yesterday when I released v22.2.0 that SHASUMS256.txt
wasn't uploaded to R2 (only the .asc
and .sig
files were).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changed it so that it will copy the SHASUM256.txt into the staging bucket now. The later call that syncs the version in the staging bucket -> dist bucket recursively copies the entire directory, so no change should be needed there.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CI doesn't upload Shasums. For releases it happens when the release script is executed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SHASUM256.txt
is generated on the www machine by the promotion script (specifically _resha.sh
, which also regenerates index.json
and index.tab
). For releases promotion is manually triggered by the releaser. For nightly builds there's a 30 min cron job that runs promote_nightly.sh
:
- "*/30 * * * * dist /home/staging/tools/promote/promote_nightly.sh nodejs" |
The signed artifacts (SHASUM256.txt.asc
and SHASUM256.txt.sig
) are only generated for releases as part of the release script. These are generated on the releaser's machine and uploaded as part of that script.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@flakey5 I assume you have updated the code based on the comments above?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From my understanding yes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I understand this code, it looks good to me :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Can this be merged and deployed or is there something blocking it? |
cc @nodejs/build? |
I'm visiting this PR from #3461 (comment) @flakey5 confirmed that they've incorporated suggestions from comments in #3620 (comment) |
I think this has broken the release workflow. We're getting an error from
I've undone the changes to |
Trying to find the cause and wanted to sanity check - was the change to the |
Yes, the I don't think the values read get passed to
build/ansible/www-standalone/tools/promote/resha_release.sh Lines 17 to 26 in 1a94c74
which errors here build/ansible/www-standalone/tools/promote/_resha.sh Lines 24 to 27 in 1a94c74
settings ).
|
Fix up: #3826 |
Note: nodejs/node#51394 should land before this does
Reference #3602
cc @targos @MoLow @ovflowd