1
0
mirror of synced 2026-01-10 09:02:35 -05:00

Merge pull request #28749 from github/repo-sync

Repo sync
This commit is contained in:
docs-bot
2023-10-02 08:30:43 -07:00
committed by GitHub
11 changed files with 293 additions and 94 deletions

View File

@@ -47,7 +47,7 @@ There are some limits on {% data variables.product.prodname_actions %} usage whe
- **Job execution time** - Each job in a workflow can run for up to 6 hours of execution time. If a job reaches this limit, the job is terminated and fails to complete.
{% data reusables.actions.usage-workflow-run-time %}
{% data reusables.actions.usage-api-requests %}
- **Concurrent jobs** - The number of concurrent jobs you can run in your account depends on your GitHub plan, as well as the type of runner used. If exceeded, any additional jobs are queued.
- **Concurrent jobs** - The number of concurrent jobs you can run in your account depends on your {% data variables.product.prodname_dotcom %} plan, as well as the type of runner used. If exceeded, any additional jobs are queued.
**Standard {% data variables.product.prodname_dotcom %}-hosted runners**
@@ -62,7 +62,7 @@ There are some limits on {% data variables.product.prodname_actions %} usage whe
| GitHub plan | Total concurrent jobs | Maximum concurrent macOS jobs |
|---|---|---|
| All | 1000 | Not applicable |
| All | 500 | The limit is based on your {% data variables.product.prodname_dotcom %} plan. |
{% note %}

View File

