-
Notifications
You must be signed in to change notification settings - Fork 1
134 lines (112 loc) · 3.25 KB
/
build-release.yml
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
name: Build Release
on:
push:
tags:
- 'v*'
jobs:
build-macos:
runs-on: macos-12
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup dependencies
run: |
brew install openssl@3
brew install llvm@15
- name: Make dist
run: ./make-macos-dist.sh
- name: Upload build output
uses: actions/upload-artifact@v4
with:
name: build-output-macos12
path: |
waterslide-macos-x64-dist.tar.bz2
LICENSE
build-macos-arm64:
runs-on: macos-14
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup dependencies
run: |
brew install openssl@3
brew install llvm@15
- name: Make dist
run: ./make-macos-dist.sh
- name: Upload build output
uses: actions/upload-artifact@v4
with:
name: build-output-macos-arm64
path: waterslide-macos-arm64-dist.tar.bz2
build-rpi:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Get RPi toolchain
run: |
wget https://github.com/sfjohnson/rpi-toolchain/releases/download/v0.1.8/aarch64-rpi4-linux-gnu.tar.xz
tar xf aarch64-rpi4-linux-gnu.tar.xz -C ~
- name: Setup dependencies
run: ./pull-deps.sh
- name: Make RPi
run: make -f rpi-arm64.mk
env:
TOOLCHAIN: /home/runner/aarch64-rpi4-linux-gnu
- name: Upload build output
uses: actions/upload-artifact@v4
with:
name: build-output-rpi
path: bin/waterslide-rpi-arm64
build-discovery-server:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Build
run: ./build-linux.sh
working-directory: ./discovery-server
- name: Upload build output
uses: actions/upload-artifact@v4
with:
name: build-output-ds
path: ./discovery-server/waterslide-ds-linux
create-release:
runs-on: ubuntu-22.04
needs: [build-macos, build-macos-arm64, build-rpi, build-discovery-server]
steps:
- name: Get build output macos12
uses: actions/download-artifact@v4
with:
name: build-output-macos12
- name: Get build output macos-arm64
uses: actions/download-artifact@v4
with:
name: build-output-macos-arm64
- name: Get build output RPi
uses: actions/download-artifact@v4
with:
name: build-output-rpi
- name: Get build output Discovery Server
uses: actions/download-artifact@v4
with:
name: build-output-ds
- name: Create release
uses: softprops/action-gh-release@v2
with:
files: |
waterslide-macos-x64-dist.tar.bz2
waterslide-macos-arm64-dist.tar.bz2
waterslide-rpi-arm64
waterslide-ds-linux
LICENSE
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}