第 22 章 在本地运行认证测试套件
选择这个选项,您可以在您自己的 OpenShift 集群上运行认证工具。
红帽建议按照此方法认证您的 Operator。
这个选项是以下合作伙伴的高级方法:
- 有兴趣将工具集成到自己的开发人员工作流中,以进行持续验证,
- 想要访问全面日志以获得更快的反馈回路,
- 或具有默认 OpenShift 安装中不可用的依赖项。
以下是进程概述:
图 22.1. 本地运行认证测试套件概述
您可以使用基于 Tekton 的 OpenShift 管道来运行认证测试,实时查看综合日志和调试信息。当您准备好认证并发布 Operator 捆绑包后,管道会代表您向 GitHub 提交拉取请求(PR)。如果成功通过,您的 Operator 将自动合并到 Red Hat Container Catalog 中,并在 OpenShift 中嵌入的 operatorHub。
按照说明在本地运行认证测试套件:
先决条件
要在 Red Hat OpenShift 测试环境中认证您的软件产品,请确保:
- 已安装 OpenShift 集群版本 4.8 或更高版本。
OpenShift Operator Pipeline 为 5GB 卷创建一个持久性卷声明。如果您 在裸机上运行 OpenShift 集群,请确保已配置了 动态卷置备。如果您没有配置动态卷置备,请考虑设置 本地卷。要防止 Permission Denied
错误,使用以下命令将本地卷存储路径修改为具有 container_file_t
SELinux 标签:
chcon -Rv -t container_file_t "storage_path(/.*)?"
chcon -Rv -t container_file_t "storage_path(/.*)?"
- 您有具有集群管理员特权的 admin 用户的 kubeconfig 文件。
- 有有效的 Operator 捆绑包。
- OpenShift CLI 工具(oc)版本 4.7.13 或更高版本已安装。
- Git CLI 工具(git)版本 2.32.0 或更高版本已安装。
- Tekton CLI 工具(tkn)版本 0.19.1 或更高版本已安装。
22.1. 添加 Operator 捆绑包 复制链接链接已复制到粘贴板!
在 fork 的 operators 目录中,有一系列子目录。
如果要使用基于文件的目录(FBC)工作流提供 Operator,请参阅 基于文件的目录(FBC)。
22.1.1. 如果您在 - 之前已认证此 Operator, 复制链接链接已复制到粘贴板!
在 operators 目录中找到您的 operator 文件夹。将 Operator 捆绑包的内容放在此目录中。
确保您的软件包名称与您的 Operator 的现有文件夹名称一致。
22.1.2. 如果您正在新认证此 operator - 复制链接链接已复制到粘贴板!
如果新认证 Operator 没有位于 operator 的父目录下的子目录,则必须创建一个。
在 operators 下创建一个新目录。此目录的名称应与 Operator 的软件包名称匹配。例如,my-operator
。
在这个 operator 目录中,创建一个带有 Operator 名称的新子目录,如 <
my-operator>
,并创建一个版本目录,如 <V1.0>
并放置您的捆绑包。认证过程为之前认证的 Operator 预安装这些目录。├── operators └── my-operator └── v1.0
├── operators └── my-operator └── v1.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
在 version 目录下,添加一个包含所有 OpenShift 清单的
manifests
文件夹,包括clusterserviceversion.yaml
文件。
推荐的目录结构
以下示例演示了推荐的目录结构。
配置文件 | 描述 |
---|---|
config.yaml |
此文件包含 Operator 的机构。它可以是 |
ci.yaml | 在这个文件中包括 operator 的 Red Hat Technology Partner 组件 PID。
例如, |
annotations.yaml |
此文件包括 OpenShift 版本注解,引用 OpenShift 版本的范围。例如,
例如:
请注意,在版本之前必须使用字母 'v',并且不允许使用空格。语法如下:
|