第 30 章 提交您的 Helm Chart 供认证
在 Red Hat Partner Connect 中配置和设置 Helm Chart 组件后,请通过创建拉取请求到 红帽的 OpenShift Helm Chart 仓库来提交您的 Helm chart 进行验证。在拉取请求中,您可以包含 chart 或 chart-verifier 工具 生成的报告。根据拉取请求的内容,图表将会被认证,并在未提供报告时运行 chart-verifier。
先决条件
在创建拉取请求前,请确保满足以下先决条件:
对 红帽的 OpenShift Helm Chart 仓库进行分叉,并将其克隆到本地系统。在这里,您可以在合作伙伴的 目录下看到已为您的公司创建的目录。
注意目录名称与认证容器时设置的容器 registry 命名空间相同。
在公司目录中,您在上一步中创建的每个 Chart 认证组件都会有一个子目录。要验证是否正确设置了这一点,请查看
OWNERS
文件。OWNERS
文件会在您的机构目录中的 Chart 目录中自动创建。它包含您的组件信息,包括 GitHub 用户代表贵公司认证 Helm chart。您可以在位置图表/加密/acme/awesome/OWNERS 中找到该文件
。如果要编辑 GitHub 用户详情,请进入 Settings 页面。例如,如果您的组织名称是
acme
,并且 chart 名称为awesome
。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
文件将拉取请求提交到主分支,位于您的机构目录中可用的 redhat 目录。例如,对于名为 awesome 的红帽图表,请将您的拉取请求提交到位于charts/redhat/awesome/OWNERS 的主分支
。请注意,对于红帽支持的组件,您的组织名称也是 redhat。
步骤
您可以使用三种方法提交 Helm Chart 以进行认证:
30.1. 在没有 Chart 验证报告的情况下提交 Helm Chart 复制链接链接已复制到粘贴板!
您可以以两种不同格式提交 Helm Chart 以进行认证,而无需 Chart 验证报告:
30.1.1. chart 作为 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
30.1.2. 目录中的 chart 复制链接链接已复制到粘贴板!
如果要在目录中提交 Helm Chart,请将 Helm Chart 放置到带有 Chart 源的目录中。
如果您签署了 chart,请将提供的文件放在同一个目录中。您可以在 OWNERS
文件中包括 chart 的 base64 编码公钥。当存在 base64 编码的公钥时,密钥将被解码,并在使用 chart-verifier 为 chart 创建报告时指定。
如果公钥与 chart 不匹配,verifier 报告将包含检查失败,拉取请求将以错误结尾。
如果公钥与图表匹配,且没有其他故障,则会创建一个发行版本,其中包括 tarball、offernce 文件、公钥文件和生成的报告。
例如,
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/
文件结构可以是