-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #154 from ckeditor/i/153
Internal: Aligned release tools to the latest CKEditor 5 dev. Closes #153.
- Loading branch information
Showing
11 changed files
with
253 additions
and
82 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,3 +3,4 @@ coverage/ | |
node_modules/ | ||
yarn.lock | ||
.idea | ||
/release/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,106 @@ | ||
#!/usr/bin/env node | ||
|
||
/** | ||
* @license Copyright (c) 2020-2023, CKSource Holding sp. z o.o. All rights reserved. | ||
* For licensing, see LICENSE.md. | ||
*/ | ||
|
||
/* eslint-env node */ | ||
|
||
'use strict'; | ||
|
||
const { Listr } = require( 'listr2' ); | ||
const releaseTools = require( '@ckeditor/ckeditor5-dev-release-tools' ); | ||
const parseArguments = require( './utils/parsearguments' ); | ||
const { PACKAGE_GENERATOR_ROOT, PACKAGES_DIRECTORY, RELEASE_DIRECTORY } = require( './utils/constants' ); | ||
const upath = require( 'upath' ); | ||
const { globSync } = require( 'glob' ); | ||
|
||
const cliArguments = parseArguments( process.argv.slice( 2 ) ); | ||
const latestVersion = releaseTools.getLastFromChangelog(); | ||
const versionChangelog = releaseTools.getChangesForVersion( latestVersion ); | ||
|
||
const PACKAGE_GENERATOR_PACKAGES_NAMES = globSync( '*/', { | ||
cwd: upath.join( PACKAGE_GENERATOR_ROOT, PACKAGES_DIRECTORY ), | ||
absolute: true | ||
} ).map( packagePath => { | ||
return require( upath.join( packagePath, 'package.json' ) ).name; | ||
} ); | ||
|
||
const tasks = new Listr( [ | ||
{ | ||
title: 'Verifying the repository.', | ||
task: async () => { | ||
const errors = await releaseTools.validateRepositoryToRelease( { | ||
version: latestVersion, | ||
changes: versionChangelog, | ||
branch: 'master' | ||
} ); | ||
|
||
if ( !errors.length ) { | ||
return; | ||
} | ||
|
||
return Promise.reject( 'Aborted due to errors.\n' + errors.map( message => `* ${ message }` ).join( '\n' ) ); | ||
} | ||
}, | ||
{ | ||
title: 'Updating the `#version` field.', | ||
task: () => { | ||
return releaseTools.updateVersions( { | ||
packagesDirectory: PACKAGES_DIRECTORY, | ||
version: latestVersion | ||
} ); | ||
} | ||
}, | ||
{ | ||
title: 'Updating dependencies.', | ||
task: () => { | ||
return releaseTools.updateDependencies( { | ||
version: '^' + latestVersion, | ||
packagesDirectory: PACKAGES_DIRECTORY, | ||
shouldUpdateVersionCallback: packageName => { | ||
return PACKAGE_GENERATOR_PACKAGES_NAMES.includes( packageName ); | ||
} | ||
} ); | ||
} | ||
}, | ||
{ | ||
title: 'Copying `package-generator` packages to the release directory.', | ||
task: () => { | ||
return releaseTools.prepareRepository( { | ||
outputDirectory: RELEASE_DIRECTORY, | ||
packagesDirectory: PACKAGES_DIRECTORY, | ||
packagesToCopy: cliArguments.packages | ||
} ); | ||
} | ||
}, | ||
{ | ||
title: 'Cleaning-up.', | ||
task: () => { | ||
return releaseTools.cleanUpPackages( { | ||
packagesDirectory: RELEASE_DIRECTORY | ||
} ); | ||
} | ||
}, | ||
{ | ||
title: 'Commit & tag.', | ||
task: () => { | ||
return releaseTools.commitAndTag( { | ||
version: latestVersion, | ||
files: [ | ||
'package.json', | ||
`${ PACKAGES_DIRECTORY }/*/package.json` | ||
] | ||
} ); | ||
} | ||
} | ||
] ); | ||
|
||
tasks.run() | ||
.catch( err => { | ||
process.exitCode = 1; | ||
|
||
console.log( '' ); | ||
console.error( err ); | ||
} ); |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
#!/usr/bin/env node | ||
|
||
/** | ||
* @license Copyright (c) 2020-2023, CKSource Holding sp. z o.o. All rights reserved. | ||
* For licensing, see LICENSE.md. | ||
*/ | ||
|
||
/* eslint-env node */ | ||
|
||
'use strict'; | ||
|
||
const { Listr } = require( 'listr2' ); | ||
const releaseTools = require( '@ckeditor/ckeditor5-dev-release-tools' ); | ||
const { provideToken } = require( '@ckeditor/ckeditor5-dev-release-tools/lib/utils/cli' ); | ||
const parseArguments = require( './utils/parsearguments' ); | ||
const { RELEASE_DIRECTORY } = require( './utils/constants' ); | ||
|
||
const cliArguments = parseArguments( process.argv.slice( 2 ) ); | ||
const latestVersion = releaseTools.getLastFromChangelog(); | ||
const versionChangelog = releaseTools.getChangesForVersion( latestVersion ); | ||
|
||
let githubToken; | ||
|
||
const tasks = new Listr( [ | ||
{ | ||
title: 'Publishing packages.', | ||
task: async ( _, task ) => { | ||
return releaseTools.publishPackages( { | ||
packagesDirectory: RELEASE_DIRECTORY, | ||
npmOwner: 'ckeditor', | ||
npmTag: cliArguments.npmTag, | ||
listrTask: task, | ||
confirmationCallback: () => { | ||
return task.prompt( { type: 'Confirm', message: 'Do you want to continue?' } ); | ||
} | ||
} ); | ||
}, | ||
retry: 3 | ||
}, | ||
{ | ||
title: 'Pushing changes.', | ||
task: () => { | ||
return releaseTools.push( { | ||
releaseBranch: 'master', | ||
version: latestVersion | ||
} ); | ||
} | ||
}, | ||
{ | ||
title: 'Creating the release page.', | ||
task: async ( _, task ) => { | ||
const releaseUrl = await releaseTools.createGithubRelease( { | ||
token: githubToken, | ||
version: latestVersion, | ||
description: versionChangelog | ||
} ); | ||
|
||
task.output = `Release page: ${ releaseUrl }`; | ||
} | ||
} | ||
] ); | ||
|
||
( async () => { | ||
try { | ||
githubToken = await provideToken(); | ||
|
||
await tasks.run(); | ||
} catch ( err ) { | ||
console.error( err ); | ||
} | ||
} )(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
/** | ||
* @license Copyright (c) 2020-2023, CKSource Holding sp. z o.o. All rights reserved. | ||
* For licensing, see LICENSE.md. | ||
*/ | ||
|
||
const upath = require( 'upath' ); | ||
|
||
module.exports = { | ||
PACKAGES_DIRECTORY: 'packages', | ||
RELEASE_DIRECTORY: 'release', | ||
PACKAGE_GENERATOR_ROOT: upath.join( __dirname, '..', '..', '..' ) | ||
}; |
Oops, something went wrong.