blob: 103c19eff718ebaa7108729829e16e6dcaf03516 [file] [log] [blame]
Haibo Huang8b9513e2020-07-13 22:05:39 -07001name: CI
2
3on:
4 push:
5 branches:
6 - master
7 pull_request:
8 branches:
9 - master
10
11jobs:
12 ci:
13 name: CI
14 runs-on: ${{ matrix.os }}
15 strategy:
16 matrix:
17 os: [macos-latest, ubuntu-latest, windows-latest]
Haibo Huang2e1e83e2021-02-09 23:57:34 -080018 clang: [["11.0", "clang_11_0"]]
Chih-Hung Hsieh97132dc2020-10-26 17:21:51 -070019 rust: ["1.40.0"]
Haibo Huang8b9513e2020-07-13 22:05:39 -070020 steps:
21 - name: Checkout Repository
22 uses: actions/checkout@v2
23 # LLVM and Clang
Haibo Huang8b9513e2020-07-13 22:05:39 -070024 - name: Install LLVM and Clang
25 uses: KyleMayes/install-llvm-action@v1
26 with:
27 version: ${{ matrix.clang[0] }}
28 directory: ${{ runner.temp }}/llvm-${{ matrix.clang[0] }}
Haibo Huang8b9513e2020-07-13 22:05:39 -070029 # Rust
30 - name: Install Rust
31 uses: actions-rs/toolchain@v1
32 with:
33 toolchain: ${{ matrix.rust }}
34 # Test
35 - name: Cargo Test (Dynamic)
36 uses: actions-rs/cargo@v1
Haibo Huang8b9513e2020-07-13 22:05:39 -070037 with:
38 command: test
39 args: --verbose --features ${{ matrix.clang[1] }} -- --nocapture
40 - name: Cargo Test (Runtime)
41 uses: actions-rs/cargo@v1
42 env:
Joel Galenson83337ed2021-05-19 14:55:23 -070043 # Needed to not find MinGW when loading at runtime
Haibo Huang8b9513e2020-07-13 22:05:39 -070044 LIBCLANG_PATH: ${{ runner.temp }}/llvm-${{ matrix.clang[0] }}/lib
Haibo Huang8b9513e2020-07-13 22:05:39 -070045 with:
46 command: test
47 args: --verbose --features "${{ matrix.clang[1] }} runtime" -- --nocapture