第 29 章 提交 Helm chart 以进行认证
在 Red Hat Partner Connect 上配置和设置 Helm chart 项目后,通过创建一个红帽 OpenShift Helm Chart 仓库的拉取请求来提交您的 Helm chart 以进行认证。在拉取请求中,您可以包含 chart 或 chart-verifier 工具 生成的报告。根据拉取请求的内容,chart 将会被认证,如果未提供报告,则 chart-verifier 将运行。
先决条件
在创建拉取请求前,请确保满足以下先决条件:
对 红帽的 OpenShift Helm Chart 仓库进行分叉,并将其克隆到本地系统。在这里,您可以在合作伙伴的 目录下看到为您的公司创建的目录。
注意目录名称与您在认证容器时设置的容器 registry 命名空间相同。
在您的公司目录中,将为您上一步中创建的每个 Chart 认证项目有一个子目录。要验证是否正确设置了此设置,请查看
OWNERS
文件。OWNERS
文件会在您的机构目录中的 chart 目录中自动创建。它包含有关项目的信息,包括授权代表您公司认证 Helm chart 的 GitHub 用户。您可以在位置chart/ Partners/acme/awesome/OWNERS 中找到该文件
。如果要编辑 GitHub 用户详情,请导航至 Settings 页面。例如,如果您的组织名称是
acme
,并且 Chart 名称是非常繁琐的。OWNERS
文件的内容如下:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您提交的 chart 的名称必须与
OWNERS
文件中的值匹配。在提交 Helm Chart 源或 Helm Chart 验证报告前,请使用其版本号创建一个目录。例如,如果您要发布
awesome
chart 的0.1.0 版本
,请按如下所示创建一个目录:charts/partners/acme/awesome/0.1.0/
charts/partners/acme/awesome/0.1.0/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意对于代表红帽支持的产品的图表,请使用位于 chart 的
OWNERS
文件( chart)提交对主分支的拉取请求,您的机构目录中可用的 redhat 目录。例如,对于名为 awesome 的红帽图表,请将拉取请求提交到位于chart/redhat/awesome/OWNERS 的主分支
。请注意,对于红帽支持的项目,您的机构名称也是 redhat。
流程
您可以使用三种方法提交 Helm chart 以进行认证:
29.1. 提交没有 chart 验证报告的 Helm chart 复制链接链接已复制到粘贴板!
您可以以两种不同的格式提交您的 Helm chart 以进行认证,而无需 chart 验证报告:
29.1.1. 作为 tarball 进行图表 复制链接链接已复制到粘贴板!
如果要将 Helm chart 提交为 tarball,您可以使用 Helm package 命令创建 Helm chart 的 tarball,并将其直接放在 0.1.0 目录中。
例如,如果您的 Helm Chart 对于 一个机构
acme
来说非常困难
charts/partners/acme/awesome/0.1.0/awesome-0.1.0.tgz charts/partners/acme/awesome/0.1.0/awesome-0.1.0.tgz.prov
charts/partners/acme/awesome/0.1.0/awesome-0.1.0.tgz
charts/partners/acme/awesome/0.1.0/awesome-0.1.0.tgz.prov
29.1.2. 目录中的 chart 复制链接链接已复制到粘贴板!
如果要在目录中提交 Helm chart,请将 Helm chart 放在带有 chart 源的目录中。
如果您签署了 chart,请将 providence 文件放在同一目录中。您可以在 OWNERS
文件中包括 chart 的 base64 编码公钥。当 base64 编码的公钥存在时,当使用 chart-verifier 为 chart 创建报告时,密钥将被解码并指定。
如果公钥与 chart 不匹配,verifier 报告将包含检查失败,拉取请求将以错误结尾。
如果公钥与 chart 匹配且没有其他故障,则会创建一个发行版本,该发行版本将包括 tarball、提供文件、公钥文件和生成的报告。
例如,
awesome-0.1.0.tgz awesome-0.1.0.tgz.prov awesome-0.1.0.tgz.key report.yaml
awesome-0.1.0.tgz
awesome-0.1.0.tgz.prov
awesome-0.1.0.tgz.key
report.yaml
如果 OWNERS
文件不包含公钥,则会跳过 chart verifier 检查,不会影响拉取请求的结果。此外,该公钥文件将不会包含在发行版中。
如果 chart 是 chart 源的目录,请创建一个 src 目录来放置 chart 源。
例如,
路径
可以是 chart/partners/acme/awesome/0.1.0/src/
文件结构可以是