-
Notifications
You must be signed in to change notification settings - Fork 0
35 lines (32 loc) · 931 Bytes
/
Copy pathrelease-version.yaml
File metadata and controls
35 lines (32 loc) · 931 Bytes
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
name: Release Next Version
on:
push:
branches: [main]
paths: ["VERSION"]
jobs:
release:
name: "Tag Release"
runs-on: ubuntu-latest
permissions: write-all
steps:
- id: check-out
name: "Check out code"
uses: actions/checkout@v3
- id: current-tag
name: "Check latest tag"
run: |
version="$(cat VERSION | tr -d ' \n\r')"
echo "version=${version}" >> "${GITHUB_OUTPUT}"
if git rev-parse "v${version}" >/dev/null 2>&1; then
echo "exists=true" >> "${GITHUB_OUTPUT}"
fi
- id: create-tag
name: Create release tag
if: steps.current-tag.outputs.exists != 'true'
run: |
set -x
version=${{ steps.current-tag.outputs.version }}
tag="v${version}"
msg="Release ${version}"
git tag -a -m "${msg}" "${tag}"
git push origin "${tag}"