release.config.mjs•1.58 kB
/**
* @type {import('semantic-release').GlobalConfig}
*/
export default {
branches: ['main'],
plugins: [
[
'@semantic-release/commit-analyzer',
{
releaseRules: [
{ type: 'feat', release: 'minor' },
{ type: 'fix', release: 'patch' },
{ type: 'refactor', release: 'patch' },
{ type: 'perf', release: 'patch' },
{ type: 'revert', release: 'patch' },
{ type: 'docs', release: false },
{ type: 'style', release: false },
{ type: 'chore', release: false },
{ type: 'test', release: false },
{ type: 'build', release: false },
{ type: 'ci', release: false },
{ type: 'bump', release: 'patch' },
],
},
],
'@semantic-release/release-notes-generator',
[
'@semantic-release/changelog',
{
changelogFile: 'CHANGELOG.md',
},
],
[
'@semantic-release/npm',
{
pkgRoot: '.',
npmPublish: false,
},
],
[
'@semantic-release/npm',
{
pkgRoot: 'dist',
npmPublish: true,
},
],
[
'@semantic-release/git',
{
assets: ['package.json', 'package-lock.json', 'CHANGELOG.md'],
message:
'chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}',
},
],
// '@semantic-release/gitlab',
'@semantic-release/github',
[
'@semantic-release/exec',
{
successCmd: 'echo "${nextRelease.version}" > RELEASE_VERSION',
},
],
],
};