介绍

Alauda Artifact Hub Shim 是一个 ACP 集群插件,为 Tekton catalog 资源提供一个离线、与 Artifact Hub 兼容的服务。它为 Tekton hub resolvers 和 DevOps Hub UI 提供一个稳定的集群内端点,用于发现和获取 TaskPipelineStepAction 资源,而无需依赖公共 Artifact Hub 服务。

Artifact Hub Shim 面向需要在 ACP 上集中管理 catalog 的平台管理员和 DevOps 用户。管理员负责安装和配置该插件,而 pipeline 作者则通过 Tekton 远程引用使用 catalog 资源,或在 DevOps UI 中浏览这些资源。

主要优势

  • 适用于离线环境:该插件、内置 catalog 以及所需的工具镜像都可以通过 ACP 离线包和私有 registry 交付。
  • Tekton 原生消费:pipeline 定义使用标准的 Tekton hub resolver contract,而不是在编写阶段下载 Tasks。
  • 集中式 catalog 管理:管理员可以将内置 catalog 与通过 Kubernetes ConfigMap 资源注册的其他基于 Git 的 catalog 组合使用。
  • ACP 集成:该插件提供 DevOps Hub UI 使用的兼容性 API,并参与 ACP 对 UI 请求的身份验证和授权。
  • 运行可靠性:源故障会被隔离,在可能的情况下保留最后一个有效快照,并且该 API 支持多个只读副本和 pod 本地运行时存储。

典型场景

  • 使用内置 ACP catalog,从 Tekton 工作负载中引用可复用的 Tasks 和 Pipelines。
  • 将内部 Git 仓库发布为私有或组织级 catalog。
  • 从 DevOps Hub UI 浏览和检查 catalog 资源。
  • 随 catalog 资源一起交付邮件和执行概览模板。
  • 将 tool-image 和模板 ConfigMap 资源同步到已批准的命名空间中。

限制

  • Artifact Hub Shim 实现了 Tekton 和 ACP 所需的 Artifact Hub 及旧版 Hub API 子集。它不是公共 Artifact Hub 网站或所有 Artifact Hub API 的通用替代品。
  • 基于 Git 的 catalog 必须能够从集群中访问。在离线环境中,请使用内部 Git 服务和内部凭据。
  • 与 resolver 兼容的 Artifact Hub 端点不携带终端用户令牌。该路径上的仓库可见性由可选的 admission 扩展强制执行,不应将其视为不受信任的直接 API 客户端的边界。与 UI 兼容的端点使用 ACP 或 Kubernetes 授权。
  • Artifact Hub Shim 采用滚动发布方式维护。只有最新发布版本会获得修复。请参阅 生命周期策略

下一步