第 1 章 在 Jenkins 中添加 secret 和环境变量以便与外部工具集成


在创建应用程序时,当您将 Jenkins 选择为 CI 供应商时,您必须将 secret 和环境变量添加到 Jenkins 中,以便与外部工具进行集成。这可让 Jenkins 执行基本任务,如漏洞扫描、镜像签名和测试生成。

先决条件

  • 您必须具有创建和管理 Jenkins 任务、变量和 CI 管道所需的权限。
  • 您必须具有镜像 registry 的用户名和密码,如 Quay.io、Jfrog Artifactory 或 Sonatype Nexus。
  • 您必须具有适当的 GitOps 凭证。
  • 您必须具有 Jenkins 管道执行的特定任务的以下信息:

    • 对于 ACS 任务:

      • ROX Central 服务器端点和令牌
    • 对于 SBOM 任务:

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

    用于这些凭证的值已经经过 Base64 编码,因此您不需要转换它们。您可以在 private.env 文件中找到这些凭证。

1.1. 在 Jenkins 中添加 secret

按照以下步骤,使用 Jenkins 服务器上的 UI 添加所需的凭证。

流程

  1. 在 Web 浏览器中打开 Jenkins 实例,并使用您的管理员凭据登录。
  2. 选择 Jenkins 仪表板右上角的用户名。
  3. 从左侧边栏,选择 Manage Jenkins
  4. Security 部分中,选择 Credentials
  5. Stores 范围下,选择 System
  6. 选择您要添加凭证的域。通常,它是 全局凭据(无限制), 单击此域名。
  7. 选择 Add Credentials
  8. Kind 下拉列表中,选择 Secret 文本
  9. Scope 下拉列表中的默认值保留为 Global (Jenkins…​)
  10. 在 UI 字段中输入与 secret 相关的信息。
  11. 选择 Create
  12. 重复步骤 7-11 以添加以下凭证:

    注意

    对于镜像 registry,Quay 是默认选项。要使用 JFrog Artifactory 或 Sonatype Nexus,请在克隆的 tssc-sample-templates GitHub 仓库中的 gitops-templatesource-repo 文件夹中取消注释 2 Jenkinsfiles 中的对应变量的行。

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

    QUAY_IO_CREDS

    用于访问 Quay.io 存储库的用户名和密码。这是在 Jenkinsfile 中取消注释的默认选项。

    RTIFACTORY_IO_CREDS

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

    NEXUS_IO_CREDS

    用于访问 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 进行身份验证。

  13. 重新运行最后的管道运行。

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

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat