Skip to content

Various improvements to cargo-component. #489

Various improvements to cargo-component.

Various improvements to cargo-component. #489

Workflow file for this run

name: CI
on:
push:
branches: [main, 'release-*']
tags: ['[0-9]*']
pull_request:
branches: [main, 'release-*']
jobs:
test:
name: Run tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@v3
- name: Configure sccache
run: |
echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
- name: Run sccache-cache
uses: mozilla-actions/[email protected]
- name: Install Rust
run: |
rustup set profile minimal
rustup update stable --no-self-update
rustup update nightly --no-self-update
rustup default stable
rustup target add wasm32-wasi
rustup target add wasm32-wasi --toolchain nightly
rustup target add wasm32-unknown-unknown
shell: bash
- name: Install `wasmtime`
uses: bytecodealliance/actions/wasmtime/setup@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
version: "v18.0.1"
- name: Run all tests
run: cargo test --all
example:
name: Build example component
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Rust
run: rustup update stable --no-self-update && rustup default stable && rustup target add wasm32-wasi && rustup target add wasm32-unknown-unknown
- name: Install cargo-component (debug)
run: cargo install --locked --debug --path .
- name: Build the example component
run: (cd example && cargo component build --release -v)
install:
name: Install cargo-component
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Rust
run: rustup update stable --no-self-update && rustup default stable
- name: Install cargo-component
run: cargo install --locked --path .
rustfmt:
name: Format source code
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Rust
run: rustup update stable && rustup default stable && rustup component add rustfmt
- name: Run `cargo fmt`
run: cargo fmt -- --check