diff options
| author | David Lönnhager <david.l@mullvad.net> | 2024-11-28 09:47:49 +0100 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2024-12-02 14:19:25 +0100 |
| commit | 908b4d8ac4c32d8ef7116a470987247fffb89c1a (patch) | |
| tree | c180e2ff77e17c9d2759f219f795e1e8a86c397b | |
| parent | 12f120d68025e6c52fb517961963d856418e09cc (diff) | |
| download | mullvadvpn-908b4d8ac4c32d8ef7116a470987247fffb89c1a.tar.xz mullvadvpn-908b4d8ac4c32d8ef7116a470987247fffb89c1a.zip | |
Add daemon CI job for Windows ARM64
| -rw-r--r-- | .github/workflows/daemon.yml | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/.github/workflows/daemon.yml b/.github/workflows/daemon.yml index 080cdee7b5..2b6241d76f 100644 --- a/.github/workflows/daemon.yml +++ b/.github/workflows/daemon.yml @@ -118,7 +118,14 @@ jobs: run: ./ci/check-rust.sh build-windows: - runs-on: windows-latest + strategy: + matrix: + config: + - os: windows-latest + arch: x64 + - os: [self-hosted, ARM64, Windows] + arch: arm64 + runs-on: ${{ matrix.config.os }} steps: - name: Checkout repository uses: actions/checkout@v4 @@ -127,6 +134,8 @@ jobs: run: git submodule update --init --depth=1 - name: Install Protoc + # NOTE: ARM runner already has protoc + if: ${{ matrix.config.arch != 'arm64' }} uses: arduino/setup-protoc@v3 with: repo-token: ${{ secrets.GITHUB_TOKEN }} @@ -136,6 +145,7 @@ jobs: shell: bash run: | hash="$(git grep --recurse-submodules --cached -l '' -- './windows/' \ + | grep -v '\.exe$\|\.md$' \ | xargs sha1sum \ | sha1sum \ | cut -d" " -f1)" @@ -146,13 +156,22 @@ jobs: id: cache-windows-modules with: path: | - ./windows/*/bin/x64-*/*.dll - ./windows/*/bin/x64-*/*.lib - !./windows/*/bin/x64-*/libcommon.lib - !./windows/*/bin/x64-*/libshared.lib - !./windows/*/bin/x64-*/libwfp.lib + ./windows/*/bin/${{ matrix.config.arch }}-*/*.dll + ./windows/*/bin/${{ matrix.config.arch }}-*/*.lib + !./windows/*/bin/${{ matrix.config.arch }}-*/libcommon.lib + !./windows/*/bin/${{ matrix.config.arch }}-*/libshared.lib + !./windows/*/bin/${{ matrix.config.arch }}-*/libwfp.lib key: windows-modules-${{ steps.windows-modules-hash.outputs.hash }} + # The x64 toolchain is needed to build talpid-openvpn-plugin + # TODO: Remove once fixed + - name: Install Rust x64 target + if: ${{ matrix.config.arch == 'arm64' }} + uses: actions-rs/toolchain@v1.0.6 + with: + toolchain: stable + target: x86_64-pc-windows-msvc + - name: Install Rust uses: actions-rs/toolchain@v1.0.6 with: |
