Skip to content

Commit b33a662

Browse files
authored
Automate release (#2977)
* release-it/bumper * remove git:false * fix package ordering * adjust git add * fix git config * adjust git config for all packages * add noop release script for test-utils * no need to try to release root * better way to handle skipping * pass parameters down * better version hint * update node version * return git arguments from before * rename release workflow * rename workflow * set git.tagMatch * add link to docs * update description * update workspace order in package-lock * fix secondary releases release-it/bumper was removing the ^ before the peerDep to client npm is not happy with that. one potential fix would be to bump all packages together as a prestep and then proceed without bupming again. for now, this fix should bring us to the previous state ( what was used in the manual process ) * require clean working dir in root * remove root release-it config not needed
1 parent 20c16e0 commit b33a662

File tree

17 files changed

+1641
-2679
lines changed

17 files changed

+1641
-2679
lines changed

.github/workflows/release.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: Release
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
version:
7+
description: 'Version to release ("major", "minor", "patch", or "pre*" version; or specify version like "5.3.3")'
8+
required: true
9+
type: string
10+
args:
11+
description: 'Additional arguments to pass to release-it (e.g. "--dry-run"). See docs: https://github.com/release-it/release-it/blob/main/docs/git.md#configuration-options'
12+
required: false
13+
type: string
14+
15+
jobs:
16+
release:
17+
runs-on: ubuntu-latest
18+
permissions:
19+
contents: write
20+
packages: write
21+
steps:
22+
- name: Checkout code
23+
uses: actions/checkout@v4
24+
with:
25+
fetch-depth: 0
26+
27+
- name: Setup Node.js
28+
uses: actions/setup-node@v4
29+
with:
30+
node-version: '22'
31+
registry-url: 'https://registry.npmjs.org'
32+
33+
- name: Install dependencies
34+
run: npm ci
35+
36+
- name: Configure Git
37+
run: |
38+
git config --local user.email "[email protected]"
39+
git config --local user.name "GitHub Action"
40+
41+
# Build all packages
42+
- name: Build packages
43+
run: npm run build
44+
45+
# Release using the monorepo approach
46+
- name: Release packages
47+
run: npm run release -- --ci -i ${{ github.event.inputs.version }} ${{ github.event.inputs.args }}
48+
env:
49+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
50+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)