Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 8 additions & 27 deletions content/actions/concepts/runners/about-self-hosted-runners.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
title: About self-hosted runners
shortTitle: Self-hosted runners
intro: 'You can host your own runners and customize the environment used to run jobs in your {% data variables.product.prodname_actions %} workflows.'
redirect_from:
- /github/automating-your-workflow-with-github-actions/about-self-hosted-runners
Expand All @@ -13,14 +14,12 @@ versions:
type: overview
---

## About self-hosted runners

A self-hosted runner is a system that you deploy and manage to execute jobs from {% data variables.product.prodname_actions %} on {% data variables.product.github %}.

Self-hosted runners:

{% ifversion fpt or ghec %}
* Give you more control of hardware, operating system, and software tools than {% data variables.product.prodname_dotcom %}-hosted runners provide.{% endif %}
* Give you more control of hardware, operating system, and software tools than {% data variables.product.prodname_dotcom %}-hosted runners provide. Be aware that you are responsible for updating the operating system and all other software.{% endif %}
* Are free to use with {% data variables.product.prodname_actions %}, but you are responsible for the cost of maintaining your runner machines.
* Let you create custom hardware configurations that meet your needs with processing power or memory to run larger jobs, install software available on your local network.
* Receive automatic updates for the self-hosted runner application only, though you may disable automatic updates of the runner.
Expand All @@ -31,30 +30,12 @@ Self-hosted runners:

