第 1 章 将 secret 和变量添加到 GitLab CI 中,以便与外部工具集成


先决条件

在配置 GitLab CI 前,请确定您有以下内容:

  • 管理员对 GitLab 存储库和 CI/CD 设置的访问权限。
  • 用于从 Quay.io、JFrog Artifactory 或 Sonatype Nexus 中拉取容器镜像的 容器注册表凭证
  • 特定 GitLab CI 任务的 身份验证详情

    • 对于 ACS 安全任务

      • ROX Central 服务器端点
      • ROX API 令牌
    • 对于 SBOM 和工件签名任务

      • Cosign 签名密钥密码、私钥和公钥
      • Trustification API 和 issuer URL, client ID, client secret, and supported CycloneDX version
    注意

    凭证和其他详情已经经过 Base64 编码,因此您不需要再次编码它们。您可以在您的 private.env 文件中找到这些凭证,该文件在 RHTAP 安装过程中创建。

流程

此流程添加所需的 secret 和环境变量。请注意,您需要屏蔽 secret 的值。

  1. 登录 GitLab 并打开您的源存储库。
  2. 展开 Setting 菜单,然后选择 CI/CD
  3. Variables 部分中,选择 Expand
  4. 选择 Add 变量 并在弹出窗口中添加第一个 secret:

    1. Key 字段中,输入 MY_GITLAB_TOKEN
    2. Value 字段中,输入与 GitLab 帐户关联 的令牌
    3. Flags 下,选择 Mask 变量 来隐藏敏感值。
    4. 选择 添加变量
  5. 重复步骤 4 来添加所需的 secret,并检查每个 secret 的 Mask 变量 标志:

    Expand
    表 1.1. 镜像 registry 和 GitOps secret
    变量描述

    QUAY_IO_CREDS_PSW

    用于访问 Quay 存储库的密码。

    RTIFACTORY_IO_CREDS_PSW

    用于访问 JFrog Artifactory 存储库的密码。

    NEXUS_IO_CREDS_PSW

    用于访问 Sonatype Nexus 存储库的密码。

    GITOPS_AUTH_PASSWORD

    系统用来为新构建镜像更新 GitOps 存储库的令牌。

    Expand
    表 1.2. ACS 和 SBOM 任务所需的 secret
    变量描述

    ROX_API_TOKEN

    用于访问 ROX 服务器的 API 令牌。

    COSIGN_SECRET_PASSWORD

    Cosign 签名密钥的密码。

    COSIGN_SECRET_KEY

    Cosign 的私钥。

    TRUSTIFICATION_OIDC_CLIENT_SECRET

    与客户端 ID 一起使用的客户端 secret,以向 Trustification Bombastic API 进行身份验证。

  1. 添加常规环境变量:

    1. 选择 添加变量
    2. Key 字段中,输入密钥,例如 QUAY_IO_CREDS_USR
    3. Value 字段中,输入用于访问 Quay 存储库的用户名。
    4. 在标记 ,请勿选择 Mask 变量
    5. 选择 添加变量
  2. 重复步骤 6 以添加以下变量:

    Expand
    表 1.3. 镜像 registry 和 GitOps 变量
    变量描述

    QUAY_IO_CREDS_USR

    用于访问 Quay 存储库的用户名。

    RTIFACTORY_IO_CREDS_USR

    用于访问 JFrog Artifactory 存储库的用户名。

    NEXUS_IO_CREDS_USR

    用于访问 Nexus 存储库的用户名。

    GITOPS_AUTH_USERNAME

    您的 OpenShift GitOps 用户名。

    Expand
    表 1.4. ACS 和 SBOM 任务所需的变量
    变量描述

    ROX_CENTRAL_ENDPOINT

    ROX Central 服务器的端点。

    COSIGN_PUBLIC_KEY

    Cosign 的公钥。

    TRUSTIFICATION_BOMBASTIC_API_URL

    SBOM 生成中使用的 Trustification Bombastic API 的 URL。

    TRUSTIFICATION_OIDC_ISSUER_URL

    与 Trustification Bombastic API 交互时用于身份验证的 OIDC 签发者 URL。

    TRUSTIFICATION_OIDC_CLIENT_ID

    用于使用 OIDC 向 Trustification Bombastic API 进行身份验证的客户端 ID。

    TRUSTIFICATION_SUPPORTED_CYCLONEDX_VERSION

    指定系统支持并生成的 CycloneDX SBOM 版本。

    可选 :如果您的 CI 供应商运行程序没有在与 RHTAP 实例相同的集群中运行,则设置 Rekor 和 TUF 变量。

    Expand
    表 1.5. Rekor 和 TUF 变量
    变量描述

    REKOR_HOST

    您的 Rekor 服务器的 URL。

    TUF_MIRROR

    您的 TUF 服务的 URL。

  1. 重新运行最后的管道运行,以验证 secret 是否已正确应用。

    1. 或者,切换到 GitLab 中应用的源存储库,进行次要更改,并提交它以触发新的管道运行。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat