-
-
Notifications
You must be signed in to change notification settings - Fork 313
59 lines (42 loc) · 1.82 KB
/
nix_macos_apple_silicon.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
on:
pull_request:
name: Nix apple silicon cargo test
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
RUST_BACKTRACE: 1
jobs:
nix-apple-silicon:
name: nix-apple-silicon
runs-on: [self-hosted, macOS, ARM64]
timeout-minutes: 90
steps:
- uses: actions/checkout@v3
- run: zig version
- name: check formatting with rustfmt
run: nix develop -c cargo fmt --all -- --check
- name: check code style with clippy
run: nix develop -c cargo clippy --workspace --tests -- --deny warnings
- name: check code style with clippy --release
run: nix develop -c cargo clippy --workspace --tests --release -- --deny warnings
- name: test building default.nix
run: nix-build
- name: execute tests with --release
run: nix develop -c cargo test --locked --release
- name: make a libapp.so for the next step
run: nix develop -c cargo run -- gen-stub-lib examples/platform-switching/rocLovesRust.roc
- name: check that the platform`s produced dylib is loadable
run: cd examples/platform-switching/rust-platform && nix develop -c cargo test --release --locked
- name: test aarch64 dev backend
run: nix develop -c cargo nextest-gen-dev --locked --release --no-fail-fast
# we run the llvm wasm tests only on this machine because it is fast and wasm should be cross-target
- name: execute llvm wasm tests with --release
run: nix develop -c cargo test-gen-llvm-wasm --locked --release
- name: set env var and test website build script
run: |
nix develop -c bash www/build.sh
- name: wasm repl tests
run: nix develop -c crates/repl_test/test_wasm.sh
- name: test building wasm repl
run: nix develop -c ./ci/www-repl.sh