diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6d7e46b..013f6ec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,7 +1,6 @@ name: CI on: push: - branches: [ "master", "v0.6.x", "v0.7.x" ] pull_request: branches: [ "master", "v0.6.x", "v0.7.x" ] env: @@ -31,6 +30,29 @@ jobs: run: cargo test --all-features - name: Tests release build run: cargo test --release --all-features + Test-Haiku: + name: 'Test on Haiku' + runs-on: 'ubuntu-latest' + container: 'docker.io/hectorm/qemu-haiku:latest' + timeout-minutes: 120 + steps: + - uses: actions/checkout@v3 + - name: Wait until VM is ready + run: container-init & timeout 600 vmshell exit 0 + - name: Install native dependencies + run: vmshell pkgman install -y rust_bin gcc haiku_devel + - name: Copy project to VM + run: vmshell mkdir ./mio/; tar -cf - ./ | vmshell tar -xf - -C ./mio/ + - name: Install Cargo-hack + run: vmshell cargo install --debug cargo-hack + - name: Check all features + run: vmshell 'cd mio && cargo hack check --feature-powerset' + - name: Build + run: vmshell 'cd mio && cargo build --all-features' + - name: Tests + run: vmshell 'cd mio && cargo test --all-features' + - name: Tests release build + run: vmshell 'cd mio && cargo test --release --all-features' MinimalVersions: runs-on: ${{ matrix.os }} timeout-minutes: 10