Skip to content

chore(ci): run separate tests for each service in isolation #245

chore(ci): run separate tests for each service in isolation

chore(ci): run separate tests for each service in isolation #245

Workflow file for this run

name: Build and test
on: [push, pull_request]
jobs:
test:
name: Unit tests on ${{ matrix.rust }} ${{ matrix.flags }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
rust: [stable, nightly, 1.76.0]
flags:
- ""
- "--no-default-features"
steps:
- uses: actions/checkout@master
- name: Install Rust
run: |
rustup update ${{ matrix.rust }} --no-self-update
rustup default ${{ matrix.rust }}
- name: Run unit tests
run: cargo test --lib --verbose ${{ matrix.flags }}
features:
name: Unit tests for ${{ matrix.features }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
features:
- "rustls"
- "baremetal"
- "block-storage"
- "compute"
- "identity"
- "image"
- "network"
- "object-storage"
steps:
- uses: actions/checkout@master
- name: Install Rust
run: |
rustup update stable --no-self-update
rustup default stable
- name: Run unit tests
run: cargo test --lib --verbose --no-default-features --features ${{ matrix.features }}
rustfmt:
name: Formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Install Rust
run: |
rustup update stable --no-self-update
rustup default stable
rustup component add rustfmt
- run: cargo fmt -- --check
docs:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Install Rust
run: |
rustup update stable --no-self-update
rustup default stable
- name: Run doc tests
run: cargo test --doc --verbose
- name: Build the docs
run: cargo doc --verbose