注意:GitHub Actions 对 Google Cloud Storage 的支持目前处于 beta 版,可能会更改。
关于 GitHub Actions
的外部存储
GitHub Actions 使用外部 blob 存储来存储工作流运行生成的数据。 存储的数据包括工作流日志缓存和用户上传的生成项目。有关详细信息,请参阅“GitHub Actions for GitHub Enterprise Server 使用入门”。
先决条件
在启用 GitHub Actions 之前,请确保您已完成以下步骤:
-
创建 Google Cloud Storage 存储桶,用于存储工作流运行生成的数据。
-
查看 GitHub Actions 的硬件要求。 有关详细信息,请参阅“GitHub Actions for GitHub Enterprise Server 使用入门”。
-
必须为 你的 GitHub Enterprise Server 实例 的域配置 TLS。 有关详细信息,请参阅“配置 TLS”。
注意: 我们强烈建议您在 GitHub Enterprise Server 上配置 TLS,并有信任的机构签名的证书。 虽然自签名证书可以工作,但自托管的运行器需要额外的配置,不推荐用于生产环境。
-
如果在 你的 GitHub Enterprise Server 实例 上配置了 HTTP 代理服务器:
-
必须将
.localhost
和127.0.0.1
添加到“HTTP 代理排除”列表。 -
如果外部存储位置不可路由,则还必须将外部存储 URL 添加到排除列表中。
有关更改代理设置的详细信息,请参阅“配置出站 Web 代理服务器”。
使用 HMAC 密钥通过 Google Cloud 存储
-
创建可访问存储桶的 Google Cloud 服务帐户,并为服务帐户创建基于哈希的消息身份验证码 (HMAC) 密钥。 有关详细信息,请参阅 Google Cloud 文档中的“管理服务帐户的 HMAC 密钥”。
服务帐户必须具有以下对存储桶的身份验证和访问控制管理 (IAM) 权限:
storage.objects.create
storage.objects.get
storage.objects.list
storage.objects.update
storage.objects.delete
storage.multipartUploads.create
storage.multipartUploads.abort
storage.multipartUploads.listParts
storage.multipartUploads.list
1. 在 GitHub Enterprise Server 上的管理帐户中,在任一页面的右上角,单击 。
-
如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。
-
在“ 站点管理”边栏中,单击“管理控制台”。
-
在“设置”边栏中,单击“操作”。
-
在“GitHub Actions”下,选择“启用 GitHub Actions”。
-
在“项目和日志存储”下,选择“Google Cloud Storage”,然后输入存储桶的详细信息:
- 服务 URL:存储桶的服务 URL。 通常为
https://storage.googleapis.com
。 - 存储桶名称:存储桶的名称。
- HMAC 访问 ID 和 HMAC 机密:存储帐户的 Google Cloud 访问 ID 和机密。 有关详细信息,请参阅 Google Cloud 文档中的“管理服务帐户的 HMAC 密钥”。
- 服务 URL:存储桶的服务 URL。 通常为
-
单击“测试存储设置”按钮验证存储设置。
如果在验证存储设置时出现任何错误,请检查存储提供程序设置并重试。
-
在“设置”边栏下,单击“保存设置”。
注意:保存 管理控制台 中的设置会重启系统服务,这可能会导致用户可察觉的停机时间。
-
等待配置运行完毕。
后续步骤
配置运行成功完成后,GitHub Actions 将在 你的 GitHub Enterprise Server 实例 上启用。 对于后续步骤,例如管理 GitHub Actions 访问权限和添加自托管运行器,请返回到“GitHub Actions for GitHub Enterprise Server 使用入门”。