# [Implement CI/CD with Windows on Arm host](https://learn.arm.com/learning-paths/laptops-and-desktops/windows_cicd_github/)

## In this learning path

- [Introduction](https://learn.arm.com/learning-paths/laptops-and-desktops/windows_cicd_github/)
- [Setup GitHub Self-hosted Runner](https://learn.arm.com/learning-paths/laptops-and-desktops/windows_cicd_github/runner-setup/)
- [Create and run simple workflow](https://learn.arm.com/learning-paths/laptops-and-desktops/windows_cicd_github/runner-run/)
- [Next Steps](https://learn.arm.com/learning-paths/laptops-and-desktops/windows_cicd_github/_next-steps/)

## About this Learning Path
| Skill level:          | Introductory         |
|-----------------------|----------------------|
| Reading time:         | 30 min               |
| Last updated:         | 12 Aug 2026          |

| Author:              | Pareena Verma, Arm [GitHub](https://github.com/pareenaverma) [LinkedIn](https://linkedin.com/in/pareena-verma-7853607)  |
|----------------------|---------------------------------------------------------|
| Arm IP:              | [Neoverse](https://support.arm.com/?tab=compute-ip&Product%20Type=Infrastructure%20Processors) |
| Tags:                | CI-CD, Windows, GitHub |

### Who is this for?
This is an introductory topic for software developers interested in running their CI flows on Windows on Arm machines.

### What will you learn?
Upon completion of this Learning Path, you will be able to:
- Setup a CI/CD flow with GitHub Actions to use Windows on Arm as the self-hosted runner host
- Run a simple GitHub Actions workflow

### Prerequisites
Before starting, you will need the following:
- Some familiarity with CI/CD concepts is assumed
- Valid GitHub account
- Microsoft Azure account (if using virtual machine)

### Summary
You’ll configure a GitHub Actions CI/CD flow on a Windows on Arm host. First, you’ll create a repository, set up a self-hosted runner on a device or cloud instance, and add a minimal workflow from the **Simple workflow** template. Then, you’ll run a hello world task to verify that jobs execute on your Windows on Arm runner.

### Frequently asked questions
<details>
<summary>Why should I create a new GitHub repository for this exercise?</summary>
A new repository provides a clean space to test a hello world command with GitHub Actions without impacting existing code or workflows.
</details>

<details>
<summary>Which option should I choose in the repository to start the minimal workflow?</summary>
Select **Actions** in the repository and start with the **Simple workflow**, then select **Configure** to generate the starter file.
</details>

<details>
<summary>Where does GitHub create the workflow file, and can I rename it?</summary>
GitHub creates `blank.yml` under `<your-repo-name>/.github/workflows/`. You can optionally rename it to something more meaningful, such as `hello.yml`.
</details>

<details>
<summary>What result should I expect when the workflow runs successfully?</summary>
The run completes with the minimal steps executing, including the hello world command, and the job status shows **success**. This confirms the CI/CD workflow is operational on the Windows on Arm host.
</details>

<details>
<summary>Can I use a virtual machine instead of a physical Windows on Arm device?</summary>
Yes. You can host the runner on a Windows on Arm virtual machine or cloud instance.
</details>
