第 4 章 集成产品和外部服务
在安装 RHADS - SSC 前,使用此流程集成现有产品或替换默认组件。集成预先存在的服务有助于避免数据重复和不必要的部署。
RHADS - SSC 安装程序部署可一起组成一个安全、自动化的 CI/CD 平台的产品网络。但是,在您的环境中已安装了其中两个产品-高级集群安全性(ACS)和 Quay-might。如果您有任一产品的现有实例,您可以将它们集成到 RHADS - SSC 部署中。
集成可防止数据丢失并避免部署重复服务。如果没有集成现有实例,安装程序会在新命名空间中自动创建一个新实例。
另外,您可以使用支持的替代方案替换默认的 Git、CI 和 registry 组件。您可以为某些类别启用多个替代方案,如源代码存储库或 CI 工具。下表列出了默认组件、其用途以及您可以使用的替代方案:
| 产品 | 用途 | 支持的替代方案 |
|---|---|---|
| GitHub | 源代码存储库 |
|
| Tekton | CI 管道引擎 |
|
| Quy | 工件 registry |
|
CI 管道替代方案符合 SLSA 构建级别 2。只有 Tekton 符合 SLSA 构建级别 3。
当您替换默认的 Git、CI 或 registry 供应商时,RHADS - SSC 在 Red Hat Developer Hub 中安装对应的插件。其中大多数插件只是一个技术预览,或是社区维护的。
由于潜在的安全风险和有限的支持,不建议在生产环境中使用默认组件。
详情请查看 Red Hat Advanced Developer Suite - 软件供应链发行注记 和 RHDH 插件文档中的插件 支持列表。
要集成产品或自定义安装,您必须在使用 cluster-admin 权限登录到 OpenShift 集群的容器中运行所有相关 tssc 命令。
以下流程解释了如何通过集成预先存在的服务和支持的替代方案来自定义 RHADS 的安装 - SSC。
4.1. 集成 GitHub 复制链接链接已复制到粘贴板!
RHADS - SSC 使用 GitHub 来验证用户并创建和管理应用程序存储库。在安装 RHADS - SSC 之前,您必须配置 GitHub 以支持这些功能。
要启用 GitHub 集成,请完成以下步骤:
- 创建 GitHub 个人访问令牌。
- 创建 GitHub 应用程序。
创建 GitHub 个人访问令牌
您必须拥有一个 GitHub 机构来创建个人访问令牌(PAT)。您可以使用现有的 GitHub 组织,创建一个新 GitHub 机构,或者从管理员请求所有权。
安装后,GitHub 组织提供用户为其应用程序生成存储库的位置。
先决条件
- GitHub 机构的所有权
- 具有创建个人访问令牌权限的 GitHub 用户帐户
- 访问 GitHub 开发人员设置
流程
- 进入 GitHub 上的 Developer 设置页面。
- 在左侧导航面板中,在 Personal access token 下,单击 Tokens (classic)。
- 在 Generate new token 下拉菜单中选择 Generate new token (classic)。如果出现提示,请进行身份验证。
-
输入名称,选择过期日期,并在 Select scopes 下选择 repo。这自动包括来自
repo:status到security_events的所有范围。 - 点 Generate token。GitHub 将您重定向到显示令牌的新页面。
-
(可选)将令牌保存到文件中,如
values.txt,以便在后续步骤中重复使用。
创建 GitHub 应用程序
为 RHADS 创建 GitHub 应用程序 - SSC 允许开发人员对 Red Hat Developer Hub 进行身份验证(基于 Web 的界面与 RHADS 交互) - SSC。它还允许 RHADS - SSC 访问您的 GitHub 机构并创建存储库。
您必须在计划与 RHADS - SSC 搭配使用的同一 GitHub 组织中创建并安装此应用程序。安装程序自动执行大多数配置。
先决条件
-
带有存储库范围的
GitHub个人访问令牌 - GitHub 机构的名称
- 分配给 GitHub 应用程序的名称
- registry.redhat.io的有效凭证
-
对 OpenShift 集群的
cluster-admin访问权限 -
访问安装
tssc的终端或容器
流程
运行以下命令来创建 GitHub 应用程序:
bash-5.1$ tssc integration github-app \ --create \ --token="$GH_TOKEN" \ --org="$GH_ORG_NAME" \ $GH_APP_NAME
bash-5.1$ tssc integration github-app \ --create \ --token="$GH_TOKEN" \ --org="$GH_ORG_NAME" \ $GH_APP_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下变量:
-
$GH_TOKEN:GitHub 个人访问令牌 -
$GH_ORG_NAME: GitHub 组织名称 -
$GH_APP_NAME:GitHub 应用程序的名称
-
- 复制命令输出中的 URL,并在浏览器中打开该 URL。
- 点 Create your GitHub App。
- 如有提示,向 GitHub 进行身份验证。
- 点 Create GitHub App for <your organization>。
- 创建应用程序时,点成功消息中的链接在 GitHub 机构中安装应用程序。
- 在重定向的 GitHub 页面上,单击 Install。
- 选择您用于 RHADS - SSC 的 GitHub 组织。
出现提示时,选择 All repositories,然后单击 Install。
注意您可能需要保持此 GitHub 页面处于打开状态。横幅包含一个链接(使用
https://backstage-developer-hub-rhtap…)在安装后访问 RHADS - SSC。