Red Hat Trusted Application Pipeline 1.5 发行注记
在此发行版本中探索新功能,并了解已知的问题。
摘要
前言
本发行注记介绍了 Red Hat Trusted Application Pipeline 的新功能、功能增强、重要的技术变化、技术预览、错误修复、已知问题和其他相关公告或信息。
第 1 章 关于此版本
Red Hat Trusted Application Pipeline 1.5 现已正式发布。要了解有关所有版本支持的更多信息,请参阅 RHTAP 生命周期政策。
要升级红帽受信任的应用程序管道,您必须单独在 RHTAP 内升级每个产品。RHTAP 安装程序不是管理器:它会生成 RHTAP 首次部署,但它不支持升级。
- 要了解有关 RHTAP 的更多信息,请参阅关于 RHTAP 产品概述。
- 要安装 RHTAP,请参阅安装红帽受信任的应用程序管道。
RHTAP 安装程序部署的产品就绪,它们的大小适用于概念验证或非常小的团队。对于较大的团队,最可能需要手动重新配置产品,并应按照每个产品记录的步骤进行。
第 2 章 新功能及功能增强
Red Hat Trusted Application Pipeline 1.5 添加了以下新功能以及一些现有功能的改进。
技术预览:现在支持 Azure Pipelines
现在,您可以选择 Azure Pipelines 作为 CI 供应商。您可以在 RHTAP 安装过程中集成 Azure Pipelines,否则 RHTAP 默认为 Tekton。这个 功能作为技术预览提供,它没有被完全支持,可能并不完善,且不适用于生产环境。
使用 Azure Pipelines 开始:
- 在 RHTAP 安装过程中 集成 Azure Pipelines。
-
安装后,配置 Azure Pipelines 以确保它可以与 RHTAP 正常工作。
现在启用了用于镜像 registry 身份验证的单一 secret
在以前的版本中,RHTAP 会单独存储每个容器镜像 registry 的 secret。在这个版本中,secret 值可以合并到一个统一 rhtap-image-registry-auth
secret 中,您可以使用此 secret 进行镜像 registry 身份验证。
非敏感的环境变量不再被视为 secret
在以前的版本中,RHTAP 将所有 CI 环境变量视为 secret。因此,非敏感的值会被屏蔽,并具有有限的可见性。在这个版本中,非敏感的环境变量不会存储为 secret,它们的值可以在 UI 和日志中轻松访问。以下变量不再是 secret:
镜像 registry 变量:
-
GitHub Actions 和 Azure CI:
IMAGE_REGISTRY_USER
-
GitLab CI:
QUAY_IO_CREDS_USR
,ARTIFACTORY_IO_CREDS_USR
, 和NEXUS_IO_CREDS_USR
-
GitHub Actions 和 Azure CI:
-
Azure CI、GitLab CI 和 Jenkins :
GITOPS_AUTH_USERNAME
所有 CI:
-
ROX_CENTRAL_ENDPOINT
-
COSIGN_PUBLIC_KEY
-
TRUSTIFICATION_BOMBASTIC_API_URL
-
TRUSTIFICATION_OIDC_ISSUER_URL
-
TRUSTIFICATION_OIDC_CLIENT_ID
-
TRUSTIFICATION_SUPPORTED_CYCLONEDX_VERSION
-
REKOR_HOST
和TUF_MIRROR
-
rhdh-kubernetes-plugin
ServiceAccount 的权限已被限制
在以前的版本中,Red Hat Developer Hub 用来与 OCP 集成的 rhdh-kubernetes-plugin
ServiceAccount (SA)具有集群范围的权限。为提高安全性,SA 访问仅限于 rhtap-app-namespaces
创建的命名空间,以及 RHDH 插件所需的资源。创建了一个新的 ClusterRole
,并绑定到 rhdh-kubernetes-plugin
ServiceAccount 来管理权限。
现在支持 Red Hat Quay 机器人帐户
在以前的版本中,RHTAP 使用 Quay 超级用户帐户访问镜像 registry,这可能会增加凭证暴露的风险。为提高安全性,这个版本引入了对 Red Hat Quay 机器人帐户的支持。要了解更多有关这些帐户的信息,请参阅 Red Hat Quay Robot 帐户概述文档。
现在支持在 RHDH 上创建和自定义命名空间
config.yaml
文件的 redhatDeveloperHub
部分现在有一个新的 namespacePrefixes
属性。通过配置它,平台工程师可以为开发人员创建和设置新命名空间,并自定义命名空间前缀。默认前缀是 rhtap-app
。要自定义命名空间,请参阅在 config.yaml
中自定义命名空间前缀
新的 manageSubscription
属性管理哪个 Operator 订阅 RHTAP 安装
在 RHTAP 安装过程中,安装程序将使用 OpenShift Operator 将多个产品部署到您的 OCP 集群。在以前的版本中,如果您已安装了这些 Operator,RHTAP 安装可能会失败。此发行版本在 config.yaml
文件中添加了一个新的 manageSubscription
属性。此属性允许您选择安装程序应在 RHTAP 安装过程中安装并订阅哪些 Operator。默认情况下,所有组件的此属性设置为 true
。要更改此行为,请参阅在 RHTAP 中管理 Operator 订阅。
限制:
- AMQ Streams 由 Red Hat Trusted Profile Analyzer 控制
- Crunchydata 由 Red Hat Developer Hub 和 Red Hat Trusted Profile Analyzer 控制
这些限制可能需要您手动安装一些订阅。例如,如果您在集群中已有 AMQ Streams,则必须手动安装 RHTPA,并将 manageSubscription
设置为 false
。
另外,如果您计划使用预安装的 Operator,请确保它们 与 RHTAP 兼容。不兼容的版本或配置可能会导致安装失败。
RBAC 现在可用于 GitHub 身份验证
RHTAP 现在支持基于角色的访问控制(RBAC)用于 GitHub 身份验证。该功能可通过 RHDH 中安装的 RHDH 插件提供,该插件默认是禁用的。要启用 RBAC 插件,请修改 config.yaml
文件,如 在 config.yaml
中启用 RBAC 所述。如需了解更多有关 RBAC 的信息,请参阅使用 RBAC 配置授权。
现在支持部署单个 Helm Chart 依赖项
现在,您可以通过将 Chart 路径传递给 rhtap-cli deploy
命令来部署或升级单个 Helm Chart 依赖项,如 rhtap-cli deploy charts/rhtap-dh
。此功能允许在不重新部署所有 RHTAP 组件的情况下将单个组件更新到较新的版本。
RHACS 与 Quay 集成现在会自动
在以前的版本中,在安装 RHTAP 后,您需要额外将 Red Hat Advanced Cluster Security 与 Quay 镜像 registry 集成。在这个版本中,如果 RHTAP 安装程序至少部署了其中一个组件,则不再需要手动集成。现在,集成由 rhtap-integrations
chart 执行,该图表在所有产品部署后执行。
rhtap-cli 集成 gitlab
现在有一个 new -group
标志
rhtap-cli integration gitlab
命令现在有一个新的 mandatory- group
标志。在集成 GitLab 时,您可以指定目标 GitLab 组,因此仅将 RHTAP 访问限制为该组的资源。要了解更多有关 GitLab 集成的信息,请参阅 RHTAP 安装指南中的 GitLab 部分。
CI 和开发工作负载现已分开
CI 和开发工作负载现在部署在单独的命名空间中。在以前的版本中,开发应用程序与 CI 组件在同一命名空间中运行,并可访问与 CI 相关的 secret。此发行版本分离 CI 和开发工作负载,并限制了凭证公开。此更改还跨环境保持一致,因为 development 命名空间和其他部署命名空间的配置现在相同。
RHDH 和 GitOps 工作负载现在被分开
Red Hat Developer Hub 和 GitOps 组件现在在单独的命名空间中部署。这种分离提高了工作负载管理和资源分配。
第 3 章 兼容性和支持列表
3.1. 产品和版本
RHTAP 在 OpenShift Container Platform 上安装。您部署 RHTAP 的集群应该具有 OpenShift Platform Plus 订阅,因为 RHTAP 依赖于 OpenShift Platform Plus 提供的多个产品。这些产品与 RHTAP 及其软件模板无缝集成,并且 RHTAP 安装程序在安装过程中自动部署它们。但请注意,这些产品不包含在 RHTAP 中。
OpenShift Platform Plus Product | Version |
---|---|
OpenShift Container Platform | 4.15, 4.16, 4.17 |
OpenShift Pipelines | 1.17 |
OpenShift GitOps | 1.15 |
Red Hat Advanced Cluster Security | 4.6 |
Quy | 3.13 |
RHTAP 安装程序还部署以下产品,构成 RHTAP 订阅:
RHTAP 产品 | Version |
---|---|
Red Hat Developer Hub | 1.5 |
Red Hat Trusted Artifact Signer | 1.1 |
Red Hat Trusted Profile Analyzer | 1.3 |
Enterprise Contract | 0.6.104 |
3.2. Red Hat Developer Hub 插件
RHTAP 支持选择 RHDH 动态插件,以支持对可信安全供应链应用程序的创建和监控。RHTAP 启用的一些插件被完全支持,但有些插件是可能无法完成的功能。
无论插件级别的支持,RHTAP 软件模板生成的管道都被完全支持,并利用受信任的软件 Supply Chain 产品和特性的安全功能:Red Hat Trusted Application Signer、Red Hat Trusted Profile Analyzer 和 Enterprise Contract。
Name | 路径 |
---|---|
Argo CD |
|
GitHub 机构 |
|
Kubernetes |
|
Quy |
|
RBAC |
|
Tekton |
|
Topology |
|
Name | 路径 |
---|---|
Argo CD |
|
Argo CD (红帽) |
|
Azure Devops |
|
Azure Devops |
|
Bitbucket 云 |
|
GitHub |
|
GitHub 操作 |
|
GitLab |
|
GitLab |
|
Jenkins |
|
Jenkins |
|
JFrog Artifactory |
|
Kubernetes |
|
Nexus 存储库管理器 |
|
请注意,Red Hat Developer Hub 也会自动启用一系列插件。如需列表,请参阅 预安装的动态插件。
要了解更多有关各个动态插件的信息,包括其支持的版本,请参阅 RHDH 文档中的 动态插件参考。
第 4 章 修复的问题
Red Hat Trusted Application Pipeline 1.5 提供以下程序错误修复和已解决的问题:
-gitops
存储库中的 Workflow
文件现在指向 secret
当您创建新组件并使用 GitHub Actions 作为 CI 提供程序时,RHTAP 会生成一个 GitHub 存储库以及您的组件。此存储库包含带有 工作流
文件的 < your-component-name>-gitops
文件夹,该文件应提供环境变量列表和对 secret 的引用。在以前的版本中,工作流
文件仅包含变量列表,但不包括 secret 的列表。在这个版本中,工作流
文件同时包含环境变量和 secret。
CI 模板中的任务顺序现在正确
在以前的版本中,在 Jenkins、GitLab CI 和 GitHub Actions 模板中,update-deployment
任务在 acs-deploy-check
任务后运行。这个顺序是意外的,现在已被修复。
CD 和 Docs 选项卡不再显示 GitOps 资源的错误
在以前的版本中,在 Red Hat Developer Hub UI 中,GitOps 资源的 CD 和 Docs 选项卡没有生成预期的内容并显示错误消息。这个问题已在本发行版本中解决。
第 5 章 已知问题
Red Hat Trusted Application Pipeline 1.5 会受到以下新识别和之前已知问题的影响。如果您遇到本节中没有列出的问题,请报告它。
在 Create ArgoCD Resources 步骤中创建新组件可能会失败
当您创建新组件时,管道可能会在 Create ArgoCD Resources 步骤中失败,并显示 无效的 json 响应正文。目前,没有临时解决方案。尝试重新创建此组件,直到管道成功为止。
Tekton 任务步骤的两个容器镜像没有签名
RHTAP 使用 Tekton 作为默认 CI 供应商。Tekton 管道是一个任务集合,它由多个 步骤组成
,每个步骤都
运行特定的容器镜像。大多数镜像都存储在受信任的 红帽生态系统目录 中,可通过 registry.redhat.io 或 registry.access.redhat.com 访问。但是,以下两个镜像不会存储在这些 registry 中,且不会被签名:
-
quay.io/konflux-ci/appstudio-utils
-
quay.io/konflux-ci/git-clone
您应该考虑使用未签名镜像的潜在安全风险,并可以自行决定使用它们。RHTAP 并不认为其用途是责任。
当未找到 buildDefinition
时,Azure Pipelines 会列出所有现有的构建
在 Azure Pipelines 中,如果您对组件设置了 dev.azure.com/build-definition
注解,然后列出构建,则列表应该只显示指定管道的构建。如果 Azure Pipelines 无法找到具有匹配名称的管道,它应该不会返回任何构建。但是,当前的行为是返回所有不相关的构建。目前,没有临时解决方案。
查看日志 和查看 SBOM 图标没有链接正确的信息
在 Pipeline Run 完成后,您应能够通过点 Actions 菜单中的 View logs 和 View SBOM 图标来访问构建摘要和 SBOM。但是,这些图标并不总是显示正确的信息。要访问日志中的正确步骤,请点这两个图标之一,并在带有日志的弹出窗口中选择您需要的步骤: show-sbom 或 show-summary。
如果 RHTAP 无法检测到 registry 类型,则 RHDH 不会显示 Image Registry 选项卡
如果 RHTAP 无法检测您使用的容器镜像 registry,Red Hat Developer Hub UI 不会在组件的页面上显示 Image Registry 选项卡。RHTAP 分析 registry URL 以注解您的组件,如果缺少该注解,则选项卡不会出现在 RHDH UI 中。要临时解决这个问题,您可以手动 启用 Image Registry 选项卡。
CI 选项卡显示 Tekton 和 Jenkins 的 GitLab CI 信息
当您托管 GitLab 中组件的源代码并选择 Tekton 或 Jenkins 作为 CI 供应商时,RHDH UI 中的 CI 选项卡可能会错误地显示 GitLab 管道的信息以及 Tekton 或 Jenkins 管道。请注意,如果您选择 Tekton 或 Jenkins,RHTAP 仅运行 Tekton 或 Jenkins 管道,并且有关 GitLab 管道的 CI 选项卡部分应该会被忽略。
RHTAP 不支持某些环境
RHTAP 1.5 不支持以下环境:任何 air-gapped 环境、IBM Power Platform、IBM Z 平台、ARM64 和联邦信息处理标准(FIPS)模式 OCP。
不支持卸载 RHTAP
目前不支持卸载 RHTAP,但可以通过从集群中删除所有 rhtap
命名空间来完成。
第 6 章 弃用和删除的功能
本节列出了已弃用或从 RHTAP 中删除的功能。弃用的功能仍被完全支持,这意味着我们会继续测试和维护它们。但是,弃用的功能将在以后的 RHTAP 版本中被删除,不建议在新部署中使用它们。
RoadieHQ 中的 ArgoCD frontend 插件已弃用
RoadieHQ 中的 ArgoCD frontend 插件已被弃用,并将在以后的发行版本中删除。考虑过渡到红帽提供的 ArgoCD 插件,以便持续支持和增强。
更新于 2025-05-01