Skip to main content

Getting started with GitHub Actions for GitHub Enterprise Server

Learn about enabling and configuring GitHub Actions on GitHub Enterprise Server for the first time.

Who can use this feature

Site administrators can enable GitHub Actions and configure enterprise settings.

注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。

About GitHub Actions on GitHub Enterprise Server

This article explains how site administrators can configure GitHub Enterprise Server to use GitHub Actions.

GitHub Actions は GitHub Enterprise Server に対し、既定では有効になっていません。 You'll need to determine whether your instance has adequate CPU and memory resources to handle the load from GitHub Actions without causing performance loss, and possibly increase those resources. You'll also need to decide which storage provider you'll use for the blob storage required to store artifacts and caches generated by workflow runs. Then, you'll enable GitHub Actions for your enterprise, manage access permissions, and add self-hosted runners to run workflows.

開始する前に、GitHub Actions をエンタープライズに導入する方法を計画する必要があります。 詳細については、「GitHub Actions をエンタープライズに導入する」を参照してください。

Enterprise を別のプロバイダーから GitHub Actions に移行する場合は、追加の考慮事項があります。 詳細については、「Enterprise を GitHub Actions に移行する」を参照してください。

Review hardware requirements

The CPU and memory resources available to your GitHub Enterprise Server instance determine the number of runners that can be configured without performance loss. GitHub では、GitHub Actions を実行するために、少なくとも 8 つの vCPU と 64 GB のメモリを推奨しています。

The peak quantity of connected runners without performance loss depends on such factors as job duration, artifact usage, number of repositories running Actions, and how much other work your instance is doing not related to Actions. Internal testing at GitHub demonstrated the following performance targets for GitHub Enterprise Server on a range of CPU and memory configurations:

vCPUsMemoryMaximum Connected Runners
864 GB740 runners
32160 GB2700 runners
96384 GB7000 runners
128512 GB7000 runners

GitHub measured maximum connected runners using multiple repositories, job duration of approximately 10 minutes, and 10 MB artifact uploads. You may experience different performance depending on the overall levels of activity on your instance.

Notes:

  • Beginning with GitHub Enterprise Server 3.6, GitHub documents connected runners as opposed to concurrent jobs. Connected runners represents the most runners you can connect and expect to utilize. It should also be noted that connecting more runners than you can expect to utilize can negatively impact performance.

  • Beginning with GitHub Enterprise Server 3.5, GitHub's internal testing uses 3rd generation CPUs to better reflect a typical customer configuration. This change in CPU represents a small portion of the changes to performance targets in this version of GitHub Enterprise Server.

If you plan to enable GitHub Actions for the users of an existing instance, review the levels of activity for users and automations on the instance and ensure that you have provisioned adequate CPU and memory for your users. For more information about monitoring the capacity and performance of GitHub Enterprise Server, see "Monitoring your appliance."

For more information about minimum hardware requirements for your GitHub Enterprise Server instance, see the hardware considerations for your instance's platform.

既存のインスタンスのリソースの調整の詳細については、「ストレージ容量の増加」および「CPU またはメモリ リソースの増加」を参照してください。

Optionally, you can limit resource consumption on your GitHub Enterprise Server instance by configuring a rate limit for GitHub Actions. For more information, see "Configuring rate limits."

External storage requirements

To enable GitHub Actions on GitHub Enterprise Server, you must have access to external blob storage.

GitHub Actions uses blob storage to store data generated by workflow runs, such as workflow logs, caches, and user-uploaded build artifacts. The amount of storage required depends on your usage of GitHub Actions. Only a single external storage configuration is supported, and you can't use multiple storage providers at the same time.

GitHub Actions supports these storage providers:

  • Azure Blob storage
  • Amazon S3
  • S3-compatible MinIO cluster

Note: These are the only storage providers that GitHub supports and can provide assistance with.

GitHub パートナーが GitHub Enterprise Server 上で GitHub Actions を操作していると自己検証している S3 API 互換ストレージ製品は他にもあります。 詳細については、GHES ストレージ パートナー リポジトリを参照してください。

GitHub テクノロジ パートナーシップ プログラムを通じて検証されたストレージ製品の場合、ストレージ プロバイダーは、GitHub Actions でストレージ製品を使用するためのサポートとドキュメントを担当します。

Networking considerations

エンタープライズ用に GitHub Actions が有効になっている場合、HTTP プロキシのみがサポートされます。 SOCKS5 プロキシと HTTPS プロキシはサポートされていません。 For more information about using a proxy with GitHub Enterprise Server, see "Configuring an outbound web proxy server."

Enabling GitHub Actions with your storage provider

Follow one of the procedures below to enable GitHub Actions with your chosen storage provider:

Managing access permissions for GitHub Actions in your enterprise

You can use policies to manage access to GitHub Actions. For more information, see "Enforcing GitHub Actions policies for your enterprise."

Adding self-hosted runners

注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。

To run GitHub Actions workflows, you need to add self-hosted runners. You can add self-hosted runners at the enterprise, organization, or repository levels. For more information, see "Adding self-hosted runners."

Managing which actions can be used in your enterprise

You can control which actions your users are allowed to use in your enterprise. This includes setting up GitHub Connect for automatic access to actions from GitHub.com, or manually syncing actions from GitHub.com.

For more information, see "About using actions in your enterprise."

GitHub Actions の一般的なセキュリティ強化

GitHub Actions のセキュリティ プラクティスの詳細については、「GitHub Actions のセキュリティ強化」を参照してください。

Reserved names

When you enable GitHub Actions for your enterprise, two organizations are created: github and actions. If your enterprise already uses the github organization name, github-org (or github-github-org if github-org is also in use) will be used instead. If your enterprise already uses the actions organization name, github-actions (or github-actions-org if github-actions is also in use) will be used instead. Once actions is enabled, you won't be able to use these names anymore.