# One-shot provisioning of the WDK + cargo-wdk onto the persistent self-hosted windows-amd64 runner, so # the all-Rust UMDF drivers can build there (design/windows-host-rewrite.md, M0). The runner has the base # Windows SDK + MSVC + LLVM + Rust but NOT the WDK (no km/wdf/iddcx headers) or cargo-wdk. # # Dispatch manually (workflow_dispatch). Idempotent: re-running is a near no-op once provisioned. The # install persists on the runner (real box, not an ephemeral container), so this runs once, not per build. name: windows-drivers-provision on: workflow_dispatch: push: branches: [main] paths: - 'scripts/ci/provision-windows-wdk.ps1' - '.gitea/workflows/windows-drivers-provision.yml' jobs: provision: runs-on: windows-amd64 timeout-minutes: 60 defaults: run: shell: pwsh steps: - uses: actions/checkout@v4 - name: Install WDK + cargo-wdk on the runner run: ./scripts/ci/provision-windows-wdk.ps1