diff --git a/lib/promote_release.js b/lib/promote_release.js index 49233845..edecf844 100644 --- a/lib/promote_release.js +++ b/lib/promote_release.js @@ -216,6 +216,18 @@ export default class ReleasePromotion extends Session { ' 3. Create the release on GitHub.\n' + ' 4. Optionally, announce the release on your social networks.\n' + ' 5. Tag @nodejs-social-team on #nodejs-release Slack channel.\n'); + + cli.separator(); + cli.info('Use the following command to create the release:'); + cli.separator(); + cli.info( + 'awk \'' + + `/^## ${this.date.replaceAll('.', '\\.')}, Version ${this.version.replaceAll('.', '\\.')}/,` + + '/^<\\x2fa>$/{' + + 'print buf; if(firstLine == "") firstLine = $0; else buf = $0' + + `}' doc/changelogs/CHANGELOG_V${ + this.versionComponents.major}.md | gh release create ${this.version} --verify-tag --latest=${ + !this.isLTS} --title=${JSON.stringify(this.releaseTitle)} --notes-file -`); } async verifyPRAttributes() { @@ -320,6 +332,7 @@ export default class ReleasePromotion extends Session { cli.error('Cannot find section for the new release in CHANGELOG'); throw new Error('Aborted'); } + this.releaseTitle = headingLine[0].slice(4); const expectedLine = `+## ${releaseCommitMessage}, @${this.username}`; if (headingLine[0] !== expectedLine && !headingLine[0].startsWith(`${expectedLine} prepared by @`)) {