diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cb7892fd3a37..fcfc3cf16c9b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,7 +73,7 @@ jobs: cache-dependency-path: ci-constraints-requirements.txt timeout-minutes: 3 - name: Setup rust - uses: dtolnay/rust-toolchain@888c2e1ea69ab0d4330cbf0af1ecc7b68f368cc1 + uses: dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b with: toolchain: ${{ matrix.PYTHON.RUST }} components: rustfmt,clippy @@ -290,16 +290,20 @@ jobs: - uses: ./.github/actions/upload-coverage windows: - runs-on: windows-latest + runs-on: ${{ matrix.WINDOWS.RUNNER }} strategy: fail-fast: false matrix: WINDOWS: - - {ARCH: 'x86', WINDOWS: 'win32'} - - {ARCH: 'x64', WINDOWS: 'win64'} + - {ARCH: 'x86', WINDOWS: 'win32', RUNNER: 'windows-latest'} + - {ARCH: 'x64', WINDOWS: 'win64', RUNNER: 'windows-latest'} + - {ARCH: 'arm64', WINDOWS: 'arm64', RUNNER: 'windows-11-arm'} PYTHON: - {VERSION: "3.7", NOXSESSION: "tests-nocoverage"} - {VERSION: "3.13", NOXSESSION: "tests"} + exclude: + - PYTHON: {VERSION: "3.7", NOXSESSION: "tests-nocoverage"} + WINDOWS: {ARCH: 'arm64', WINDOWS: 'arm64', RUNNER: 'windows-11-arm'} timeout-minutes: 15 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 @@ -315,6 +319,11 @@ jobs: cache: pip cache-dependency-path: ci-constraints-requirements.txt timeout-minutes: 3 + - name: Setup rust + uses: dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b + with: + toolchain: stable + if: matrix.WINDOWS.ARCH == 'arm64' - run: rustup component add llvm-tools-preview - name: Cache rust and pip uses: ./.github/actions/cache