From d32504cccaf803ec8a3ec9cb6a38b37584f31fa5 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 10 Feb 2022 15:49:14 +0100 Subject: [PATCH] cli: include version info and upgrade helper link in bump output Signed-off-by: Patrik Oldsberg --- .../cli/src/commands/versions/bump.test.ts | 4 +-- packages/cli/src/commands/versions/bump.ts | 31 ++++++++++++++----- 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/packages/cli/src/commands/versions/bump.test.ts b/packages/cli/src/commands/versions/bump.test.ts index 73ecc0284e..776523742c 100644 --- a/packages/cli/src/commands/versions/bump.test.ts +++ b/packages/cli/src/commands/versions/bump.test.ts @@ -273,7 +273,7 @@ describe('bump', () => { 'unlocking @backstage/core-api@^1.0.6 ~> 1.0.7', 'unlocking @backstage/core-api@^1.0.3 ~> 1.0.7', 'bumping @backstage/theme in b to ^5.0.0', - 'Creating backstage.json', + 'Your project is now at version 0.0.1, which has been written to backstage.json', 'Running yarn install to install new versions', '⚠️ The following packages may have breaking changes:', ' @backstage/theme : 1.0.0 ~> 5.0.0', @@ -389,7 +389,7 @@ describe('bump', () => { 'Some packages are outdated, updating', 'bumping @backstage/core in a to ^5.0.0', 'bumping @backstage/core in b to ^5.0.0', - 'Creating backstage.json', + 'Your project is now at version 2.0.0, which has been written to backstage.json', 'Running yarn install to install new versions', '⚠️ The following packages may have breaking changes:', ' @backstage/core : 1.0.3 ~> 5.0.0', diff --git a/packages/cli/src/commands/versions/bump.ts b/packages/cli/src/commands/versions/bump.ts index 8c3c661996..ceb8dbc79e 100644 --- a/packages/cli/src/commands/versions/bump.ts +++ b/packages/cli/src/commands/versions/bump.ts @@ -420,17 +420,32 @@ export async function bumpBackstageJsonVersion(version: string) { throw e; }); - if (backstageJson?.version === version) { + const prevVersion = backstageJson?.version; + + if (prevVersion === version) { return; } - console.log( - chalk.yellow( - typeof backstageJson === 'undefined' - ? `Creating ${BACKSTAGE_JSON}` - : `Bumping version in ${BACKSTAGE_JSON}`, - ), - ); + const { yellow, cyan, green } = chalk; + if (prevVersion) { + const link = `https://backstage.github.io/upgrade-helper/?from=${prevVersion}&to=${version}`; + console.log( + yellow( + `Upgraded from release ${green(prevVersion)} to ${green( + version, + )}, please review the app changes:`, + ), + ); + console.log(); + console.log(` ${cyan(link)}`); + console.log(); + } else { + console.log( + yellow( + `Your project is now at version ${version}, which has been written to ${BACKSTAGE_JSON}`, + ), + ); + } await fs.writeJson( backstageJsonPath,