name: HIL on: merge_group: workflow_dispatch: inputs: repository: description: "Owner and repository to test" required: true default: 'esp-rs/esp-hal' branch: description: "Branch, tag or SHA to checkout." required: true default: "main" env: CARGO_TERM_COLOR: always jobs: # Test RISC-V targets: riscv-hil: name: HIL Test | ${{ matrix.target.soc }} runs-on: labels: [self-hosted, "${{ matrix.target.runner }}"] strategy: fail-fast: false matrix: target: - soc: esp32c3 runner: rustboard rust-target: riscv32imc-unknown-none-elf - soc: esp32c6 runner: esp32c6-usb rust-target: riscv32imac-unknown-none-elf - soc: esp32h2 runner: esp32h2-usb rust-target: riscv32imac-unknown-none-elf steps: - uses: actions/checkout@v4 if: github.event_name != 'workflow_dispatch' - uses: actions/checkout@v4 if: github.event_name == 'workflow_dispatch' with: repository: ${{ github.event.inputs.repository }} ref: ${{ github.event.inputs.branch }} - uses: dtolnay/rust-toolchain@v1 with: target: ${{ matrix.target.rust-target }} toolchain: nightly components: rust-src - name: Run tests run: cargo xtask run-tests ${{ matrix.target.soc }} # Test Xtensa targets: # TODO: Add jobs for Xtensa once supported by `probe-rs`