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 - package: embassy target: thumbv7em-none-eabi features: defmt - package: embassy target: thumbv6m-none-eabi features: defmt - package: embassy-nrf-examples target: thumbv7em-none-eabi - package: embassy-nrf target: thumbv7em-none-eabi features: 52810 - package: embassy-nrf target: thumbv7em-none-eabi features: 52832 - package: embassy-nrf target: thumbv7em-none-eabi features: 52833 - package: embassy-nrf target: thumbv7em-none-eabi features: 52840 - package: embassy-nrf target: thumbv7em-none-eabi features: 52840,log - package: embassy-nrf target: thumbv7em-none-eabi features: 52840,defmt - package: embassy-stm32-examples target: thumbv7em-none-eabi features: stm32f405 - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32f405 - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32f446 - package: embassy-stm32 target: thumbv7em-none-eabi features: stm32f405,defmt - package: embassy-stm32 target: thumbv6m-none-eabi features: stm32l0x2 - package: embassy-stm32 target: thumbv6m-none-eabi features: stm32l0x2,defmt - package: embassy-rp-examples target: thumbv6m-none-eabi steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: toolchain: nightly target: ${{ matrix.target }} components: rust-src, rustfmt override: true - 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: nightly components: rustfmt override: true - name: Check fmt run: for i in embassy-*; do (cd $i; cargo fmt -- --check); done