6.2. opm CLI 参考
opm
命令行界面 (CLI) 是用于创建和维护 Operator 目录的工具。
opm
CLI 语法
$ opm <command> [<subcommand>] [<argument>] [<flags>]
opm
CLI 不转发兼容。用于生成目录内容的 opm
CLI 版本必须早于或等于用于在集群中提供内容的版本。
标记 | 描述 |
---|---|
| 在拉取捆绑包或索引时跳过容器镜像 registry 的 TLS 证书验证。 |
| 在拉取捆绑包时,将普通 HTTP 用于容器镜像 registry。 |
基于 SQLite 的目录格式(包括相关的 CLI 命令)是一个弃用的功能。弃用的功能仍然包含在 OpenShift Dedicated 中,并且仍然被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。
6.2.1. generate
为声明性配置索引生成各种工件。
命令语法
$ opm generate <subcommand> [<flags>]
子命令 | 描述 |
---|---|
| 为声明性配置索引生成 Dockerfile。 |
标记 | 描述 |
---|---|
| 生成帮助信息。 |
6.2.1.1. dockerfile
为声明性配置索引生成 Dockerfile。
此命令在与 <dcRootDir>
(名为 <dcDirName>.Dockerfile
)相同的目录中创建 Dockerfile,用于构建索引。如果存在具有相同名称的 Dockerfile,这个命令会失败。
当指定额外标签时,如果存在重复的键,则只有每个重复键的最后值都会添加到生成的 Dockerfile 中。
命令语法
$ opm generate dockerfile <dcRootDir> [<flags>]
标记 | 描述 |
---|---|
|
要构建目录的镜像。默认值为 |
|
生成的 Dockerfile 中包含的额外标签。标签的格式为 |
| Dockerfile 帮助。 |
要使用官方红帽镜像构建,请使用带有值为 registry.redhat.io/openshift4/ose-operator-registry:v4
的 -i
标志。
6.2.2. index
从预先存在的 Operator 捆绑包中为 SQLite 数据库格式容器镜像生成 Operator 索引。
从 OpenShift Dedicated 4.11 开始,默认的红帽提供的 Operator 目录以基于文件的目录格式发布。通过以过时的 SQLite 数据库格式发布的 4.10,用于 OpenShift Dedicated 4.6 的默认红帽提供的 Operator 目录。
与 SQLite 数据库格式相关的 opm
子命令、标志和功能已被弃用,并将在以后的版本中删除。功能仍被支持,且必须用于使用已弃用的 SQLite 数据库格式的目录。
许多 opm
子命令和标志都用于 SQLite 数据库格式,如 opm index prune
,它们无法使用基于文件的目录格式。
命令语法
$ opm index <subcommand> [<flags>]
子命令 | 描述 |
---|---|
| 将 Operator 捆绑包添加到索引中。 |
| 修剪除指定软件包以外的所有索引。 |
| 修剪没有与特定镜像关联的分级捆绑包索引。 |
| 从索引中删除整个 Operator。 |
6.2.2.1. add
将 Operator 捆绑包添加到索引中。
命令语法
$ opm index add [<flags>]
标记 | 描述 |
---|---|
|
on-image |
|
构建容器镜像的工具: |
| 要添加的捆绑包的逗号分隔列表。 |
|
与容器镜像交互的工具,如保存和构建: |
| 要添加到的上一个索引。 |
| 如果启用,则仅创建 Dockerfile 并将其保存到本地磁盘。 |
|
图形更新模式,用来定义通频道图形如何被更新: |
| 可选:如果生成 Dockerfile,请指定一个文件名。 |
| 允许 registry 加载错误。 |
|
拉取容器镜像的工具: |
| 正在构建的容器镜像的自定义标签。 |
6.2.2.2. prune
修剪除指定软件包以外的所有索引。
命令语法
$ opm index prune [<flags>]
标记 | 描述 |
---|---|
|
on-image |
|
与容器镜像交互的工具,如保存和构建: |
| 到修剪的索引。 |
| 如果启用,则仅创建 Dockerfile 并将其保存到本地磁盘。 |
| 可选:如果生成 Dockerfile,请指定一个文件名。 |
| 要保留的软件包用逗号隔开。 |
| 允许 registry 加载错误。 |
| 正在构建的容器镜像的自定义标签。 |
6.2.2.3. prune-stranded
修剪没有与特定镜像关联的分级捆绑包索引。
命令语法
$ opm index prune-stranded [<flags>]
标记 | 描述 |
---|---|
|
on-image |
|
与容器镜像交互的工具,如保存和构建: |
| 到修剪的索引。 |
| 如果启用,则仅创建 Dockerfile 并将其保存到本地磁盘。 |
| 可选:如果生成 Dockerfile,请指定一个文件名。 |
| 要保留的软件包用逗号隔开。 |
| 允许 registry 加载错误。 |
| 正在构建的容器镜像的自定义标签。 |
6.2.2.4. rm
从索引中删除整个 Operator。
命令语法
$ opm index rm [<flags>]
标记 | 描述 |
---|---|
|
on-image |
|
构建容器镜像的工具: |
|
与容器镜像交互的工具,如保存和构建: |
| 从中删除的以前索引。 |
| 如果启用,则仅创建 Dockerfile 并将其保存到本地磁盘。 |
| 要删除的用逗号分开的 Operator 列表。 |
| 可选:如果生成 Dockerfile,请指定一个文件名。 |
| 要保留的软件包用逗号隔开。 |
| 允许 registry 加载错误。 |
|
拉取容器镜像的工具: |
| 正在构建的容器镜像的自定义标签。 |
6.2.3. init
生成 olm.package
声明性配置 blob。
命令语法
$ opm init <package_name> [<flags>]
标记 | 描述 |
---|---|
| 如果未指定,订阅的频道将默认为。 |
|
Operator 的 |
| 软件包图标的路径. |
|
输出格式: |
6.2.4. migrate
将 SQLite 数据库格式索引镜像或数据库文件迁移到基于文件的目录。
基于 SQLite 的目录格式(包括相关的 CLI 命令)是一个弃用的功能。弃用的功能仍然包含在 OpenShift Dedicated 中,并且仍然被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。
命令语法
$ opm migrate <index_ref> <output_dir> [<flags>]
标记 | 描述 |
---|---|
|
输出格式: |
6.2.5. render
从提供的索引镜像、捆绑包镜像和 SQLite 数据库文件生成声明性配置 blob。
命令语法
$ opm render <index_image | bundle_image | sqlite_file> [<flags>]
标记 | 描述 |
---|---|
|
输出格式: |
6.2.6. serve
通过 GRPC 服务器提供声明配置。
声明性配置目录在启动时由 serving
命令加载。此命令启动后对声明配置所做的更改不会反映在提供的内容中。
命令语法
$ opm serve <source_path> [<flags>]
标记 | 描述 |
---|---|
| 如果设置了此标志,它会同步并保留服务器缓存目录。 |
|
如果缓存不存在或无效,则退出并显示错误。当设置了 |
| 同步服务缓存,并在没有服务的情况下退出。 |
| 启用调试日志记录。 |
| 服务帮助。 |
|
服务的端口号。默认值为 |
|
启动性能分析端点的地址。格式为 |
|
容器终止日志文件的路径。默认值为 |
6.2.7. validate
验证给定目录中声明性配置 JSON 文件。
命令语法
$ opm validate <directory> [<flags>]