Skip to content

Fix GitHub Pages upload #35

Fix GitHub Pages upload

Fix GitHub Pages upload #35

Workflow file for this run

name: Test
on:
push:
branches: ["main"]
pull_request:
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
build-test:
name: Build & Test
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
rust:
- { version: "1.60", msrv: true }
- { version: stable, msrv: false }
target:
- { target: x86_64-unknown-linux-gnu, native: true }
- { target: wasm32-unknown-unknown, native: false }
include:
- os: macos-latest
rust: { version: stable, msrv: false }
target: { target: wasm32-unknown-unknown, native: false }
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: taiki-e/install-action@v2
with:
tool: wasm-bindgen-cli
- name: Install additional Rust targets
run: |
rustup default ${{ matrix.rust.version }}
rustup target add ${{ matrix.target.target }}
- name: Build
run: cargo build --target ${{ matrix.target.target }}
- name: Documentation
if: matrix.os == 'ubuntu-latest'
run: cargo doc --no-deps --target ${{ matrix.target.target }}
- name: Test on Chrome
if: matrix.rust.msrv == false && matrix.os == 'ubuntu-latest'
env:
CHROMEDRIVER: chromedriver
run:
cargo test --all-targets --no-fail-fast --target ${{
matrix.target.target }}
- name: Test on Firefox
if: matrix.rust.msrv == false && matrix.os == 'ubuntu-latest'
env:
GECKODRIVER: geckodriver
run:
cargo test --all-targets --no-fail-fast --target ${{
matrix.target.target }}
- name: Test on Safari
if: matrix.rust.msrv == false && matrix.os == 'macos-latest'
env:
SAFARIDRIVER: safaridriver
run:
cargo test --all-targets --no-fail-fast --target ${{
matrix.target.target }}
- name: Documentation Test
if:
matrix.rust.msrv == false && matrix.target.native == true && matrix.os
== 'ubuntu-latest'
run: cargo test --doc --no-fail-fast
atomic-build-test:
name: Atomic Build & Test
runs-on: ${{ matrix.os }}
defaults:
run:
working-directory: atomic-test
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install additional Rust targets and components
run: |
rustup default nightly
rustup target add wasm32-unknown-unknown
rustup component add rust-src
- name: Restore cached wasm-bindgen
uses: actions/cache/restore@v3
with:
path: |
~/.cargo/.crates.toml
~/.cargo/.crates2.json
~/.cargo/bin/wasm-bindgen
~/.cargo/bin/wasm-bindgen-test-runner
key: wasm-bindgen-atomic-${{ matrix.os }}
- name: Install wasm-bindgen
run:
cargo install wasm-bindgen-cli --git
https://github.com/daxpedda/wasm-bindgen --branch despair
- name: Save wasm-bindgen to cache
uses: actions/cache/save@v3
with:
path: |
~/.cargo/.crates.toml
~/.cargo/.crates2.json
~/.cargo/bin/wasm-bindgen
~/.cargo/bin/wasm-bindgen-test-runner
key: wasm-bindgen-atomic-${{ matrix.os }}
- name: Test on Chrome
if: matrix.os == 'ubuntu-latest'
env:
CHROMEDRIVER: chromedriver
run: cargo test --no-fail-fast
- name: Test on Firefox
if: matrix.os == 'ubuntu-latest'
env:
WASM_BINDGEN_USE_NO_MODULE: 1
GECKODRIVER: geckodriver
run: cargo test --no-fail-fast
- name: Test on Safari
if: matrix.os == 'macos-latest'
env:
SAFARIDRIVER: safaridriver
run: cargo test --no-fail-fast
minimal-versions:
name: Minimal Versions
runs-on: ubuntu-latest
defaults:
run:
working-directory: minimal-versions
strategy:
fail-fast: false
matrix:
rust:
- "1.60"
- stable
target:
- x86_64-unknown-linux-gnu
- wasm32-unknown-unknown
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install additional Rust targets
run: |
rustup default ${{ matrix.rust }}
rustup target add ${{ matrix.target }}
- name: Install Rust nightly
run: rustup toolchain install nightly --profile minimal
- name: Build
run: |
cargo +nightly update -Z minimal-versions
cargo build --target ${{ matrix.target }}