Skip to main content

Configuring larger runners for default setup

You can run code scanning default setup more quickly on bigger codebases using larger runners.

Who can use this feature?

Larger runners are only available for organizations and enterprises using the GitHub Team or GitHub Enterprise Cloud plans.

Code scanning is available for all public repositories on Code scanning is also available for private repositories owned by organizations that use GitHub Enterprise Cloud and have a license for GitHub Advanced Security. For more information, see "About GitHub Advanced Security."

Note: Support for larger runners for code scanning default setup is currently in beta and subject to change.

About larger runners for default setup

Customers on GitHub Team and GitHub Enterprise Cloud plans can choose from a range of managed virtual machines that have more resources than the standard GitHub-hosted runners. These machines are referred to as "larger runner." They offer the following advanced features:

  • More RAM, CPU, and disk space
  • Static IP addresses
  • Azure private networking
  • The ability to group runners
  • Autoscaling to support concurrent workflows
  • GPU-powered and ARM-powered runners

These larger runners are hosted by GitHub and have the runner application and other tools preinstalled. For more information about larger runners, see "About larger runners."

Consider configuring larger runners for default setup if:

  • Your scans with standard GitHub-hosted runners are taking too long.
  • Your scans with standard GitHub-hosted runners are returning memory or disk errors.
  • You want to customize aspects of your code scanning runner like the runner size, runner image, and job concurrency without using self-hosted runners.

Warning: Currently, Swift analysis is not available on larger runners for default setup. Additionally, if your repository has access to a runner with the code-scanning label, such as a larger runner provisioned for default setup, default setup workflows will only use runners labeled code-scanning. If you would like to configure default setup on larger runners and analyze Swift, you have two options:

  • Provision a self-hosted macOS runner with the code-scanning label in addition to your larger runner. For more information, see "Adding self-hosted runners."
  • Ensure any repositories containing Swift do not have access to runners with the label code-scanning. Default setup workflows for that repository will only use standard runners.

Provisioning organization-level larger runners for default setup

  1. Add a larger runner to your organization. For more information, see "Managing larger runners."
    • To add the code-scanning label to your larger runner, name the runner code-scanning. An organization can only have one larger runner with the code-scanning label, and that runner will handle all code scanning jobs from repositories within your organization with access to the runner's group.
  2. By default, all repositories in your organization have access to organization-level runners, meaning every repository can use your larger runner. For information on granting only select repositories access to a larger runner, see "Managing larger runners."
  3. You can now configure default setup for your organization and repositories, and your larger runner will automatically pick up code scanning jobs. For more information on configuring default setup, see "Configuring default setup for code scanning" and "Configuring default setup for code scanning at scale."