Skip to content

CI

CI #179

Workflow file for this run

name: CI
on:
push:
pull_request:
schedule:
- cron: '0 0 * * 0' # Ensure job runs weekly to test nightly/beta/stable
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: ./build-all.sh
- name: Archive lm3s6965 image
uses: actions/upload-artifact@v4
with:
name: lm3s6965-image-pinned
path: |
target/thumbv7m-none-eabi/debug/lilos-testsuite-lm3s6965
doc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: ./doc-all.sh
test_qemu:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v4
- name: Install qemu tool
run: |
sudo apt-get update
sudo apt-get install qemu-system-arm
- run: >
qemu-system-arm
-cpu cortex-m3
-machine lm3s6965evb
-nographic
-semihosting-config enable=on,target=native
-kernel lm3s6965-image-pinned/lilos-testsuite-lm3s6965
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: ./clippy-all.sh
build_future:
runs-on: ubuntu-latest
strategy:
matrix:
toolchain:
- stable
- nightly
- beta
steps:
- uses: actions/checkout@v4
- run: rm rust-toolchain.toml
- run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }} && rustup target add thumbv7em-none-eabihf thumbv7m-none-eabi thumbv6m-none-eabi
- run: ./build-all.sh
- name: Archive lm3s6965 image
uses: actions/upload-artifact@v4
with:
name: lm3s6965-image-${{ matrix.toolchain }}
path: |
target/thumbv7m-none-eabi/debug/lilos-testsuite-lm3s6965
test_qemu_future:
strategy:
matrix:
toolchain:
- stable
- nightly
- beta
needs: build_future
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v4
- name: Install qemu tool
run: |
sudo apt-get update
sudo apt-get install qemu-system-arm
- run: >
qemu-system-arm
-cpu cortex-m3
-machine lm3s6965evb
-nographic
-semihosting-config enable=on,target=native
-kernel lm3s6965-image-${{ matrix.toolchain }}/lilos-testsuite-lm3s6965
clippy_future:
runs-on: ubuntu-latest
strategy:
matrix:
toolchain:
- stable
- nightly
- beta
steps:
- uses: actions/checkout@v4
- run: rm rust-toolchain.toml
- run: rustup update ${{ matrix.toolchain}} && rustup default ${{ matrix.toolchain }} && rustup target add thumbv7em-none-eabihf thumbv7m-none-eabi thumbv6m-none-eabi && rustup component add clippy
- run: ./clippy-all.sh
check_msrv_all:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up cargo cache
uses: actions/cache@v3
continue-on-error: false
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-
- run: ./msrv-all.sh