Skip to content

Commit b5d68e0

Browse files
committed
Only release a new version if the tag pushed == v*.*
1 parent 6c8aa01 commit b5d68e0

File tree

1 file changed

+48
-17
lines changed

1 file changed

+48
-17
lines changed

.github/workflows/release.yaml

+48-17
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,60 @@ name: release
44
on:
55
push:
66
tags:
7-
- '*'
7+
- 'v*.*'
88

99
jobs:
10+
1011
build_release:
11-
runs-on: ubuntu-latest
12+
name: Build Release
13+
strategy:
14+
matrix:
15+
os: [ubuntu-latest, macos-latest, windows-latest]
16+
include:
17+
- os: ubuntu-latest
18+
release_suffix: ubuntu
19+
- os: macos-latest
20+
release_suffix: mac
21+
- os: windows-latest
22+
release_suffix: windows
23+
runs-on: ${{ matrix.os }}
24+
1225
steps:
13-
- name: Checkout
26+
- name: Checkout code
1427
uses: actions/checkout@v4
15-
- name: Make
16-
run: make
17-
- name: Check
18-
run: make check
19-
- name: Create .tar.gz files
20-
run: make artifacts
21-
- name: Release
22-
uses: softprops/action-gh-release@v2
23-
if: startsWith(github.ref, 'refs/tags/')
24-
with:
25-
files: |
26-
tokenize-source.tar.gz
27-
tokenize-cfiles.tar.gz
28-
tokenize-linux-amd64.tar.gz
2928

29+
- name: Setup Mac build environment
30+
if: matrix.os == 'macos-latest'
31+
run: |
32+
brew install gawk
33+
34+
- name: Setup Windows build environment
35+
if: matrix.os == 'windows-latest'
36+
run: |
37+
choco install winflexbison -y
3038
39+
- name: Compile, verify, and create archives
40+
run: |
41+
make check artifacts
3142
43+
- name: Machine dependent file upload
44+
uses: softprops/action-gh-release@v2
45+
with:
46+
name: release
47+
draft: false
48+
prerelease: false
49+
generate_release_notes: false
50+
files: |
51+
bin-*.tar.gz
3252
53+
- name: Source code upload
54+
if: matrix.os == 'ubuntu-latest'
55+
uses: softprops/action-gh-release@v2
56+
with:
57+
name: release
58+
draft: false
59+
prerelease: false
60+
generate_release_notes: false
61+
files: |
62+
tokenize.tar.gz
63+
cfiles.tar.gz

0 commit comments

Comments
 (0)