Skip to content

Commit d5437a2

Browse files
committed
chore: update
1 parent acffca9 commit d5437a2

File tree

4 files changed

+55
-4
lines changed

4 files changed

+55
-4
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,5 +57,5 @@ jobs:
5757
- name: Release
5858
if: github.ref == 'refs/heads/develop'
5959
run: |
60-
npm i -g semantic-release @semantic-release/git @semantic-release/github conventional-changelog-conventionalcommits
61-
npx semantic-release --no-ci --debug
60+
npm i -g release-it @release-it/conventional-changelog @release-it/keep-a-changelog
61+
node release.mjs

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,5 @@ jobs:
5151
5252
- name: Release
5353
run: |
54-
npm i -g semantic-release @semantic-release/git @semantic-release/github conventional-changelog-conventionalcommits
55-
npx semantic-release --no-ci --debug
54+
npm i -g release-it @release-it/conventional-changelog @release-it/keep-a-changelog
55+
node release.mjs

release.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ module.exports = {
4848
],
4949
},
5050
],
51+
['@semantic-release/release-notes-generator'],
5152
// https://github.com/semantic-release/npm
5253
['@semantic-release/npm'],
5354
// https://github.com/semantic-release/github

release.mjs

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import release from 'release-it'
2+
const branch = process.env.BRANCH || process.env.CI_REF_NAME || ''
3+
const branchSlug = branch.replace(/\//g, '-')
4+
const branchPrefix = branch.split('/')[0]
5+
6+
const config = {
7+
isPreRelease: branch !== 'master',
8+
preRelease: branch !== 'master',
9+
preReleaseId: branch === 'master' ? '' : branch,
10+
plugins: {
11+
'@release-it/conventional-changelog': {
12+
preset: {
13+
name: 'conventionalcommits',
14+
types: [
15+
{ type: 'breaking', release: 'major' },
16+
{ type: 'feat', release: 'minor' },
17+
// match anything else
18+
{ type: '**', release: 'patch' },
19+
{ subject: '**', release: 'patch' },
20+
{ message: '**', release: 'patch' },
21+
],
22+
},
23+
},
24+
'@release-it/keep-a-changelog': {
25+
filename: 'CHANGELOG.md',
26+
},
27+
},
28+
}
29+
30+
console.debug('config', config)
31+
32+
release(config).then((output) => {
33+
console.debug('output', output)
34+
35+
const { version: nextVersion, latestVersion, name, changelog } = output || {}
36+
37+
console.info(
38+
`Last release is ${latestVersion} and next release is ${nextVersion}`
39+
)
40+
if (latestVersion === nextVersion) {
41+
console.info(
42+
`No release is needed, last release is ${latestVersion} and next release is ${nextVersion}`
43+
)
44+
return
45+
}
46+
47+
if (!nextVersion) {
48+
console.info(`No release is needed - no next version`)
49+
}
50+
})

0 commit comments

Comments
 (0)