Skip to content
OnARM.Net

CI/CD für Windows on Arm: GitHub Actions windows-11-arm und Alternativen

Aktualisiert 5. Juni 2026

Ab 2026 können Sie Windows on Arm in CI bauen und testen, ohne Arm-Hardware zu besitzen. GitHub liefert einen gehosteten Arm64-Windows-Runner, und für die Fälle, die dieser nicht abdeckt, gibt es saubere Alternativen.

Der Stand der Arm-CI im Jahr 2026

Der gehostete Runner windows-11-arm von GitHub – ein Windows 11 Desktop Arm64-Image mit vorinstallierten Tools, 4 vCPU Standard – wurde am 7. August 2025 für öffentliche Repositorys allgemein verfügbar und ist für öffentliche Repos kostenlos. Das macht natives Arm64-Build-und-Test zu einem erstklassigen CI-Ziel, nicht zu einem selbst gehosteten Nebenprojekt.

Der Haken, der Sie erwischen wird

windows-11-arm funktioniert nur in öffentlichen Repositorys. In einem privaten Repo schlägt der Job sofort fehl. Für private Projekte benötigen Sie größere/bezahlte Arm-Runner oder einen selbst gehosteten Arm-Agenten. Prüfen Sie dies, bevor Sie ihn in eine private Pipeline einbinden.

Ein minimaler funktionierender Workflow

name: build-arm64
on: [push, pull_request]
jobs:
  arm64:
    runs-on: windows-11-arm   # nur öffentliche Repos
    steps:
      - uses: actions/checkout@v4
      - uses: microsoft/setup-msbuild@v2
      - name: ARM64 Build
        run: msbuild MyApp.sln /p:Platform=ARM64 /p:Configuration=Release
      - name: Test auf Zielplattform
        run: ctest --output-on-failure

Der Vorteil hier ist, dass Build und Test auf echter Arm64-Hardware laufen – Ihre Testsuite durchläuft native Codepfade, nicht emulierte.

Cross-Compile vs. nativ: nach Phase auswählen

  • Cross-Compile auf x64 (windows-latest + /p:Platform=ARM64) ist schneller und günstiger, aber Sie können die resultierenden Arm64-Binärdateien nicht auf dem x64-Runner ausführen – keine native Testausführung möglich.
  • Nativ auf windows-11-arm baut und führt Tests auf der Zielplattform aus.

Die pragmatische Matrix: Cross-Compile des Builds auf x64 für Geschwindigkeit, dann ein separater windows-11-arm-Job, der baut und die Testsuite ausführt. Für Treiber- oder Anti-Cheat-Code ist On-Target-Testing keine Option – Emulation kann keine Kernel-Komponenten ausführen (Warum).

Private Repos und andere Plattformen

Für private Repositorys: Größere Arm-Runner von GitHub (kostenpflichtig) oder ein selbst gehosteter Arm-Agent auf einem handelsüblichen Snapdragon-X-Laptop oder einer Cloud-Arm-Windows-VM. Azure DevOps kann Arm-basierte VMs (Ampere/Cobalt) als selbst gehostete Agenten verwenden.

Den Kreislauf schließen

Sobald Ihre Pipeline den Arm64-Build für winget, den Microsoft Store oder GitHub Releases veröffentlicht, erkennen Kompatibilitäts-Tracker dies – unseres scannt winget- und GitHub-Release-Metadaten erneut und ändert Ihren Eintrag automatisch auf nativ. Kombinieren Sie diesen Leitfaden mit der Portierungs-Roadmap (was zu bauen ist) und beobachten Sie den Native-Anteil-Trend, zu dem Sie beitragen.

← Alle Ratgeber