Skip to content

Add CI checks for web builds (#50) #113

Add CI checks for web builds (#50)

Add CI checks for web builds (#50) #113

Workflow file for this run

on: [push, pull_request]
name: CI
jobs:
check:
name: Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install libraries
run: |
sudo apt update
sudo apt install libgtk-3-dev libatk1.0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libasound2-dev clang mold -y
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: nightly-2023-09-12
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- run: cargo check --all-features --jobs 1
check-wasm32:
name: Check wasm32
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install libraries
run: |
sudo apt update
sudo apt install libgtk-3-dev libatk1.0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libasound2-dev clang mold -y
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: nightly-2023-09-12
targets: wasm32-unknown-unknown
components: rust-src
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- run: cargo check --jobs 1 --target wasm32-unknown-unknown -Z build-std=std,panic_abort
test:
name: Test Suite
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- run: |
sudo apt update
sudo apt install libgtk-3-dev libatk1.0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libasound2-dev clang mold -y
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: nightly-2023-09-12
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- run: cargo test --lib --jobs 1
trunk:
name: Trunk
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install libraries
run: |
sudo apt update
sudo apt install libgtk-3-dev libatk1.0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libasound2-dev clang mold -y
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: nightly-2023-09-12
targets: wasm32-unknown-unknown
components: rust-src
- name: Download and install Trunk binary
run: wget -qO- https://github.com/thedodd/trunk/releases/download/v0.17.5/trunk-x86_64-unknown-linux-gnu.tar.gz | tar -xzf-
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- run: ./trunk build
fmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install libraries
run: |
sudo apt update
sudo apt install libgtk-3-dev libatk1.0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libasound2-dev clang mold -y
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: nightly-2023-09-12
components: rustfmt
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- run: cargo fmt --all -- --check
clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Install libraries
run: |
sudo apt update
sudo apt install libgtk-3-dev libatk1.0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev libasound2-dev clang mold -y
- uses: dtolnay/rust-toolchain@nightly
with:
toolchain: nightly-2023-09-12
components: clippy
- name: Rust Cache
uses: Swatinem/rust-cache@v2
- run: cargo clippy --jobs 1 -- # -D warnings