xref: /libCEED/.github/workflows/rust-test-with-style.yml (revision 8a4ce0d78b95fffc485d7f6e76eabd31204930a1)
1*8a4ce0d7SJeremy L Thompsonname: Rust
2*8a4ce0d7SJeremy L Thompson
3*8a4ce0d7SJeremy L Thompsonon:
4*8a4ce0d7SJeremy L Thompson  push:
5*8a4ce0d7SJeremy L Thompson
6*8a4ce0d7SJeremy L Thompsonjobs:
7*8a4ce0d7SJeremy L Thompson  test:
8*8a4ce0d7SJeremy L Thompson    strategy:
9*8a4ce0d7SJeremy L Thompson      matrix:
10*8a4ce0d7SJeremy L Thompson        os: [ubuntu-latest]
11*8a4ce0d7SJeremy L Thompson        compiler: [gcc-9]
12*8a4ce0d7SJeremy L Thompson
13*8a4ce0d7SJeremy L Thompson    runs-on: ${{ matrix.os }}
14*8a4ce0d7SJeremy L Thompson
15*8a4ce0d7SJeremy L Thompson    steps:
16*8a4ce0d7SJeremy L Thompson    - name: Environment setup
17*8a4ce0d7SJeremy L Thompson      uses: actions/checkout@v2
18*8a4ce0d7SJeremy L Thompson    - name: Rust setup
19*8a4ce0d7SJeremy L Thompson      uses: actions-rs/toolchain@v1
20*8a4ce0d7SJeremy L Thompson      with:
21*8a4ce0d7SJeremy L Thompson        toolchain: stable
22*8a4ce0d7SJeremy L Thompson    - name: Rust test
23*8a4ce0d7SJeremy L Thompson      env:
24*8a4ce0d7SJeremy L Thompson        CC: ${{ matrix.compiler }}
25*8a4ce0d7SJeremy L Thompson        FC: gfortran-9
26*8a4ce0d7SJeremy L Thompson      run: |
27*8a4ce0d7SJeremy L Thompson        make info
28*8a4ce0d7SJeremy L Thompson        make -j2
29*8a4ce0d7SJeremy L Thompson        export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib
30*8a4ce0d7SJeremy L Thompson        cd rust && cargo build
31*8a4ce0d7SJeremy L Thompson        cargo test
32*8a4ce0d7SJeremy L Thompson        cd ..
33*8a4ce0d7SJeremy L Thompson    - name: Rust style
34*8a4ce0d7SJeremy L Thompson      run: |
35*8a4ce0d7SJeremy L Thompson        cd rust && cargo fmt -- --check
36