Skip to content

Commit 1fbb517

Browse files
committed
ci: add release-it with manual release workflow
1 parent 4a97fde commit 1fbb517

File tree

4 files changed

+3248
-273
lines changed

4 files changed

+3248
-273
lines changed

.github/workflows/release.yml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: Release
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
release-type:
7+
description: 'Release type'
8+
required: true
9+
type: choice
10+
options:
11+
- patch
12+
- minor
13+
- major
14+
15+
permissions:
16+
contents: write
17+
id-token: write
18+
19+
jobs:
20+
release:
21+
runs-on: ubuntu-latest
22+
23+
steps:
24+
- uses: actions/checkout@v4
25+
with:
26+
fetch-depth: 0
27+
submodules: recursive
28+
lfs: true
29+
30+
- name: Install system dependencies
31+
run: |
32+
sudo apt-get update
33+
sudo apt-get install -y \
34+
cmake \
35+
libopencv-dev \
36+
libeigen3-dev
37+
38+
- name: Setup Node.js
39+
uses: actions/setup-node@v4
40+
with:
41+
node-version: 22
42+
cache: 'npm'
43+
registry-url: 'https://registry.npmjs.org'
44+
45+
- name: Install dependencies
46+
run: npm ci
47+
48+
- name: Run tests
49+
run: npm test
50+
51+
- name: Configure git
52+
run: |
53+
git config user.name "github-actions[bot]"
54+
git config user.email "github-actions[bot]@users.noreply.github.com"
55+
56+
- name: Release
57+
env:
58+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
59+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
60+
run: npm run release -- ${{ github.event.inputs.release-type }} --ci

.release-it.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"git": {
3+
"commitMessage": "chore: release v${version}",
4+
"tagName": "v${version}",
5+
"requireCleanWorkingDir": false
6+
},
7+
"github": {
8+
"release": true,
9+
"releaseName": "v${version}"
10+
},
11+
"npm": {
12+
"publish": true
13+
},
14+
"plugins": {
15+
"@release-it/conventional-changelog": {
16+
"preset": {
17+
"name": "conventionalcommits"
18+
},
19+
"infile": "CHANGELOG.md"
20+
}
21+
}
22+
}

0 commit comments

Comments
 (0)