Skip to content

Commit bbddc89

Browse files
authored
Add GitHub Actions workflow for ZScript release
1 parent 1b09b10 commit bbddc89

1 file changed

Lines changed: 58 additions & 0 deletions

File tree

‎.github/workflows/release.yml‎

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: Build and Release ZScript
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
build:
13+
strategy:
14+
matrix:
15+
os: [ubuntu-latest, macos-latest, windows-latest]
16+
17+
runs-on: ${{ matrix.os }}
18+
19+
steps:
20+
- name: Checkout repository
21+
uses: actions/checkout@v4
22+
23+
- name: Install Bun
24+
uses: oven-sh/setup-bun@v1
25+
with:
26+
bun-version: latest
27+
28+
- name: Install dependencies
29+
run: |
30+
cd compiler
31+
bun install
32+
33+
- name: Build zsc binary
34+
run: |
35+
cd compiler
36+
mkdir -p dist
37+
bun build zsc.js --compile --outfile dist/zsc
38+
39+
- name: Rename binary for Windows
40+
if: matrix.os == 'windows-latest'
41+
run: |
42+
cd compiler/dist
43+
ren zsc zsc.exe
44+
45+
- name: Zip artifact
46+
run: |
47+
cd compiler/dist
48+
if [ "${{ matrix.os }}" = "windows-latest" ]; then
49+
powershell Compress-Archive zsc.exe zsc-${{ matrix.os }}.zip
50+
else
51+
zip zsc-${{ matrix.os }}.zip zsc
52+
fi
53+
shell: bash
54+
55+
- name: Upload Release Asset
56+
uses: softprops/action-gh-release@v1
57+
with:
58+
files: compiler/dist/zsc-${{ matrix.os }}.zip

0 commit comments

Comments
 (0)