1
1
name : 🧪 Release
2
2
3
- on : [push, pull_request]
3
+ on :
4
+ push :
5
+ branches :
6
+ - main
7
+ - feat/libmake
8
+ pull_request :
9
+ branches :
10
+ - feat/libmake
11
+ release :
12
+ types : [created]
4
13
5
14
concurrency :
6
15
group : ${{ github.ref }}
@@ -21,114 +30,25 @@ jobs:
21
30
BUILD_ID : ${{ github.run_id }}
22
31
CARGO_REGISTRY_TOKEN : ${{ secrets.CARGO_API_TOKEN }}
23
32
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
24
- OS : ${{ matrix.os }}
25
- TARGET : ${{ matrix.target }}
33
+ OS : ${{ matrix.platform. os }}
34
+ TARGET : ${{ matrix.platform. target }}
26
35
27
36
strategy :
28
37
fail-fast : false
29
38
matrix :
30
- target :
31
- # List of targets:
32
- # https://doc.rust-lang.org/nightly/rustc/platform-support.html
33
-
34
- # Tier 1 platforms 🏆
35
- - aarch64-unknown-linux-gnu # 64-bit Linux systems on ARM architecture
36
- - i686-pc-windows-gnu # 32-bit Windows (i686-pc-windows-gnu)
37
- - i686-pc-windows-msvc # 32-bit Windows (i686-pc-windows-msvc)
38
- - i686-unknown-linux-gnu # 32-bit Linux (kernel 3.2+, glibc 2.17+)
39
- - x86_64-apple-darwin # 64-bit macOS (10.7 Lion or later)
40
- - x86_64-pc-windows-gnu # 64-bit Windows (x86_64-pc-windows-gnu)
41
- - x86_64-pc-windows-msvc # 64-bit Windows (x86_64-pc-windows-msvc)
42
- - x86_64-unknown-linux-gnu # 64-bit Linux (kernel 2.6.32+, glibc 2.11+)
43
-
44
- # Tier 2 platforms 🥈
45
- - aarch64-apple-darwin # 64-bit macOS on Apple Silicon
46
- - aarch64-pc-windows-msvc # 64-bit Windows (aarch64-pc-windows-msvc)
47
- - aarch64-unknown-linux-musl # 64-bit Linux systems on ARM architecture
48
- - arm-unknown-linux-gnueabi # ARMv6 Linux (kernel 3.2, glibc 2.17)
49
- - arm-unknown-linux-gnueabihf # ARMv7 Linux, hardfloat (kernel 3.2, glibc 2.17)
50
- - armv7-unknown-linux-gnueabihf # ARMv7 Linux, hardfloat (kernel 3.2, glibc 2.17)
51
- - powerpc-unknown-linux-gnu # PowerPC Linux (kernel 3.2, glibc 2.17)
52
- - powerpc64-unknown-linux-gnu # PowerPC64 Linux (kernel 3.2, glibc 2.17)
53
- - powerpc64le-unknown-linux-gnu # PowerPC64le Linux (kernel 3.2, glibc 2.17)
54
- # - riscv64gc-unknown-linux-gnu # RISC-V Linux (kernel 3.2, glibc 2.17)
55
- - s390x-unknown-linux-gnu # s390x Linux (kernel 3.2, glibc 2.17)
56
- - x86_64-unknown-freebsd # 64-bit FreeBSD on x86-64
57
- - x86_64-unknown-linux-musl # 64-bit Linux (kernel 2.6.32+, musl libc)
58
- # - x86_64-unknown-netbsd # 64-bit NetBSD on x86-64
59
-
60
- include :
61
- # Tier 1 platforms 🏆
62
- - target : aarch64-unknown-linux-gnu
63
- os : ubuntu-latest
64
- cross : true
65
- - target : i686-pc-windows-gnu
66
- os : ubuntu-latest
67
- cross : true
68
- - target : i686-pc-windows-msvc
39
+ platform :
40
+ - target : x86_64-pc-windows-msvc
41
+ os : windows-latest
42
+ - target : aarch64-pc-windows-msvc
69
43
os : windows-latest
70
- cross : true
71
- - target : i686-unknown-linux-gnu
72
- os : ubuntu-latest
73
- cross : true
74
44
- target : x86_64-apple-darwin
75
45
os : macos-latest
76
- cross : true
77
- - target : x86_64-pc-windows-gnu
78
- os : ubuntu-latest
79
- cross : true
80
- - target : x86_64-pc-windows-msvc
81
- os : windows-latest
82
- cross : true
83
- - target : x86_64-unknown-linux-gnu
84
- os : ubuntu-latest
85
- cross : true
86
-
87
- # Tier 2 platforms 🥈
88
46
- target : aarch64-apple-darwin
89
47
os : macos-latest
90
- cross : true
91
- - target : aarch64-pc-windows-msvc
92
- os : windows-latest
93
- cross : true
94
- - target : aarch64-unknown-linux-musl
95
- os : ubuntu-latest
96
- cross : true
97
- - target : arm-unknown-linux-gnueabi
98
- os : ubuntu-latest
99
- cross : true
100
- - target : arm-unknown-linux-gnueabihf
101
- os : ubuntu-latest
102
- cross : true
103
- - target : armv7-unknown-linux-gnueabihf
104
- os : ubuntu-latest
105
- cross : true
106
- - target : powerpc-unknown-linux-gnu
107
- os : ubuntu-latest
108
- cross : true
109
- - target : powerpc64-unknown-linux-gnu
110
- os : ubuntu-latest
111
- cross : true
112
- - target : powerpc64le-unknown-linux-gnu
113
- os : ubuntu-latest
114
- cross : true
115
- # - target: riscv64gc-unknown-linux-gnu
116
- # os: ubuntu-latest
117
- # cross: true
118
- - target : s390x-unknown-linux-gnu
119
- os : ubuntu-latest
120
- cross : true
121
- - target : x86_64-unknown-freebsd
122
- os : ubuntu-latest
123
- cross : true
124
- - target : x86_64-unknown-linux-musl
48
+ - target : x86_64-unknown-linux-gnu
125
49
os : ubuntu-latest
126
- cross : true
127
- # - target: x86_64-unknown-netbsd
128
- # os: ubuntu-latest
129
- # cross: true
130
50
131
- runs-on : ${{ matrix.os }}
51
+ runs-on : ${{ matrix.platform. os }}
132
52
133
53
steps :
134
54
# Check out the repository code.
147
67
# Cache dependencies to speed up subsequent builds.
148
68
- name : Cache dependencies
149
69
id : cache-dependencies
150
- uses : actions/cache@v3
70
+ uses : actions/cache@v4
151
71
with :
152
72
path : ~/.cargo
153
73
key : ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
@@ -158,21 +78,11 @@ jobs:
158
78
id : install-target
159
79
run : rustup target add ${{ env.TARGET }}
160
80
161
- - name : Install Cross and clean artifacts
162
- run : |
163
- # Install cross
164
- cargo install cross
165
-
166
- # Clean the build artifacts
167
- cargo clean --verbose
168
- shell : bash
169
-
170
81
# Build the targets
171
82
- name : Build targets
172
83
id : build-targets
173
84
uses : actions-rs/cargo@v1
174
85
with :
175
- use-cross : true
176
86
command : build
177
87
args : --verbose --workspace --release --target ${{ env.TARGET }}
178
88
@@ -219,7 +129,7 @@ jobs:
219
129
220
130
# Cache dependencies to speed up subsequent builds
221
131
- name : Cache dependencies
222
- uses : actions/cache@v3
132
+ uses : actions/cache@v4
223
133
with :
224
134
path : ~/.cargo
225
135
key : ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
@@ -310,7 +220,7 @@ jobs:
310
220
# Cache dependencies to speed up subsequent builds
311
221
- name : Cache dependencies
312
222
id : cache-dependencies
313
- uses : actions/cache@v3
223
+ uses : actions/cache@v4
314
224
with :
315
225
path : /home/runner/.cargo/registry/index/
316
226
key : ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }}
0 commit comments