From 28a6129f1df05020099ea1ba29df1a0b1bb3d41c Mon Sep 17 00:00:00 2001 From: marco-ippolito Date: Sun, 14 Apr 2024 12:32:29 +0200 Subject: [PATCH 1/2] feat: add releaseDate to json --- lib/prepare_security.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/prepare_security.js b/lib/prepare_security.js index 278f7974..f8f30763 100644 --- a/lib/prepare_security.js +++ b/lib/prepare_security.js @@ -38,7 +38,8 @@ export default class SecurityReleaseSteward { let securityReleasePRUrl; if (createVulnerabilitiesJSON) { - securityReleasePRUrl = await this.createVulnerabilitiesJSON(req, release, { cli }); + securityReleasePRUrl = await this.createVulnerabilitiesJSON( + req, release, releaseDate, { cli }); } const createIssue = await release.promptCreateRelaseIssue(cli); @@ -51,7 +52,7 @@ export default class SecurityReleaseSteward { cli.ok('Done!'); } - async createVulnerabilitiesJSON(req, release, { cli }) { + async createVulnerabilitiesJSON(req, release, releaseDate, { cli }) { // checkout on the next-security-release branch checkoutOnSecurityReleaseBranch(cli, this.repository); @@ -61,8 +62,7 @@ export default class SecurityReleaseSteward { const deps = _.groupBy(depUpdates, 'name'); // create the vulnerabilities.json file in the security-release repo - const filePath = await release.createVulnerabilitiesJSON(reports, deps, { cli }); - + const filePath = await release.createVulnerabilitiesJSON(reports, deps, releaseDate, { cli }); // review the vulnerabilities.json file const review = await release.promptReviewVulnerabilitiesJSON(cli); @@ -217,9 +217,10 @@ class PrepareSecurityRelease { return selectedReports; } - async createVulnerabilitiesJSON(reports, dependencies, { cli }) { + async createVulnerabilitiesJSON(reports, dependencies, releaseDate, { cli }) { cli.separator('Creating vulnerabilities.json...'); const file = JSON.stringify({ + releaseDate, reports, dependencies }, null, 2); From ea416f31f614df563dc77477ffcf32dd39787f40 Mon Sep 17 00:00:00 2001 From: marco-ippolito Date: Thu, 18 Apr 2024 11:16:03 +0200 Subject: [PATCH 2/2] feat: leave TBD if not defined yet --- lib/prepare_security.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/prepare_security.js b/lib/prepare_security.js index f8f30763..f103f578 100644 --- a/lib/prepare_security.js +++ b/lib/prepare_security.js @@ -33,7 +33,10 @@ export default class SecurityReleaseSteward { const req = new Request(credentials); const release = new PrepareSecurityRelease(req); const releaseDate = await release.promptReleaseDate(cli); - validateDate(releaseDate); + if (releaseDate !== 'TBD') { + validateDate(releaseDate); + } + const createVulnerabilitiesJSON = await release.promptVulnerabilitiesJSON(cli); let securityReleasePRUrl; @@ -127,7 +130,7 @@ class PrepareSecurityRelease { nextWeekDate.setDate(nextWeekDate.getDate() + 7); // Format the date as YYYY/MM/DD const formattedDate = nextWeekDate.toISOString().slice(0, 10).replace(/-/g, '/'); - return cli.prompt('Enter target release date in YYYY/MM/DD format:', { + return cli.prompt('Enter target release date in YYYY/MM/DD format (TBD if not defined yet):', { questionType: 'input', defaultAnswer: formattedDate });