Running jobs on your runner
Once your runner type has been defined, you can update your workflow YAML files to send jobs to runner instances for processing. To run jobs on macOS larger runners, update the runs-on
key in your workflow YAML files to use one of the GitHub-defined labels for macOS runners. For more information, see Available macOS larger runners.
Available macOS larger runners
Use the labels in the table below to run your workflows on the corresponding macOS larger runner.
Runner Size | Architecture | Processor (CPU) | Memory (RAM) | Storage (SSD) | Workflow label |
---|---|---|---|---|---|
Large | Intel | 12 | 30 GB | 14 GB | macos-latest-large , macos-13-large , macos-14-large [latest], macos-15-large [Public preview] |
XLarge | arm64 (M1) | 6 (+ 8 GPU hardware acceleration) | 14 GB | 14 GB | macos-latest-xlarge , macos-13-xlarge , macos-14-xlarge [latest], macos-15-xlarge [Public preview] |
Note
For macOS larger runners, the -latest
runner label uses the macOS 12 runner image. For macOS Xlarge, the -latest
runner label uses the macOS 13 runner image
Viewing available runners for a repository
If you have repo: write
access to a repository, you can view a list of the runners available to the repository.
-
On GitHub, navigate to the main page of the repository.
-
Under your repository name, click Actions.
-
In the left sidebar, under the "Management" section, click Runners.
-
Review the list of available runners for the repository.
-
Optionally, to copy a runner's label to use it in a workflow, click to the right of the runner, then click Copy label.
Note
Enterprise and organization owners can create runners from this page. To create a new runner, click New runner at the top right of the list of runners to add runners to the repository.
For more information, see Managing larger runners and Adding self-hosted runners.
Targeting macOS larger runners in a workflow
To run your workflows on macOS larger runners, set the value of the runs-on
key to a label associated with a macOS larger runner. For a list of macOS larger runner labels, see Available macOS larger runners.
In this example, the workflow uses a label that is associated with macOS XL runners. The runs-on
key sends the job to any available runner with a matching label:
name: learn-github-actions-testing
on: [push]
jobs:
build:
runs-on: macos-13-xlarge
steps:
- uses: actions/checkout@v4
- name: Build
run: swift build
- name: Run tests
run: swift test
Troubleshooting larger runners
Because macOS arm64 does not support Node 12, macOS larger runners automatically use Node 16 to execute any JavaScript action written for Node 12. Some community actions may not be compatible with Node 16. If you use an action that requires a different Node version, you may need to manually install a specific version at runtime.
Note
ARM-powered runners are currently in public preview and are subject to change.