ci: refactor integration.yaml
@@ -8,56 +8,47 @@ on:
jobs:
cli-test-harness:
+
strategy:
matrix:
- os:
- - ubuntu-latest
- #- windows-latest
- - macOS-latest
+ kind: [integration, api, unit, command]
include:
- - os: "macOS-latest"
+ # - os: windows-2019
+ - os: macos-10.15
exclude_tests: "--excludes docker"
# GH OS X runners only support very very very very old CPUs so we can't use anything
# fancy here and got to fall back to the minimal SSE4.2 requirement for simd_json
target_feature: "+sse4.2"
- - os: "ubuntu-latest"
+ - os: macos-11.0
+ target_feature: "+sse4.2"
+ - os: ubuntu-20.04
exclude_tests: ""
target_feature: "+avx,+avx2,+sse4.2"
+
+ env:
+ TREMOR_PATH: "${{ github.workspace }}/tremor-script/lib"
+ RUSTFLAGS: -D warnings -C target-feature=${{ matrix.target_feature }}
+
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v1
+
- name: Install deps
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get -qy update && sudo apt-get install -y libssl-dev libssl1.1
+
- uses: actions-rs/toolchain@v1
with:
override: true
profile: minimal
+
- uses: Swatinem/rust-cache@v1
- name: Build test runner
run: cargo build -p tremor-cli
- env:
- RUSTFLAGS: -D warnings -C target-feature=${{ matrix.target_feature }}
- - name: Run Integration Tests
- run: cargo run -p tremor-cli -- test integration tremor-cli/tests ${{ matrix.exclude_tests }}
- env:
- TREMOR_PATH: "${{ github.workspace }}/tremor-script/lib"
- RUSTFLAGS: -D warnings -C target-feature=${{ matrix.target_feature }}
- - name: Run API Tests
- run: cargo run -p tremor-cli -- test api tremor-cli/tests ${{ matrix.exclude_tests }}
- env:
- TREMOR_PATH: "${{ github.workspace }}/tremor-script/lib"
- RUSTFLAGS: -D warnings -C target-feature=${{ matrix.target_feature }}
- - name: Run Unit Tests
- run: cargo run -p tremor-cli -- test unit tremor-cli/tests ${{ matrix.exclude_tests }}
- env:
- TREMOR_PATH: "${{ github.workspace }}/tremor-script/lib"
- RUSTFLAGS: -D warnings -C target-feature=${{ matrix.target_feature }}
- - name: Run Command Tests
- run: cargo run -p tremor-cli -- test command tremor-cli/tests ${{ matrix.exclude_tests }}
- env:
- TREMOR_PATH: "${{ github.workspace }}/tremor-script/lib"
- RUSTFLAGS: -D warnings -C target-feature=${{ matrix.target_feature }}
+
+ - name: run ${{ matrix.kind }} tests
+ run: cargo run -p tremor-cli -- test ${{ matrix.kind }} tremor-cli/tests ${{ matrix.exclude_tests }}
+
- name: Upload error logs
uses: actions/upload-artifact@v2
if: failure()
