-
Notifications
You must be signed in to change notification settings - Fork 12
50 lines (40 loc) · 1.28 KB
/
release.yaml
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
name: Release
on:
push:
tags:
- v*
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Fetch git
run: git fetch --prune --unshallow
- name: Setup environment
uses: HatsuneMiku3939/direnv-action@v1
- name: Setup go toolchain
run: |
toolchain=$(./script/tools.sh gotoolchain | sed 's/go*//')
echo "GOVERSION=${toolchain}" >> $GITHUB_ENV
- name: Setup go
uses: actions/setup-go@v5
with:
go-version: "${{ env.GOVERSION }}"
- name: Get release version
if: startsWith(github.ref, 'refs/tags/v')
run: echo "RELEASE_TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
- name: Install Changelog Generator
run: go install github.com/git-chglog/git-chglog/cmd/git-chglog@${{ env.GIT_CHGLOG_VERSION }}
- name: Generate Changelog
run: make changelog
- name: Delete previous manual release
uses: cb80/delrel@latest
with:
tag: v${{ env.RELEASE_TAG }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Delete previously created release if exists
uses: softprops/action-gh-release@v1
with:
body_path: changelog.md