-
-
Notifications
You must be signed in to change notification settings - Fork 7
59 lines (52 loc) · 1.83 KB
/
Copy pathrelease-client.yml
File metadata and controls
59 lines (52 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
name: Release client libraries
on:
workflow_dispatch:
inputs:
version:
description: Version to release
required: true
force:
description: Force a release even when there are release-blockers (optional)
required: false
merge_target:
description: Target branch to merge into. Uses the default branch as a fallback (optional)
required: false
permissions:
contents: read
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Get auth token
id: token
uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
with:
app-id: ${{ vars.SENTRY_RELEASE_BOT_CLIENT_ID }}
private-key: ${{ secrets.SENTRY_RELEASE_BOT_PRIVATE_KEY }}
- uses: actions/checkout@v4
with:
token: ${{ steps.token.outputs.token }}
fetch-depth: 0
- uses: astral-sh/setup-uv@5a7eac68fb9809dea845d802897dc5c723910fa3 # v7.1.3
with:
version: '0.8.2'
- name: Validate version number
env:
VERSION: ${{ github.event.inputs.version }}
run: |
MAJOR=$(echo "$VERSION" | cut -d. -f1)
if [ "$MAJOR" -ge 26 ]; then
echo "Error: Version $VERSION is not allowed. Major version must be below 26."
echo ""
echo "This is likely not the version you want to release, it looks like calver."
echo "See README.md for more information about versioning."
exit 1
fi
- name: Prepare release
uses: getsentry/craft@c6e2f04939b6ee67030588afbb5af76b127d8203 # v2
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:
version: ${{ github.event.inputs.version }}
force: ${{ github.event.inputs.force }}
path: clients