OLM and Bundle CLI Overview

    The following operator-sdk subcommands manage an OLM installation:

    • olm install: install a particular version of OLM.
    • : uninstall a particular version of OLM running in a cluster. This command can infer the version of an error-free OLM installation.

    Manifests and metadata

    The following make recipes and operator-sdk subcommands create or interact with Operator package manifests and bundles:

    • : creates kustomize bases and a kustomization.yaml in config/manifests.
    • make bundle: runs the following commands:
      • generate kustomize manifests: see above.
      • : creates a new or updates an existing bundle in the <project-root>/bundle directory. This command generates both manifests and metadata.
      • bundle validate: validates an Operator bundle image or unpacked manifests and metadata.
    • : runs the given Operator’s bundle image with an existing OLM installation.
    • run bundle-upgrade: upgrades the Operator bundle to a specified newer version.

    Private bundle and catalog image registries

    By default, projects are configured to push to and pull from a docker.io registry with namespace being the value passed to operator-sdk init --domain=<value>. Modify this value to push/pull bundle and catalog images with a different registry host or namespace.

    The run bundle or run bundle-upgrade commands use the none image tool, described above, in-cluster. These commands accept the names of secrets available in the deployment namespace that contain configuration file data. Ideally a cluster admin will provision a namespace and service account for bundle testing, such that they include and reference these secrets:

    You may have to set --namespace=<provisioned namespace> if the namespace encoded in your kubeconfig’s current context was not provisioned with these secrets.

    Package Manifests

    The operator-framework is removing support for the packagemanifests format in the near future, and migration efforts are currently underway. Therefore and run packagemanifests commands have been deprecated. For more details on bundle format refer . To migrate from packagemanifests to the bundle format, use the operator-sdk pkgman-to-bundle command.