Skip to content

nextest archives

nextest archives #2

Workflow file for this run

name: Rust Jobs
on: [push]
concurrency:
# limit concurrency of entire workflow runs for a specific branch
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint
runs-on: ubuntu-20.04
steps:
- uses: rui314/setup-mold@v1
with:
make-default: true
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v3
with:
node-version: 22.1.0
cache: "pnpm"
- uses: arduino/setup-protoc@v3
with:
version: "25.3"
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
components: clippy, rustfmt
cache-key: "rust-tests"
# - uses: Swatinem/rust-cache@v2
# with:
# shared-key: "rust-tests"
- name: Install Package Dependencies
run: make install
- name: Run Lints
run: make lint
prepare-tests:
name: Create NexTest Archives
runs-on: ubuntu-20.04
steps:
- uses: rui314/setup-mold@v1
with:
make-default: true
- uses: actions/checkout@v4
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache-key: "rust-tests"
# - uses: Swatinem/rust-cache@v2
# with:
# shared-key: "rust-tests"
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v3
with:
node-version: 22.1.0
cache: "pnpm"
- uses: arduino/setup-protoc@v3
with:
version: "25.3"
- uses: taiki-e/install-action@v2
with:
tool: [email protected]
- name: Install Package Dependencies
run: make install
- name: Create Nextest Archives
run: make nextest-archive
- name: Upload Nextest Archives
uses: actions/upload-artifact@v4
with:
path: ./target/nextest/*.tar.zst
overwrite: true
tests-parallel:
name: Run Tests (Parallel)
runs-on: ubuntu-20.04
needs: prepare-tests
steps:
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache: false
- uses: pnpm/action-setup@v4
- uses: taiki-e/install-action@v2
with:
tool: [email protected]
- name: Install Package Dependencies
run: make install
- name: Download Nextest Archives
uses: actions/download-artifact@v4
with:
name: nextest-archive.tar.zst
path: .
- name: Run Tests
run: cargo nextest run --archive-file nextest-archive.tar.zst --retries 2
tests-serial:
name: Run Tests (Serial)
runs-on: ubuntu-20.04
needs: prepare-tests
steps:
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache: false
- uses: pnpm/action-setup@v4
- uses: taiki-e/install-action@v2
with:
tool: [email protected]
- name: Install Package Dependencies
run: make install
- name: Download Nextest Archives
uses: actions/download-artifact@v4
with:
name: nextest-archive-serial.tar.zst
path: .
- name: Run Tests
run: cargo nextest run --archive-file nextest-archive-serial.tar.zst --retries 2
# - name: Run Unit Tests
# run: make test
# - name: Docker test service setup
# run: make integration-env-up-ci
# - name: Run integration tests
# run: make integration-test-ci
# - name: Docker compose down
# if: always()
# run: make integration-env-down-ci
# - name: Upload integration test logs
# uses: actions/upload-artifact@v4
# if: always()
# with:
# path: ./target/emily-server.log