name: Rust on: push: branches: [master] pull_request: branches: [master] env: CARGO_TERM_COLOR: always jobs: ci: runs-on: ubuntu-latest strategy: matrix: include: - package: embassy target: thumbv7em-none-eabi - package: embassy target: thumbv7em-none-eabi features: log,executor-agnostic - package: embassy target: thumbv7em-none-eabi features: defmt - package: embassy target: thumbv6m-none-eabi features: defmt - package: examples/std target: x86_64-unknown-linux-gnu - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52805 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52810 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52811 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52820 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52832 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52833 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52840 - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52840,log - package: embassy-nrf target: thumbv7em-none-eabi features: nrf52840,defmt - package: examples/nrf target: thumbv7em-none-eabi - package: examples/rp target: thumbv6m-none-eabi - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32f411ce,defmt - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32f429zi,log - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32h755zi,defmt - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32l476vg,defmt - package: embassy-stm32 target: thumbv6m-none-eabi features: stm32l053r8,defmt - package: examples/stm32f4 target: thumbv7em-none-eabi - package: examples/stm32l4 target: thumbv7em-none-eabi - package: examples/stm32h7 target: thumbv7em-none-eabi - package: examples/stm32l0 target: thumbv6m-none-eabi - package: examples/stm32wb55 target: thumbv7em-none-eabihf steps: - uses: actions/checkout@v2 with: submodules: true - uses: actions-rs/toolchain@v1 with: toolchain: stable - name: cache id: cache-target uses: actions/cache@v2 with: path: target key: ${{ runner.os }}-${{ matrix.target }} - name: Check run: cd ${{ matrix.package }} && cargo check --features=${{ matrix.features }} --target=${{ matrix.target }} fmt: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: toolchain: stable - name: Check fmt run: for i in embassy-*; do (cd $i; cargo fmt -- --check); done metapac_gen: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: submodules: true - uses: actions-rs/toolchain@v1 with: toolchain: stable - name: Generate pregenerated metapac run: cd stm32-metapac/gen; cargo run --release