github-release-from-cc-changelog
Retrieve release notes from CHANGELOG.md (as generated by standard-version) and post them to GitHub
Installation
npm i -g github-release-from-cc-changelogPrerequisites
- Github url needs to be configured at package.json
repositoryfield - Ensure GitHub access token available at
CONVENTIONAL_GITHUB_RELEASER_TOKEN(orGITHUB_TOKEN) environment variable. The scopes for the token you need ispublic_repoorrepo(if you need to access private repos). - Tags for given versions need to exist in GitHub repository before pushing release notes. Tags need to follow format of
v<version>, or in case of multi-package repositories follow format of<packageName>@<version>
Usage
CLI
At package directory run:
github-release-from-cc-changelog <versionTag>e.g.
github-release-from-cc-changelog v1.0.0Resolve and publish notes for all versions
At package directory run:
github-release-all-from-cc-changelogBy default v is assumed as tag postfix. In case of multi package repositories this can be overriden by passing --tag-prefix e.g.:
github-release-all-from-cc-changelog --tag-prefix=subpackage@Dump release notes for given version
Useful also to verify whether notes for given version can be retrieved
At package directory run:
dump-release-notes-from-cc-changelog <versionTag>Programmatically
const releaseFromChangelog = require("github-release-from-cc-changelog");
releaseFromChangelog(packageDirectory, versionTag).then(() => {
console.log(`Successfully pushed release notes for "${ versionTag }"`);
});Reseolve and publish notes for all versions
const releaseAllFromChangelog = require("github-release-from-cc-changelog/all");
releaseFromChangelog(packageDirectory).then(() => {
console.log(`Successfully pushed and released notes for all versions`);
});Test
npm test