From 92d2803637098bf112eff9aebfc1a9f5f71e02b8 Mon Sep 17 00:00:00 2001 From: Alex Margulis Date: Sun, 25 Dec 2022 14:38:00 +0200 Subject: [PATCH 1/4] adding summaries --- src/index.js | 9 +++++---- src/post-release.js | 4 ++++ src/release.js | 3 +++ src/utils.js | 31 +++++++++++++++++++------------ 4 files changed, 31 insertions(+), 16 deletions(-) diff --git a/src/index.js b/src/index.js index f69077f..214ab54 100644 --- a/src/index.js +++ b/src/index.js @@ -24,13 +24,14 @@ const start = async () => { await createReleasePR(); return; } - console.log( - `gitflow-workflow-action: does not match any eventName. Skipping...` - ); + const message = `gitflow-workflow-action: does not match any eventName. Skipping...` + console.log(message); + core.summary.addHeading(message, 3) }; start() - .then(() => { + .then(async() => { + await core.summary.write() process.exitCode = 0; }) .catch((err) => { diff --git a/src/post-release.js b/src/post-release.js index 664640c..6efb3e5 100644 --- a/src/post-release.js +++ b/src/post-release.js @@ -98,6 +98,10 @@ ${summary}`; body: releaseNotesBody, }); + await core.summary + .addHeading(`Release successful ${version}`) + .addLink('View the release!', release.html_url) + console.log(`on-release: success`); console.log(`post-release: process release ${release.name}`); diff --git a/src/release.js b/src/release.js index 659089d..0025424 100644 --- a/src/release.js +++ b/src/release.js @@ -65,4 +65,7 @@ Release summary console.log( `create_release: Pull request has been created at ${pullRequest.url}` ); + await core.summary + .addHeading(`Created release branch and PR ${version}`) + .addLink('View release PR!', pullRequest.html_url) }; diff --git a/src/utils.js b/src/utils.js index 9557895..52450e7 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,3 +1,4 @@ +const core = require("@actions/core"); const { Constants } = require("./constants"); const { Config, octokit } = require("./shared"); @@ -24,10 +25,12 @@ exports.tryMerge = async function tryMerge(headBranch, baseBranch) { base: baseBranch, head: headBranch, }); + core.summary.addHeading('Back-merge', 2).addRaw(`The ${headBranch} branch was successfully merge into ${baseBranch} branch.`) } catch (err) { // could not automatically merge // try creating a PR - await octokit.rest.pulls + try { + const { data: pullRequest } = await octokit.rest.pulls .create({ ...Config.repo, base: baseBranch, @@ -35,10 +38,12 @@ exports.tryMerge = async function tryMerge(headBranch, baseBranch) { title: `Merge ${headBranch} branch into ${baseBranch}`, body: `In Gitflow, \`release\` and \`hotfix\` branches get merged back into \`develop\` branch. See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) for more details.`, - }) - .catch(() => { - /** noop */ - }); + }) + core.summary.addHeading('Back-merge', 2).addRaw(`A PR was created for back-merge, please review [here](${pullRequest.html_url})`) + } catch (error) { + core.error(`Couldn't perform back-merge! Merge error: ${err}, PR error ${error}`) + } + } } else { console.log( @@ -56,10 +61,11 @@ exports.isReleaseCandidate = function isReleaseCandidate( shouldLog = false ) { if (pullRequest.base.ref !== Config.prodBranch) { - if (shouldLog) - console.log( - `on-release: ${pullRequest.number} does not merge to main_branch. Exiting...` - ); + const message = `on-release: ${pullRequest.number} does not merge to main_branch. Exiting...` + if (shouldLog) + console.log(message); + + core.summary.addHeading('Not release candidate', 2).addRaw(message) return false; } @@ -70,9 +76,10 @@ exports.isReleaseCandidate = function isReleaseCandidate( if (pullRequest.labels.some((label) => label.name === Constants.Hotfix)) return "hotfix"; + const message = `on-release: pull request does not have either ${Constants.Release} or ${Constants.Hotfix} labels. Exiting...` if (shouldLog) - console.log( - `on-release: pull request does not have either ${Constants.Release} or ${Constants.Hotfix} labels. Exiting...` - ); + console.log(message); + + core.summary.addHeading('Not release candidate', 2).addRaw(message) return false; }; From acec95b5498a81494db2376984826a5a2b3c29d8 Mon Sep 17 00:00:00 2001 From: Alex Margulis Date: Sun, 25 Dec 2022 14:40:38 +0200 Subject: [PATCH 2/4] lint and build --- dist/index.js | 55 +++++++++++++++++++++++++++++++-------------- src/index.js | 8 +++---- src/post-release.js | 4 ++-- src/release.js | 4 ++-- src/utils.js | 40 +++++++++++++++++++-------------- 5 files changed, 69 insertions(+), 42 deletions(-) diff --git a/dist/index.js b/dist/index.js index 558d038..4ba0a7e 100644 --- a/dist/index.js +++ b/dist/index.js @@ -19319,6 +19319,10 @@ ${summary}`; body: releaseNotesBody, }); + await core.summary + .addHeading(`Release successful ${version}`) + .addLink("View the release!", release.html_url); + console.log(`on-release: success`); console.log(`post-release: process release ${release.name}`); @@ -19406,6 +19410,9 @@ Release summary console.log( `create_release: Pull request has been created at ${pullRequest.url}` ); + await core.summary + .addHeading(`Created release branch and PR ${version}`) + .addLink("View release PR!", pullRequest.html_url); }; @@ -19437,6 +19444,7 @@ exports.Config = { /***/ 1608: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +const core = __nccwpck_require__(2186); const { Constants } = __nccwpck_require__(4438); const { Config, octokit } = __nccwpck_require__(9297); @@ -19463,21 +19471,33 @@ exports.tryMerge = async function tryMerge(headBranch, baseBranch) { base: baseBranch, head: headBranch, }); + core.summary + .addHeading("Back-merge", 2) + .addRaw( + `The ${headBranch} branch was successfully merge into ${baseBranch} branch.` + ); } catch (err) { // could not automatically merge // try creating a PR - await octokit.rest.pulls - .create({ + try { + const { data: pullRequest } = await octokit.rest.pulls.create({ ...Config.repo, base: baseBranch, head: headBranch, title: `Merge ${headBranch} branch into ${baseBranch}`, body: `In Gitflow, \`release\` and \`hotfix\` branches get merged back into \`develop\` branch. See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) for more details.`, - }) - .catch(() => { - /** noop */ }); + core.summary + .addHeading("Back-merge", 2) + .addRaw( + `A PR was created for back-merge, please review [here](${pullRequest.html_url})` + ); + } catch (error) { + core.error( + `Couldn't perform back-merge! Merge error: ${err}, PR error ${error}` + ); + } } } else { console.log( @@ -19495,10 +19515,10 @@ exports.isReleaseCandidate = function isReleaseCandidate( shouldLog = false ) { if (pullRequest.base.ref !== Config.prodBranch) { - if (shouldLog) - console.log( - `on-release: ${pullRequest.number} does not merge to main_branch. Exiting...` - ); + const message = `on-release: ${pullRequest.number} does not merge to main_branch. Exiting...`; + if (shouldLog) console.log(message); + + core.summary.addHeading("Not release candidate", 2).addRaw(message); return false; } @@ -19509,10 +19529,10 @@ exports.isReleaseCandidate = function isReleaseCandidate( if (pullRequest.labels.some((label) => label.name === Constants.Hotfix)) return "hotfix"; - if (shouldLog) - console.log( - `on-release: pull request does not have either ${Constants.Release} or ${Constants.Hotfix} labels. Exiting...` - ); + const message = `on-release: pull request does not have either ${Constants.Release} or ${Constants.Hotfix} labels. Exiting...`; + if (shouldLog) console.log(message); + + core.summary.addHeading("Not release candidate", 2).addRaw(message); return false; }; @@ -19754,13 +19774,14 @@ const start = async () => { await createReleasePR(); return; } - console.log( - `gitflow-workflow-action: does not match any eventName. Skipping...` - ); + const message = `gitflow-workflow-action: does not match any eventName. Skipping...`; + console.log(message); + core.summary.addHeading(message, 3); }; start() - .then(() => { + .then(async () => { + await core.summary.write(); process.exitCode = 0; }) .catch((err) => { diff --git a/src/index.js b/src/index.js index 214ab54..a00e95a 100644 --- a/src/index.js +++ b/src/index.js @@ -24,14 +24,14 @@ const start = async () => { await createReleasePR(); return; } - const message = `gitflow-workflow-action: does not match any eventName. Skipping...` + const message = `gitflow-workflow-action: does not match any eventName. Skipping...`; console.log(message); - core.summary.addHeading(message, 3) + core.summary.addHeading(message, 3); }; start() - .then(async() => { - await core.summary.write() + .then(async () => { + await core.summary.write(); process.exitCode = 0; }) .catch((err) => { diff --git a/src/post-release.js b/src/post-release.js index 6efb3e5..d5d8c88 100644 --- a/src/post-release.js +++ b/src/post-release.js @@ -99,8 +99,8 @@ ${summary}`; }); await core.summary - .addHeading(`Release successful ${version}`) - .addLink('View the release!', release.html_url) + .addHeading(`Release successful ${version}`) + .addLink("View the release!", release.html_url); console.log(`on-release: success`); diff --git a/src/release.js b/src/release.js index 0025424..5613f1f 100644 --- a/src/release.js +++ b/src/release.js @@ -66,6 +66,6 @@ Release summary `create_release: Pull request has been created at ${pullRequest.url}` ); await core.summary - .addHeading(`Created release branch and PR ${version}`) - .addLink('View release PR!', pullRequest.html_url) + .addHeading(`Created release branch and PR ${version}`) + .addLink("View release PR!", pullRequest.html_url); }; diff --git a/src/utils.js b/src/utils.js index 52450e7..0aa0737 100644 --- a/src/utils.js +++ b/src/utils.js @@ -25,25 +25,33 @@ exports.tryMerge = async function tryMerge(headBranch, baseBranch) { base: baseBranch, head: headBranch, }); - core.summary.addHeading('Back-merge', 2).addRaw(`The ${headBranch} branch was successfully merge into ${baseBranch} branch.`) + core.summary + .addHeading("Back-merge", 2) + .addRaw( + `The ${headBranch} branch was successfully merge into ${baseBranch} branch.` + ); } catch (err) { // could not automatically merge // try creating a PR try { - const { data: pullRequest } = await octokit.rest.pulls - .create({ + const { data: pullRequest } = await octokit.rest.pulls.create({ ...Config.repo, base: baseBranch, head: headBranch, title: `Merge ${headBranch} branch into ${baseBranch}`, body: `In Gitflow, \`release\` and \`hotfix\` branches get merged back into \`develop\` branch. See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) for more details.`, - }) - core.summary.addHeading('Back-merge', 2).addRaw(`A PR was created for back-merge, please review [here](${pullRequest.html_url})`) + }); + core.summary + .addHeading("Back-merge", 2) + .addRaw( + `A PR was created for back-merge, please review [here](${pullRequest.html_url})` + ); } catch (error) { - core.error(`Couldn't perform back-merge! Merge error: ${err}, PR error ${error}`) + core.error( + `Couldn't perform back-merge! Merge error: ${err}, PR error ${error}` + ); } - } } else { console.log( @@ -61,11 +69,10 @@ exports.isReleaseCandidate = function isReleaseCandidate( shouldLog = false ) { if (pullRequest.base.ref !== Config.prodBranch) { - const message = `on-release: ${pullRequest.number} does not merge to main_branch. Exiting...` - if (shouldLog) - console.log(message); - - core.summary.addHeading('Not release candidate', 2).addRaw(message) + const message = `on-release: ${pullRequest.number} does not merge to main_branch. Exiting...`; + if (shouldLog) console.log(message); + + core.summary.addHeading("Not release candidate", 2).addRaw(message); return false; } @@ -76,10 +83,9 @@ exports.isReleaseCandidate = function isReleaseCandidate( if (pullRequest.labels.some((label) => label.name === Constants.Hotfix)) return "hotfix"; - const message = `on-release: pull request does not have either ${Constants.Release} or ${Constants.Hotfix} labels. Exiting...` - if (shouldLog) - console.log(message); - - core.summary.addHeading('Not release candidate', 2).addRaw(message) + const message = `on-release: pull request does not have either ${Constants.Release} or ${Constants.Hotfix} labels. Exiting...`; + if (shouldLog) console.log(message); + + core.summary.addHeading("Not release candidate", 2).addRaw(message); return false; }; From 2a3628abf897a05f0db7fc68acc2e744ca0da199 Mon Sep 17 00:00:00 2001 From: Alex Margulis Date: Sun, 25 Dec 2022 15:00:35 +0200 Subject: [PATCH 3/4] fix backmerge pr link --- dist/index.js | 5 ++--- src/utils.js | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/dist/index.js b/dist/index.js index 4ba0a7e..4bc9622 100644 --- a/dist/index.js +++ b/dist/index.js @@ -19490,9 +19490,8 @@ See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflo }); core.summary .addHeading("Back-merge", 2) - .addRaw( - `A PR was created for back-merge, please review [here](${pullRequest.html_url})` - ); + .addRaw("A PR was created for back-merge, please review:") + .addLink("Back-merge PR", pullRequest.html_url); } catch (error) { core.error( `Couldn't perform back-merge! Merge error: ${err}, PR error ${error}` diff --git a/src/utils.js b/src/utils.js index 0aa0737..c3cb0ac 100644 --- a/src/utils.js +++ b/src/utils.js @@ -44,9 +44,8 @@ See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflo }); core.summary .addHeading("Back-merge", 2) - .addRaw( - `A PR was created for back-merge, please review [here](${pullRequest.html_url})` - ); + .addRaw("A PR was created for back-merge, please review:") + .addLink("Back-merge PR", pullRequest.html_url); } catch (error) { core.error( `Couldn't perform back-merge! Merge error: ${err}, PR error ${error}` From 945ef8630cfe5e3568555b54cbb35dc9ab74872e Mon Sep 17 00:00:00 2001 From: Alex Margulis Date: Sun, 25 Dec 2022 15:15:50 +0200 Subject: [PATCH 4/4] improve backmerge pr message --- dist/index.js | 4 ++-- src/utils.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dist/index.js b/dist/index.js index 4bc9622..c815dbb 100644 --- a/dist/index.js +++ b/dist/index.js @@ -19490,8 +19490,8 @@ See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflo }); core.summary .addHeading("Back-merge", 2) - .addRaw("A PR was created for back-merge, please review:") - .addLink("Back-merge PR", pullRequest.html_url); + .addRaw("A PR was created for back-merge, please review ") + .addLink("here", pullRequest.html_url); } catch (error) { core.error( `Couldn't perform back-merge! Merge error: ${err}, PR error ${error}` diff --git a/src/utils.js b/src/utils.js index c3cb0ac..474c6ad 100644 --- a/src/utils.js +++ b/src/utils.js @@ -44,8 +44,8 @@ See [Gitflow Workflow](https://www.atlassian.com/git/tutorials/comparing-workflo }); core.summary .addHeading("Back-merge", 2) - .addRaw("A PR was created for back-merge, please review:") - .addLink("Back-merge PR", pullRequest.html_url); + .addRaw("A PR was created for back-merge, please review ") + .addLink("here", pullRequest.html_url); } catch (error) { core.error( `Couldn't perform back-merge! Merge error: ${err}, PR error ${error}`