git-node: add release promotion step #402
Conversation
b44d683
to
84b0a27
Codecov Report
@@ Coverage Diff @@
## master #402 +/- ##
=======================================
Coverage 76.34% 76.34%
=======================================
Files 21 21
Lines 1484 1484
=======================================
Hits 1133 1133
Misses 351 351 Continue to review full report at Codecov.
|
|
I'll review and try this when I do the 13.x release next week |
0666c26
to
13191bd
|
I'm trying |
|
Is it supposed to ask me for my GitHub credentials?
|
|
Okay, I found that I can enter my username/password/otp code and it continues.
|
|
The output of the next steps is weird:
|
|
Then it crashes on the secure tag step:
|
|
hmm @targos - it pulls information from your local ncu configuration In re. the second issue - looks like And re. |
|
@codebytere yeah, I actually did not have my |
|
I wonder why it said that the PR does not have sufficient approvals. It has 6 of them |
|
This is what is passed to
|
|
The branch switching doesn't work:
|
|
^ That's because |
| if (!didResolveConflicts) { | ||
| cli.warn(`Aborting release promotion for version ${version}`); | ||
| return; | ||
| } |
targos
Apr 14, 2020
•
Member
else, we need to:
git add src/node_version.h # or ask the user to add conflicted files manually
git cherry-pick --continue
git push upstream master
git checkout branch-staging
else, we need to:
git add src/node_version.h # or ask the user to add conflicted files manually
git cherry-pick --continue
git push upstream master
git checkout branch-staging
|
The promotion step doesn't work. It stops immediately with a success message, but the promotion did not happen (note that the promotion script is interactive so we may have to run it in a special way) |
|
@targos this should be in a bit better shape now - i may also swap some more things to run asynchronously and need to figure out a better way to handle #402 (comment) |
fd50b34
to
42a9d9f
|
hm, I don't exactly remember why |
f6eee6a
to
946d16d
946d16d
to
d944859
Co-Authored-By: Michaël Zasso <targos@protonmail.com>
d944859
to
c1ab158
|
@targos rebased and updated a few things if you're willing to give this another spin on your next release! |
|
I'm giving it a try now with 12.17.0 |
0702242
to
3377b44
| } else { | ||
| if (!releasers.some(r => r.login === release.username)) { | ||
| cli.stopSpinner( | ||
| `${release.username} is not a Releaser; aborting release`); | ||
| return; | ||
| } | ||
| cli.stopSpinner('Verified Releaser status'); | ||
| } |
lundibundi
Aug 23, 2020
Member
Nit:
Suggested change
} else {
if (!releasers.some(r => r.login === release.username)) {
cli.stopSpinner(
`${release.username} is not a Releaser; aborting release`);
return;
}
cli.stopSpinner('Verified Releaser status');
}
} else if (releasers.every(r => r.login !== release.username)) {
cli.stopSpinner(
`${release.username} is not a Releaser; aborting release`);
return;
}
cli.stopSpinner('Verified Releaser status');
Nit:
| } else { | |
| if (!releasers.some(r => r.login === release.username)) { | |
| cli.stopSpinner( | |
| `${release.username} is not a Releaser; aborting release`); | |
| return; | |
| } | |
| cli.stopSpinner('Verified Releaser status'); | |
| } | |
| } else if (releasers.every(r => r.login !== release.username)) { | |
| cli.stopSpinner( | |
| `${release.username} is not a Releaser; aborting release`); | |
| return; | |
| } | |
| cli.stopSpinner('Verified Releaser status'); |
|
This PR is stale because it has been open many days with no activity. It will be closed soon unless the stale label is removed or a comment is made. |

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.

Refs #388.
Some of this hard to test, since it involved taking real steps that we take during releases.
I've chosen to seek active confirmation more here than in the prep stage, since many of the steps are irreversible, but I'm open to any and all thoughts about how much we might want.
This adds the secondary portion of release automation, for the promotion step. Specifically, we want to:
cc @nodejs/releasers