@sanity/semantic-release-preset
Version:
Recommended setup for releasing semantically using GitHub Actions workflows
66 lines (60 loc) • 1.59 kB
JavaScript
// @ts-check
/* eslint-disable no-template-curly-in-string */
const preset = 'conventionalcommits'
/**
* @type {import('semantic-release').Options}
**/
const options = {
plugins: [
['@semantic-release/commit-analyzer', {preset}],
['@semantic-release/release-notes-generator', {preset}],
[
'@semantic-release/changelog',
{
changelogTitle: `<!-- markdownlint-disable --><!-- textlint-disable -->
All notable changes to this project will be documented in this file. See
[](https://conventionalcommits.org) for commit guidelines.`,
},
],
[
'@semantic-release/exec',
{
prepareCmd: 'npx -y prettier --write CHANGELOG.md',
},
],
[
'@semantic-release/npm',
{
tarballDir: '.semantic-release',
},
],
'semantic-release-license',
[
'@semantic-release/git',
{
assets: [
'CHANGELOG.md',
'LICENSE',
'package-lock.json',
'package.json',
'pnpm-lock.yaml',
'yarn.lock',
],
message: 'chore(release): ${nextRelease.version} [skip ci]',
},
],
[
'@semantic-release/github',
{
addReleases: 'bottom',
assets: '.semantic-release/*.tgz',
// These features currently frequently leads to GitHub API rate limit errors, so we disable them for now.
releasedLabels: false,
// @TODO remove this before releasing on main
successComment: false,
},
],
],
}
module.exports = options