You can use self-hosted runners anywhere in the management hierarchy. Repository-level runners are dedicated to a single repository, while organization-level runners can process jobs for multiple repositories in an organization. Organization owners can choose which repositories are allowed to create repository-level self-hosted runners. See [AUTOTITLE](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#limiting-the-use-of-self-hosted-runners). Finally, enterprise-level runners can be assigned to multiple organizations in an enterprise account.

### Requirements for self-hosted runner machines

You can use any machine as a self-hosted runner as long as it meets these requirements:

* You can install and run the self-hosted runner application on the machine.
* The machine can communicate with {% data variables.product.prodname_actions %}.
* The machine has enough hardware resources for the type of workflows you plan to run. The self-hosted runner application itself only requires minimal resources.
* If you want to run workflows that use Docker container actions or service containers, you must use a Linux machine and Docker must be installed.

{% ifversion ghes %}

## Supported actions on self-hosted runners

All `actions/setup-LANGUAGE` action repositories currently support three platforms: macOS, Windows, and Ubuntu.
Some extra configuration might be required to use actions from {% data variables.product.github %} with {% data variables.product.prodname_ghe_server %}, or to use the `actions/setup-LANGUAGE` actions with self-hosted runners that do not have internet access. For more information, see [AUTOTITLE](/admin/github-actions/managing-access-to-actions-from-githubcom) and contact your {% data variables.product.prodname_enterprise %} site administrator.
## Next steps

{% ifversion ghec or ghes %}
To get hands-on experience with the policies and usage of self-hosted runners, see [AUTOTITLE](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise)
{% else %}
To set up a self-hosted runner in your workspace, see [AUTOTITLE](/actions/how-tos/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners).
{% endif %}

## Further reading

* [AUTOTITLE](/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions)
* [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners)
* [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/using-self-hosted-runners-in-a-workflow)
* [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/autoscaling-with-self-hosted-runners){% ifversion ghec or ghes %}
* [AUTOTITLE](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise){% endif %}
* [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/supported-architectures-and-operating-systems-for-self-hosted-runners)
* [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/communicating-with-self-hosted-runners)
To find information about the requirements and supported software and hardware for self-hosted runners, see [AUTOTITLE](/actions/reference/self-hosted-runners-reference).
3 changes: 2 additions & 1 deletion content/actions/reference/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ children:
- /actions-limits
- /dockerfile-support-for-github-actions
- /github-hosted-runners-reference
- /supported-architectures-and-operating-systems-for-self-hosted-runners
- /self-hosted-runners-reference
- /usage-limits-for-self-hosted-runners
- /supplemental-arguments-and-settings
---

54 changes: 54 additions & 0 deletions content/actions/reference/self-hosted-runners-reference.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: Self-hosted runners reference
shortTitle: Self-hosted runners reference
intro: Find information about requirements and supported actions for self-hosted runners.
redirect_from:
- /actions/hosting-your-own-runners/managing-self-hosted-runners/supported-architectures-and-operating-systems-for-self-hosted-runners
- /actions/reference/supported-architectures-and-operating-systems-for-self-hosted-runners
versions:
fpt: '*'
ghes: '*'
ghec: '*'
type: overview
---

## Requirements for self-hosted runner machines

You can use a machine as a self-hosted runner as long as it meets these requirements:

* You can install and run the self-hosted runner application on the machine. See [Supported operating systems](#supported-operating-systems) and [Supported processor architectures](#supported-processor-architectures).
* The machine can communicate with {% data variables.product.prodname_actions %}.
* The machine has enough hardware resources for the type of workflows you plan to run. The self-hosted runner application itself only requires minimal resources.
* If you want to run workflows that use Docker container actions or service containers, you must use a Linux machine and Docker must be installed.

### Supported operating systems

#### Linux

* Red Hat Enterprise Linux 8 or later
* CentOS 8 or later
* Oracle Linux 8 or later
* Fedora 29 or later
* Debian 10 or later
* Ubuntu 20.04 or later
* Linux Mint 20 or later
* openSUSE 15.2 or later
* SUSE Enterprise Linux (SLES) 15 SP2 or later

#### Windows

* Windows 10 64-bit
* Windows 11 64-bit
* Windows Server 2016 64-bit
* Windows Server 2019 64-bit
* Windows Server 2022 64-bit

#### macOS

* macOS 11.0 (Big Sur) or later

### Supported processor architectures

* `x64` - Linux, macOS, Windows.
* `ARM64` - Linux, macOS{% ifversion actions-windows-arm %}, Windows (currently in {% data variables.release-phases.public_preview %}){% endif %}.
* `ARM32` - Linux.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,9 @@ You can view details about the automatic workflows run by viewing the **Actions*

## Accessing private registries with self-hosted runners

You can configure self-hosted runners to run automatic dependency submission jobs, instead of using the {% data variables.product.prodname_actions %} infrastructure. This is necessary to access private Maven registries.
You can configure self-hosted runners to run automatic dependency submission jobs, instead of using the {% data variables.product.prodname_actions %} infrastructure. This is necessary to access private Maven registries. The self-hosted runners must be running on Linux or macOS. For .NET and Python auto-submission, they must have access to the public internet in order to download the latest component-detection release.

1. Provision one or more self-hosted runners, at the repository or organization level. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners) and [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners). The self-hosted runners must be running on Linux or macOS, and must have Docker installed.
1. Provision one or more self-hosted runners, at the repository or organization level. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners) and [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners).
1. Assign a `dependency-submission` label to each runner you want automatic dependency submission to use. For more information, see [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/using-labels-with-self-hosted-runners#assigning-a-label-to-a-self-hosted-runner).
{% data reusables.repositories.navigate-to-code-security-and-analysis %}
1. Under "Dependency graph", click the dropdown menu next to “Automatic dependency submission”, then select **Enabled for labeled runners**.
Expand All @@ -85,6 +85,8 @@ Automatic dependency submission makes a best effort to cache package downloads b

{% data reusables.dependency-graph.deduplication %}

## Package ecosystem-specific information

### Maven projects

For Maven projects, automatic dependency submission runs an open source fork of the [Maven Dependency Tree Dependency Submission](https://github.com/marketplace/actions/maven-dependency-tree-dependency-submission). The fork allows {% data variables.product.github %} to stay in sync with the upstream repository plus maintain some changes that are only applicable to automatic submission. The fork's source is available at [advanced-security/maven-dependency-submission-action](https://github.com/advanced-security/maven-dependency-submission-action).
Expand All @@ -95,6 +97,14 @@ If your repository's dependencies seem inaccurate, check that the timestamp of t

For Gradle projects, automatic dependency submission runs a fork of the open source Gradle actions from [gradle/actions](https://github.com/gradle/actions). The fork is available at [actions/gradle-build-tools-actions](https://github.com/actions/gradle-build-tools-actions). You can view the results of the autosubmission action under your repository's **Actions** tab. Each run will be labeled "Automatic Dependency Submission (Gradle)" and its output will contain the JSON payload which the action submitted to the API.

### .NET projects

The .NET autosubmission action uses the open source [component-detection](https://github.com/microsoft/component-detection/) project as the engine for its dependency detection. It supports .NET 8.x, 9.x, and 10.x. .NET autosubmission runs if the repository's `dependabot.yml` defines `nuget` as a [`package-ecosystem`](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#package-ecosystem-) or when there is a supported manifest file in the root directory of the repository. Supported manifest files include `.sln`, `.csproj`, `packages.config`, `.vbproj`, `.vcxproj`, and `.fsproj`.

### Python projects

Python uses the open source [component-detection](https://github.com/microsoft/component-detection/) project as its underlying graph generation engine. The autosubmission action for Python will only run if there is a `requirements.txt` file in the root directory of the repository. Python autosubmission does not currently support private packages; packages referenced in `requirements.txt` which are not publicly available will cause the autosubmission action to fail.

## Further reading

* [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-supply-chain-security)
Expand Down
4 changes: 0 additions & 4 deletions content/copilot/get-started/github-copilot-features.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,6 @@ AI-generated text completion to help you write pull request descriptions quickly

{% data reusables.copilot.copilot-extensions.copilot-extensions-intro %} See [AUTOTITLE](/copilot/building-copilot-extensions/about-building-copilot-extensions).

### {% data variables.product.prodname_github_models %} ({% data variables.release-phases.public_preview %})

Bringing the power of industry leading large and small language models to users directly on {% data variables.product.github %}. See [AUTOTITLE](/github-models).

### {% data variables.copilot.copilot_edits_short %}

{% data variables.copilot.copilot_edits_short %} is available in {% data variables.product.prodname_vscode %}, {% data variables.product.prodname_vs %}, and JetBrains IDEs. {% data reusables.copilot.copilot-edits.about-copilot-edits %}
Expand Down
2 changes: 1 addition & 1 deletion content/copilot/get-started/what-is-github-copilot.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ redirect_from:
* Organize and share task-specific context with {% data variables.copilot.copilot_spaces %} to get more relevant answers
* Generate a description of the changes in a pull request
* Create and manage collections of documentation, called knowledge bases, to use as a context for chatting with {% data variables.product.prodname_copilot_short %} _({% data variables.copilot.copilot_enterprise_short %} only)_
* Work on code changes and create a pull request for you to review
* Work on code changes and create a pull request for you to review _({% data variables.copilot.copilot_pro_plus_short %}, {% data variables.copilot.copilot_business_short %}, and {% data variables.copilot.copilot_enterprise_short %} only)_

{% data variables.product.prodname_copilot_short %} is available:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,48 +25,17 @@ If your company employs security measures like a firewall or proxy server, you s

| Domain and/or URL | Purpose |
| :------------------------------------- | :--------------------------------- |
| `https://github.com/login/*` | Authentication, only required with Personal Users |
| `https://github.com/login?*` | Authentication, only required with Personal Users |
| `https://github.com/login/oauth/*` | Authentication, only required with {% data variables.product.prodname_emus %} |
| `https://api.github.com/user/*` | User Management |
| `https://github.com/favicon.ico` | Icon |
| `https://github.com/account/*` | Account |
| `https://github.com/settings/*` | Settings |
| `https://avatars.githubusercontent.com/*` | Avatars |
| `https://github.com/copilot/*` | Copilot |
| `https://raw.githubusercontent.com/*` | Raw Content |
| `https://github.githubassets.com/*` | GitHub Assets |
| `https://collector.github.com/*` | Collector |
| `https://github.com/github-copilot/*` | GitHub Copilot |
| `https://api.github.com/*` | API |
| `https://github.com/notifications/*` | Notifications |
| `https://github.com/session/*` | Session |
| `https://github.com/dashboard/*` | Dashboard |
| `https://github.com/dashboard?*` | Dashboard |
| `https://github.com/logout/*` | Logout |
| `https://github.com/logout?*` | Logout |
| `https://github.com/switch_account?*` | Switch Account |
| `https://github.com/switch_account/*` | Switch Account |

## {% data variables.product.prodname_copilot_short %} related URLs

| Domain and/or URL | Purpose |
| :------------------------------------- | :--------------------------------- |
| `https://github.com/login/*` | Authentication |
| `https://api.github.com/user` | User Management |
| `https://api.github.com/copilot_internal/*` | User Management |
| `https://copilot-telemetry.githubusercontent.com/telemetry/*` | Telemetry |
| `https://default.exp-tas.com/*` | Telemetry |
| `https://copilot-proxy.githubusercontent.com/*` | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://origin-tracker.githubusercontent.com/*` | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.githubcopilot.com/*`[^1] | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.individual.githubcopilot.com/*`[^2] | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.business.githubcopilot.com/*`[^3] | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.enterprise.githubcopilot.com/*`[^4] | API service for {% data variables.product.prodname_copilot_short %} suggestions |

If your organization is using Microsoft Entra ID, you also need to add the following URLs to the allowlist:
* `https://login.microsoftonline.com/*`
* `https://aadcdn.msauth.net/*`
* `https://login.live.com/*`
* `https://*.activedirectory.windowsazure.com/*`
| `https://copilot-telemetry.githubusercontent.com/telemetry` | Telemetry |
| `https://default.exp-tas.com` | Telemetry |
| `https://copilot-proxy.githubusercontent.com` | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://origin-tracker.githubusercontent.com` | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.githubcopilot.com`[^1] | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.individual.githubcopilot.com`[^2] | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.business.githubcopilot.com`[^3] | API service for {% data variables.product.prodname_copilot_short %} suggestions |
| `https://*.enterprise.githubcopilot.com`[^4] | API service for {% data variables.product.prodname_copilot_short %} suggestions |

Depending on the security policies and editors your organization uses, you may need to allowlist additional domains and URLs. For more information on specific editors, see [Further reading](#further-reading).

Expand Down
5 changes: 5 additions & 0 deletions content/github-models/about-github-models.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@ Use the Comparisons view to evaluate the outputs of multiple prompt configuratio

Use the Playground to quickly explore models and test prompt ideas in real time. The Playground is ideal for early experimentation, helping you understand a model’s behavior, capabilities, and response style. You can interactively select models, adjust parameters, and compare responses side by side.

## Billing

For more information about billing for {% data variables.product.prodname_github_models %}, see [AUTOTITLE](/billing/managing-billing-for-your-products/about-billing-for-github-models).

## Join the community

To ask questions and share feedback, see this [GitHub Models discussion post](https://github.com/orgs/community/discussions/159087).
Expand All @@ -62,3 +66,4 @@ To learn how others are using {% data variables.product.prodname_github_models %
* [AUTOTITLE](/github-models/use-github-models/prototyping-with-ai-models)
* [AUTOTITLE](/github-models/use-github-models/optimizing-your-ai-powered-app-with-github-models)
* [AUTOTITLE](/github-models/use-github-models/evaluating-ai-models)
* [AUTOTITLE](/billing/managing-billing-for-your-products/about-billing-for-github-models)
Loading
Loading