Who is this for?

This is an introductory topic for software developers who are developing applications on Windows on Arm computers.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Configure Windows Sandbox as a self-hosted GitHub Actions runner.
  • Build and run a .NET 8 Windows Presentation Foundation (WPF) application using a self-hosted GitHub Actions runner in your CI/CD workflow.

Prerequisites

Before starting, you will need the following:

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll configure Windows Sandbox on a Windows on Arm device as a self-hosted Arm64 GitHub Actions runner. First, you’ll prepare the sandbox, register the runner, and use a repository workflow to build and publish a .NET 8 WPF sample. Then, you’ll trigger the pipeline and verify that jobs run in the sandboxed environment and produce the expected outputs.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
Where is the workflow defined and how is it triggered?
The workflow is defined at .github/workflows/dotnet_sandbox.yml. It triggers on pushes to the main branch and can also be started manually from the Actions tab.
How do I know the job ran on my Windows Sandbox self-hosted runner?
Open the workflow run details and check the job’s runner information. It should indicate that a self-hosted runner executed the job from your sandboxed environment.
What result should I expect when the .NET WPF build and run steps succeed?
The workflow run shows a success status, and the logs for the build and run steps complete without errors. If the workflow includes a publish step, you’ll also see published outputs listed in the run summary.
What should I check if the workflow doesn't start after pushing?
Confirm you pushed to the main branch and that .github/workflows/dotnet_sandbox.yml exists in the repository. If needed, start the workflow manually from the Actions tab.
What do I need to confirm before configuring the self-hosted runner in Windows Sandbox?
Verify that Windows Sandbox is enabled on your Windows 11 device as described in the Windows Sandbox install guide . This ensures the sandbox environment is available to register as a runner.
Next