@@ -110,32 +110,11 @@ While the job runs, the logs and output can be viewed in the {% data variables.p
{% note %}
**Note**: {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations, with autoscaling enabled by default and optional dedicated IP addresses. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/using-larger-runners#machine-specs-for-larger-runners)."
**Note**: {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations for Linux, Windows, and macOS virtual machines. Autoscaling is enabled by default and optional dedicated IP addresses are available for Linux and Windows. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/using-larger-runners#machine-specs-for-larger-runners)."
{% endnote %}
{% endif %}
Hardware specification for Windows and Linux virtual machines:
- 2-core CPU (x86_64)
- 7 GB of RAM
- 14 GB of SSD space
Hardware specification for macOS virtual machines:
- 3-core CPU (x86_64)
- 14 GB of RAM
- 14 GB of SSD space
Hardware specification for macOS XL virtual machines:
- 12-core CPU (x86_64)
- 30 GB of RAM
- 14 GB of SSD space
{% note %}
**Note:** macOS XL runners are considered {% data variables.actions.hosted_runner %}s and are billed in the same way. This means macOS XL runners are not eligible for the use of included minutes on private repositories. For both private and public repositories, when macOS XL runners are in use, they will always be billed at the per-minute rate. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/about-larger-runners#understanding-billing)."
{% endnote %}
{% data reusables.actions.supported-github-runners %}
Workflow logs list the runner used to run a job. For more information, see "[AUTOTITLE](/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history)."
@@ -188,9 +167,7 @@ You can install additional software on {% data variables.product.prodname_dotcom
## Cloud hosts used by {% data variables.product.prodname_dotcom %}-hosted runners
{% data variables.product.prodname_dotcom %} hosts Linux and Windows runners on `Standard_DS2_v2` virtual machines in Microsoft Azure with the {% data variables.product.prodname_actions %} runner application installed. The {% data variables.product.prodname_dotcom %}-hosted runner application is a fork of the Azure Pipelines Agent. Inbound ICMP packets are blocked for all Azure virtual machines, so ping or traceroute commands might not work. For more information about the `Standard_DS2_v2` resources, see "[Dv2 and DSv2-series](https://docs.microsoft.com/azure/virtual-machines/dv2-dsv2-series#dsv2-series)" in the Microsoft Azure documentation.
{% data variables.product.prodname_dotcom %} hosts macOS runners in {% data variables.product.prodname_dotcom %}'s own macOS Cloud.
{% data variables.product.prodname_dotcom %} hosts Linux and Windows runners on `Standard_DS2_v2` virtual machines in Microsoft Azure with the {% data variables.product.prodname_actions %} runner application installed. The {% data variables.product.prodname_dotcom %}-hosted runner application is a fork of the Azure Pipelines Agent. Inbound ICMP packets are blocked for all Azure virtual machines, so ping or traceroute commands might not work. For more information about the `Standard_DS2_v2` resources, see "[Dv2 and DSv2-series](https://docs.microsoft.com/azure/virtual-machines/dv2-dsv2-series#dsv2-series)" in the Microsoft Azure documentation. {% data variables.product.prodname_dotcom %} hosts macOS runners in Azure data centers.
## Workflow continuity

View File

@@ -13,7 +13,53 @@ redirect_from:
{% data reusables.actions.about-larger-runners %}
When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define.
{% data variables.product.prodname_dotcom %} offers {% data variables.actions.hosted_runner %}s with macOS, Ubuntu, or Windows operating systems, and different features are available depending on which operating system you use. For more information, see "[Additional features for {% data variables.actions.hosted_runner %}s](#additional-features-for-larger-runners)."
### About Ubuntu and Windows {% data variables.actions.hosted_runner %}s
{% data variables.actions.hosted_runner_caps %}s with Ubuntu or Windows operating systems are configured in your organization or enterprise. When you add a {% data variables.actions.hosted_runner %}, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners)."
Ubuntu and Windows {% data variables.actions.hosted_runner %}s offer autoscaling capabilities and the ability to assign the runners static IP addresses from a specific range. They can also be managed using runner groups, which enables you to control access to the {% data variables.actions.hosted_runner %}s. For more information, see "[Additional features for {% data variables.actions.hosted_runner %}s](#additional-features-for-larger-runners)."
### About macOS {% data variables.actions.hosted_runner %}s
{% data variables.actions.hosted_runner_caps %}s with a macOS operating system are used by updating the YAML workflow label to the desired runner image. To run your workflows on a macOS {% data variables.actions.hosted_runner %}, update the `runs-on` key to use one of the {% data variables.product.company_short %}-defined macOS {% data variables.actions.hosted_runner %} labels. No additional configuration is required. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/running-jobs-on-larger-runners?platform=mac)."
The following machines sizes are available for macOS {% data variables.actions.hosted_runner %}s.
| Runner Size | Architecture| Processor (CPU)| Memory (RAM) | Storage (SSD) | YAML workflow label |
| --------------| --------------| -------------- | ------------- | ------------- | --------------------- |
| Large | Intel| 12 | 30 GB | 14 GB | <code>macos-latest-large</code>, <code>macos-12-large </code>, <code>macos-13-large</code>[Beta] |
| XLarge| arm64 (M1)|6 CPU and 8 GPU| 14 GB | 14 GB | <code>macos-latest-xlarge</code>[Beta], <code>macos-13-xlarge</code>[Beta] |
#### Limitations for macOS {% data variables.actions.hosted_runner %}s
- All actions provided by GitHub are compatible with arm64 Github-hosted runners. However, community actions may not be compatible with arm64 and need to be manually installed at runtime. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/running-jobs-on-larger-runners?platform=mac#troubleshooting-larger-runners)."
- Due to a limitation of Apple's Virtualization Framework, which our hypervisor uses, nested-virtualization is not supported by arm64 runners.
### Additional features for {% data variables.actions.hosted_runner %}s
Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners, {% data variables.actions.hosted_runner %}s have additional features, and their availability varies depending on the {% data variables.actions.hosted_runner %}'s operating system.
{% rowheaders %}
| Operating system | Ubuntu | Windows | macOS |
| -------------------------------------------- | ------ | ------- | ----- |
| Hardware acceleration for Android SDK tools | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} |
| Static IP addresses | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} |
| Autoscaling | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} |
| Runner groups | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} |
{% endrowheaders %}
These features can enhance your CI/CD pipelines in the following ways.
- Hardware acceleration for the Android SDK tools makes running Android tests much faster and consumes fewer minutes. For more information on Android hardware acceleration, see [Configure hardware acceleration for the Android Emulator](https://developer.android.com/studio/run/emulator-acceleration) in the Android Developers documentation.
- Assigning {% data variables.actions.hosted_runner %}s static IP addresses from a specific range enables you to use this range to configure a firewall allowlist. For more information, see "[Networking for {% data variables.actions.hosted_runner %}s](#networking-for-larger-runners)."
- Autoscaling enables {% data variables.actions.hosted_runner %}s to scale up to a maximum limit set by you, so your workflows can run concurrently. For more information, see "[Autoscaling {% data variables.actions.hosted_runner %}s](#autoscaling-larger-runners)."
- Runner groups allow you to control access to {% data variables.actions.hosted_runner %}s for your organizations, repositories, and workflows. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)."
For a full list of included tools for each runner operating system, see the [{% data variables.product.prodname_actions %} Runner Images](https://github.com/actions/runner-images) repository.
### Understanding billing
@@ -29,35 +75,32 @@ Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners
| Processor (CPU)| Memory (RAM) | Storage (SSD) | Operating system (OS) |
| -------------- | ------------- | ------------- | --------------------- |
| 6 | 14 GB | 14 GB | macOS |
| 12 | 30 GB | 14 GB | macOS |
| 4 | 16 GB | 150 GB | Ubuntu |
| 8 | 32 GB | 300 GB | Ubuntu, Windows |
| 16 | 64 GB | 600 GB | Ubuntu, Windows |
| 32 | 128 GB | 1200 GB | Ubuntu, Windows |
| 64 | 256 GB | 2040 GB | Ubuntu, Windows |
## About runner groups
{% note %}
**Note**: macOS runners are also available in larger sizes and are billed the same way as {% data variables.actions.hosted_runner %}s. For information on how to access macOS runners, see "[AUTOTITLE](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources)."
**Note:** Only {% data variables.actions.hosted_runner %}s with Linux or Windows operating systems can be assigned to runner groups.
{% endnote %}
### Additional features for {% data variables.actions.hosted_runner %}s
Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners, {% data variables.actions.hosted_runner %}s have the following additional features:
- For Ubuntu runners, hardware acceleration for the Android SDK tools is enabled. This makes running Android tests much faster and consumes fewer minutes. For more information on Android hardware acceleration, see [Configure hardware acceleration for the Android Emulator](https://developer.android.com/studio/run/emulator-acceleration) in the Android Developers documentation.
- {% data variables.actions.hosted_runner_caps %}s can be assigned static IP addresses from specific ranges, which enables you to use the ranges to configure a firewall allowlist. For more information, see "[Networking for {% data variables.actions.hosted_runner %}s](#networking-for-larger-runners)."
- {% data variables.actions.hosted_runner_caps %}s can automatically scale up to a maximum limit set by you, so your workflows can run concurrently. For more information, see "[Autoscaling {% data variables.actions.hosted_runner %}s](#autoscaling-larger-runners)."
- Runner groups allow you to control access to {% data variables.actions.hosted_runner %}s for your organizations, repositories, and workflows. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)."
For a full list of included tools for each runner operating system, see the [{% data variables.product.prodname_actions %} Runner Images](https://github.com/actions/runner-images) repository.
## About runner groups
Runner groups enable administrators to control access to runners at the organization and enterprise levels. With runner groups, you can collect sets of runners and create a security boundary around them. You can then decide which organizations or repositories are permitted to run jobs on those sets of machines. During the {% data variables.actions.hosted_runner %} deployment process, the runner can be added to an existing group, otherwise it will join a default group. You can create a group by following the steps in "[AUTOTITLE](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)."
## Architectural overview of {% data variables.actions.hosted_runner %}s
{% note %}
**Note:** This architecture diagram only applies to {% data variables.actions.hosted_runner %}s with Linux or Windows operating systems.
{% endnote %}
{% data variables.actions.hosted_runner_caps %}s are managed at the organization level, where they are arranged into groups that can contain multiple instances of the runner. They can also be created at the enterprise level and shared with organizations in the hierarchy. Once you've created a group, you can then add a runner to the group and update your workflows to target either the group name or the label assigned to the {% data variables.actions.hosted_runner %}. You can also control which repositories are permitted to send jobs to the group for processing. For more information about groups, see "[AUTOTITLE](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)."
In the following diagram, a class of hosted runner named `ubuntu-20.04-16core` has been defined with customized hardware and operating system configuration.
@@ -72,13 +115,25 @@ In the following diagram, a class of hosted runner named `ubuntu-20.04-16core` h
## Autoscaling {% data variables.actions.hosted_runner %}s
{% note %}
**Note:** Autoscaling is only available for {% data variables.actions.hosted_runner %}s with Linux or Windows operating systems.
{% endnote %}
{% data variables.actions.hosted_runner_caps %}s can automatically scale to suit your needs. You can provision machines to run a specified maximum number of jobs when jobs are submitted for processing. Each machine only handles one job at a time, so these settings effectively determine the number of jobs that can be run concurrently.
You can configure the maximum job concurrency, which allows you to control your costs by setting the maximum parallel number of jobs that can be run using this set. A higher value here can help avoid workflows being blocked due to parallelism. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#configuring-autoscaling-for-larger-runners)."
## Networking for {% data variables.actions.hosted_runner %}s
By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive static IP addresses from {% data variables.product.prodname_dotcom %}'s IP address pool. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses)."
{% note %}
**Note:** Assigning static IP addresses to runners is only available for {% data variables.actions.hosted_runner %}s with Linux or Windows operating systems.
{% endnote %}
By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. For more information, see "[AUTOTITLE](/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses)."
When enabled, instances of the {% data variables.actions.hosted_runner %} will receive IP addresses from specific ranges that are unique to the runner, allowing you to use the ranges to configure a firewall allowlist. {% ifversion fpt %}You can use up to 10 {% data variables.actions.hosted_runner %}s with static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s{% endif %}{% ifversion ghec %}You can use up to 10 {% data variables.actions.hosted_runner %}s with static IP address ranges for the {% data variables.actions.hosted_runner %}s created at the enterprise level. In addition, you can use up to 10 {% data variables.actions.hosted_runner %}s with static IP address ranges for the {% data variables.actions.hosted_runner %}s created at the organization level, for each organization in your enterprise{% endif %}. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#networking-for-larger-runners)."

View File

@@ -12,6 +12,8 @@ redirect_from:
{% data reusables.actions.enterprise-github-hosted-runners %}
{% data reusables.actions.windows-linux-larger-runners-note %}
## About runner groups
{% data reusables.actions.about-runner-groups %}

View File

@@ -9,6 +9,8 @@ redirect_from:
- /actions/using-github-hosted-runners/managing-larger-runners
---
{% data reusables.actions.windows-linux-larger-runners-note %}
{% ifversion ghec %}
## Adding a {% data variables.actions.hosted_runner %} to an enterprise

View File

@@ -3,6 +3,7 @@ title: Running jobs on larger runners
shortTitle: Run jobs on larger runners
intro: 'You can speed up your workflows by configuring them to run on {% data variables.actions.hosted_runner %}s.'
permissions: '{% data reusables.actions.larger-runner-permissions %}'
defaultPlatform: linux
versions:
feature: actions-hosted-runners
redirect_from:
@@ -11,15 +12,41 @@ redirect_from:
## Running jobs on your runner
Once your runner type has been defined, you can update your workflow YAML files to send jobs to your newly created runner instances for processing. You can use runner groups or labels to define where your jobs run.
{% linux %}
{% data reusables.actions.run-jobs-larger-runners %}
{% endlinux %}
{% windows %}
{% data reusables.actions.run-jobs-larger-runners %}
{% endwindows %}
{% mac %}
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 {% data variables.actions.hosted_runner %}s, update the `runs-on` key in your workflow YAML files to use one of the {% data variables.product.company_short %}-defined labels for macOS runners. For more information, see "[Available macOS {% data variables.actions.hosted_runner %}s](#available-macos-larger-runners)."
{% endmac %}
{% mac %}
## Available macOS {% data variables.actions.hosted_runner %}s
Use the labels in the table below to run your workflows on the corresponding macOS {% data variables.actions.hosted_runner %}.
| Runner Size | Architecture| Processor (CPU)| Memory (RAM) | Storage (SSD) | OS (YAML workflow label) |
| --------------| --------------| -------------- | ------------- | ------------- | --------------------- |
| Large | Intel| 12 | 30 GB | 14 GB | <code>macos-latest-large</code>, <code>macos-12-large </code>, <code>macos-13-large</code>[Beta] |
| XLarge| arm64 (M1)|6 CPU and 8 GPU| 14 GB | 14 GB | <code>macos-latest-xlarge</code>[Beta], <code>macos-13-xlarge</code>[Beta] |
{% note %}
**Note:** When you add a {% data variables.actions.hosted_runner %}, it is automatically assigned default labels that correspond to the runner name and its operating system. You cannot add custom labels to {% data variables.actions.hosted_runner %}s, but you can use the default labels or the runner's group to send jobs to specific types of runners.
**Note:** For macOS {% data variables.actions.hosted_runner %}s, the `-latest` runner label uses the macOS 12 runner image. For macOS Xlarge, the `-latest` runner label uses the macOS 13 runner image
{% endnote %}
Only owner or administrator accounts can see the runner settings. Non-administrative users can contact the organization owner to find out which runners are enabled. Your organization owner can create new runners and runner groups, as well as configure permissions to specify which repositories can access a runner group. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#allowing-repositories-to-access-a-runner-group)."
{% endmac %}
{% ifversion repository-actions-runners %}
@@ -43,10 +70,24 @@ Only owner or administrator accounts can see the runner settings. Non-administra
{% endif %}
{% linux %}
## Using groups to control where jobs are run
{% data reusables.actions.jobs.example-runs-on-groups %}
{% endlinux %}
{% windows %}
## Using groups to control where jobs are run
{% data reusables.actions.jobs.example-runs-on-groups %}
{% endwindows %}
{% linux %}
## Using labels to control where jobs are run
In this example, a runner group is populated with Ubuntu 16-core runners, which have also been assigned the label `ubuntu-20.04-16core`. The `runs-on` key sends the job to any available runner with a matching label:
@@ -67,18 +108,109 @@ jobs:
- run: bats -v
```
{% endlinux %}
{% windows %}
## Using labels to control where jobs are run
In this example, a runner group is populated with Windows 16-core runners, which have also been assigned the label `windows-2022-16core`. The `runs-on` key sends the job to any available runner with a matching label:
```yaml
name: learn-github-actions
on: [push]
jobs:
check-bats-version:
runs-on:
labels: windows-2022-16core
steps:
- uses: {% data reusables.actions.action-checkout %}
- uses: {% data reusables.actions.action-setup-node %}
with:
node-version: '14'
- run: npm install -g bats
- run: bats -v
```
{% endwindows %}
{% mac %}
## Targeting macOS {% data variables.actions.hosted_runner %}s in a workflow
To run your workflows on macOS {% data variables.actions.hosted_runner %}s, set the value of the `runs-on` key to a label associated with a macOS {% data variables.actions.hosted_runner %}. For a list of macOS {% data variables.actions.hosted_runner %} labels, see "[Available macOS {% data variables.actions.hosted_runner %}s](#available-macos-larger-runners)."
In this example, the workflow uses a label that is associated with macOS XL runners, which is `macos-latest-xl -arm64`. The `runs-on` key sends the job to any available runner with a matching label:
```yaml
name: learn-github-actions
on: [push]
jobs:
check-bats-version:
runs-on:
labels: macos-latest-xlarge -arm64
steps:
- uses: {% data reusables.actions.action-checkout %}
- uses: {% data reusables.actions.action-setup-node %}
with:
node-version: '16'
- run: npm install -g bats
- run: bats -v
```
{% endmac %}
{% linux %}
## Using labels and groups to control where jobs are run
{% data reusables.actions.jobs.example-runs-on-labels-and-groups %}
{% data reusables.actions.section-using-unique-names-for-runner-groups %}
{% endlinux %}
{% windows %}
## Using labels and groups to control where jobs are run
{% data reusables.actions.jobs.example-runs-on-labels-and-groups %}
{% data reusables.actions.section-using-unique-names-for-runner-groups %}
{% endwindows %}
## Troubleshooting {% data variables.actions.hosted_runner %}s
If you notice the jobs that target your {% data variables.actions.hosted_runner %}s are delayed or not running, there are several factors that may be causing this.
{% linux %}
- **Concurrency settings**: You may have reached your maximum concurrency limit. If you would like to enable more jobs to run in parallel, you can update your autoscaling settings to a larger number. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#configuring-autoscaling-for-larger-runners)."
- **Repository permissions**: Ensure you have the appropriate repository permissions enabled for your {% data variables.actions.hosted_runner %}s. By default, enterprise runners are not available at the repository level and must be manually enabled by an organization owner. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#allowing-repositories-to-access-larger-runners)."
- **Billing information**: You must have a valid credit card on file in order to use {% data variables.actions.hosted_runner %}s. After adding a credit card to your account, it can take up to 10 minutes to enable the use of your {% data variables.actions.hosted_runner %}s. For more information, see "[AUTOTITLE](/billing/managing-your-github-billing-settings/adding-or-editing-a-payment-method)."
- **Spending limit**: Your {% data variables.product.prodname_actions %} spending limit must be set to a value greater than zero. For more information, see "[AUTOTITLE](/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions)."
- **Fair use policy**: {% data variables.product.company_short %} has a fair use policy that begins to throttle jobs based on several factors, such as how many jobs you are running or how many jobs are running across the entirety of {% data variables.product.prodname_actions %}.
{% data reusables.actions.larger-runners-troubleshooting-linux-windows %}
{% endlinux %}
{% windows %}
{% data reusables.actions.larger-runners-troubleshooting-linux-windows %}
{% endwindows %}
{% mac %}
Because macOS arm64 does not support Node 12, macOS {% data variables.actions.hosted_runner %}s 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.
For example, the `setup-ruby` action must be modified before you can use it on macOS {% data variables.actions.hosted_runner %}s. The following example shows how to install a specific version of Ruby, if you replace `RUBY_VERSION` with the desired version of Ruby.
```yaml copy
- name: Setup Ruby
run: |
brew install ruby-build
ruby-build RUBY_VERSION /Users/runner/hostedtoolcache/Ruby/RUBY_VERSION/arm64
touch /Users/runner/hostedtoolcache/Ruby/RUBY_VERSION/arm64.complete
- name: Setup Ruby (with Bundler cache)
uses: ruby/setup-ruby@ec02537da5712d66d4d50a0f33b7eb52773b5ed1
with:
ruby-version: RUBY_VERSION
bundler-cache: true
```
{% endmac %}

View File

@@ -0,0 +1,7 @@
If you notice the jobs that target your {% data variables.actions.hosted_runner %}s are delayed or not running, there are several factors that may be causing this.
- **Concurrency settings**: You may have reached your maximum concurrency limit. If you would like to enable more jobs to run in parallel, you can update your autoscaling settings to a larger number. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#configuring-autoscaling-for-larger-runners)."
- **Repository permissions**: Ensure you have the appropriate repository permissions enabled for your {% data variables.actions.hosted_runner %}s. By default, enterprise runners are not available at the repository level and must be manually enabled by an organization administrator. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#allowing-repositories-to-access-larger-runners)."
- **Billing information**: You must have a valid credit card on file in order to use {% data variables.actions.hosted_runner %}s. After adding a credit card to your account, it can take up to 10 minutes to enable the use of your {% data variables.actions.hosted_runner %}s. For more information, see "[AUTOTITLE](/billing/managing-your-github-billing-settings/adding-or-editing-a-payment-method)."
- **Spending limit**: Your {% data variables.product.prodname_actions %} spending limit must be set to a value greater than zero. For more information, see "[AUTOTITLE](/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions)."
- **Fair use policy**: {% data variables.product.company_short %} has a fair use policy that begins to throttle jobs based on several factors, such as how many jobs you are running or how many jobs are running across the entirety of {% data variables.product.prodname_actions %}.

View File

@@ -0,0 +1,9 @@
Once your runner type has been defined, you can update your workflow YAML files to send jobs to your newly created runner instances for processing. You can use runner groups or labels to define where your jobs run.
{% note %}
**Note:** {% data variables.actions.hosted_runner_caps %}s are automatically assigned default labels that correspond to the runner name and its operating system. You cannot add custom labels to {% data variables.actions.hosted_runner %}s, but you can use the default labels or the runner's group to send jobs to specific types of runners.
{% endnote %}
Only owner or administrator accounts can see the runner settings. Non-administrative users can contact the organization owner to find out which runners are enabled. Your organization owner can create new runners and runner groups, as well as configure permissions to specify which repositories can access a runner group. For more information, see "[AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners#allowing-repositories-to-access-a-runner-group)."

View File

@@ -1,39 +1,30 @@
<table style="width:100%">
<thead>
<tr>
<th scope="col" style="width:35%"><b>Runner image</b></th>
<th scope="col" style="width:25%"><b>YAML workflow label</b></th>
<th scope="col" style="width:10%"><b>Virtual Machine</b></th>
<th scope="col" style="width:10%"><b>Processor (CPU)</b></th>
<th scope="col" style="width:10%"><b>Memory (RAM)</b></th>
<th scope="col" style="width:10%"><b>Storage (SSD)</b></th>
<th scope="col" style="width:20%"><b>OS (YAML workflow label)</b></th>
<th scope="col" style="width:40%"><b>Notes</b></th>
</tr>
</thead>
<tbody>
<tr>
<td>
Windows Server 2022
Linux
</td>
<td>
<code>windows-latest</code> or <code>windows-2022</code>
2
</td>
<td>
The <code>windows-latest</code> label currently uses the Windows Server 2022 runner image.
</td>
</tr>
<tr>
<td>
Windows Server 2019
7 GB
</td>
<td>
<code>windows-2019</code>
</td>
<td>None
</td>
</tr>
<tr>
<td>
Ubuntu 22.04
14 GB
</td>
<td>
<code>ubuntu-latest</code> or <code>ubuntu-22.04</code>
<code>ubuntu-latest</code>, <code>ubuntu-22.04</code>, <code>ubuntu-20.04</code>
</td>
<td>
The <code>ubuntu-latest</code> label currently uses the Ubuntu 22.04 runner image.
@@ -41,43 +32,61 @@ The <code>ubuntu-latest</code> label currently uses the Ubuntu 22.04 runner imag
</tr>
<tr>
<td>
Ubuntu 20.04
Windows
</td>
<td>
<code>ubuntu-20.04</code>
2
</td>
<td>None
</rd>
</tr>
<tr>
<td>
macOS 13 Ventura [Beta]
<td>7 GB
</td>
<td>
<code>macos-13</code> or <code>macos-13-xl</code>
14 GB
</td>
<td>
None
</td>
<tr>
<td>
macOS 12 Monterey
<code>windows-latest</code>, <code>windows-2022</code>, <code>windows-2019</code>
</td>
<td>
<code>macos-latest</code>, <code>macos-12</code>, <code>macos-latest-xl</code> or <code>macos-12-xl</code>
</td>
<td>
The <code>macos-latest</code> and <code>macos-latest-xl</code> workflow labels currently uses the macOS 12 runner image.
The <code>windows-latest</code> label currently uses the Windows 2022 runner image.
</td>
</tr>
<tr>
<td>
macOS 11 Big Sur
macOS
</td>
<td>
<code>macos-11</code>
3
</td>
<td>None
<td>
14 GB
</td>
<td>
14 GB
</td>
<td>
<code>macos-latest</code>, <code>macos-12</code>, <code>macos-11</code>
</td>
<td>
The <code>macos-latest</code> workflow label currently uses the macOS 12 runner image.
</td>
</tr>
<tr>
<td>
macOS
</td>
<td>
4
</td>
<td>
14 GB
</td>
<td>
14 GB
</td>
<td>
<code>macos-13</code> [Beta]
</td>
<td>
N/A
</td>
</tr>
</tbody>

View File

@@ -0,0 +1,5 @@
{% note %}
**Note:** The information and instructions in this article only apply to {% data variables.actions.hosted_runner %}s with Linux and Windows operating systems.
{% endnote %}

View File

@@ -11,5 +11,6 @@
| Windows | 16 | $0.128 |
| Windows | 32 | $0.256 |
| Windows | 64 | $0.512 |
| macOS | 3 | $0.08 |
| macOS | 12 | $0.32 |
| macOS | 3 or 4 | $0.08 |
| macOS | 12 | $0.12 |
| macOS | 6 (M1) | $0.16 |