27.2. 运行 Helm chart-verifier 工具
执行 chart-verifier 工具的建议目录结构如下:
先决条件
- 安装 Podman 或 Docker CLI 的容器引擎。
- 互联网连接,以检查镜像是否经过红帽认证。
- GitHub 配置集,将 chart 提交到 OpenShift Helm Charts 仓库。
- Red Hat OpenShift Container Platform 集群。
在运行 chart-verifier 工具前,使用以下命令打包 Helm Chart:
helm package <helmchart folder>
$ helm package <helmchart folder>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 此命令将归档您的 Helm Chart,并将其转换为
.tgz
文件格式。
步骤
您可以使用两种方法运行一组 chart-verifier 工具:
27.2.1. 使用 Podman 或 Docker 复制链接链接已复制到粘贴板!
使用通用资源标识符(uri)远程运行可用 chart 的所有可用检查,假设 kube 配置文件位于位置
${HOME}/.kube :
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这个命令中,图表是 https uri 上可用的 Chart 存档的位置。确保存档必须采用
.tgz
格式。在您的系统中本地运行所有可用检查,假设 chart 在当前目录中可用,并且 kube 配置文件位于
${HOME}/.kube
的位置:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这个命令中,chart-uri 是您的本地目录中提供的 chart 归档的位置。确保存档必须采用
.tgz
格式。运行以下命令,以获取与命令关联的可用选项及其用法:
podman run -it --rm quay.io/redhat-certification/chart-verifier verify --help
$ podman run -it --rm quay.io/redhat-certification/chart-verifier verify --help
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 命令的输出类似以下示例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行检查的子集:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行除子集之外的所有检查:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意运行检查子集旨在减少开发的反馈循环。要认证您的图表,您必须运行所有必要的检查。
提供 chart-override 值:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从当前目录中的文件提供 chart-override 值:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
27.2.1.1. 配置 timeout 选项 复制链接链接已复制到粘贴板!
如果 chart-testing 进程延迟,请增加超时值。默认情况下,图表测试过程需要大约 30 分钟才能完成。
如果您在 Chart 测试过程中观察到延迟,红帽建议您向红帽认证团队提交报告进行验证。
27.2.1.2. 保存报告 复制链接链接已复制到粘贴板!
当 chart 测试过程完成后,报告信息会被默认显示。您可以通过将报告重定向到文件来保存报告。
例如:
除了这个命令,使用 a -w
选项将报告直接写入文件 ./chartverifier/report.yaml
。若要获取此文件,您必须对文件进行卷挂载至 /app/chartverifer
。
例如:
如果文件已存在,新报告会覆盖该文件。
27.2.1.3. 配置错误日志 复制链接链接已复制到粘贴板!
默认情况下,生成错误日志并保存到文件 ./chartverifier/verify-<timestamp>.yaml
中。它包括错误消息、每个检查的结果以及有关 Chart 测试的附加信息。要获得错误日志的副本,您必须挂载卷到 /app/chartverifer
。
例如:
如果要将多个日志存储到同一目录中,您可以一次存储最多 10 个日志文件。当达到最大文件限制时,旧的日志文件会自动替换为较新的日志文件。
使用 -E
or -suppress-error-log
选项来限制错误日志输出。
错误和警告消息是标准错误输出信息,无法使用 -E
or -suppress-error-log
选项阻止。
27.2.2. 使用二进制文件 复制链接链接已复制到粘贴板!
这个方法只适用于 Linux 系统。
- 从版本页面中下载并安装最新的 chart-verifier 二进制文件。https://github.com/redhat-certification/chart-verifier/releases
使用以下命令解压 tarball 二进制文件:
tar zxvf <tarball>
$ tar zxvf <tarball>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 unzipped 目录中运行以下命令执行所有 Helm Chart 检查:
./chart-verifier verify <chart-uri>
$ ./chart-verifier verify <chart-uri>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这个命令中,
chart-uri
是服务器上可用的 Chart 存档的位置。确保存档必须采用.tgz
格式。默认情况下,chart-verifier 工具假定 kube 配置文件位于默认位置$HOME/.kube
。如果文件在默认位置不可用,请将环境变量设置为KUBECONFIG
。chart-verifier 的输出包括执行的测试详情以及每个测试的结果状态。它还指明每个测试对于红帽认证是否是必需的或推荐。如需更多信息,请参阅 Helm Chart 检查的类型。