Try to resolve a flaky test in the test suite #1021
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
test: | |
runs-on: [self-hosted, linux, X64] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Check formatting | |
run: cargo fmt --check | |
- name: Build | |
run: cargo build --release --verbose | |
- if: ${{ github.ref_name == 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose -- --include-ignored | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests with Node 23 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 23 | |
nvm use 23 | |
cargo test --release --verbose | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests with Node 22 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 22 | |
nvm use 22 | |
cargo test --release --verbose | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests with Node 20 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 20 | |
nvm use 20 | |
cargo test --release --verbose | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests with Node 18 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 18 | |
nvm use 18 | |
cargo test --release --verbose | |
- name: Run native tests | |
run: cargo run --release -- test alan/test.ln | |
- name: Run js tests with Node 23 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 23 | |
nvm use 23 | |
cargo run --release -- test --js alan/test.ln | |
- name: Run js tests with Node 22 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 22 | |
nvm use 22 | |
cargo run --release -- test --js alan/test.ln | |
- name: Run js tests with Node 20 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 20 | |
nvm use 20 | |
cargo run --release -- test --js alan/test.ln | |
- name: Run js tests with Node 18 | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |
nvm install 18 | |
nvm use 18 | |
cargo run --release -- test --js alan/test.ln | |
test-windows: | |
runs-on: [self-hosted, windows] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: cargo build --release --verbose | |
- if: ${{ github.ref_name == 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose -- --include-ignored | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose | |
- name: Run native tests | |
run: cargo run --release -- test alan/test.ln | |
- name: Run js tests | |
run: cargo run --release -- test --js alan/test.ln | |
test-macos: | |
runs-on: [self-hosted, macOS, X64] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Node deps | |
run: yarn | |
- name: Start web server | |
run: yarn start-server | |
- name: Build | |
run: cargo build --release --verbose | |
- if: ${{ github.ref_name == 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose -- --include-ignored | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose | |
- if: always() | |
name: Stop web server | |
run: yarn stop-server | |
- name: Run native tests | |
run: cargo run --release -- test alan/test.ln | |
- name: Run js tests | |
run: cargo run --release -- test --js alan/test.ln | |
test-arm-linux: | |
runs-on: [self-hosted, linux, ARM64] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: cargo build --release --verbose | |
- if: ${{ github.ref_name == 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose -- --include-ignored | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose | |
- name: Run native tests | |
run: cargo run --release -- test alan/test.ln | |
- name: Run js tests | |
run: cargo run --release -- test --js alan/test.ln | |
test-arm-macos: | |
runs-on: [self-hosted, macOS, ARM64] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Node deps | |
run: yarn | |
- name: Start web server | |
run: yarn start-server | |
- name: Build | |
run: cargo build --release --verbose | |
- if: ${{ github.ref_name == 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose -- --include-ignored | |
- if: ${{ github.ref_name != 'main' }} | |
name: Run tests | |
run: cargo test --release --verbose | |
- if: always() | |
name: Stop web server | |
run: yarn stop-server | |
- name: Run native tests | |
run: cargo run --release -- test alan/test.ln | |
- name: Run js tests | |
run: cargo run --release -- test --js alan/test.ln |