edbctl operand v1

The edbctl operand command provides tools for managing the EDB Postgres AI Postgres Operand images, including syncing or listing images from the EDB repository to your local container image registry.

Commands

edbctl operand sync-to-local-registry

Syncs the operand images from EDB repository to a local registry to provision in a local install of HM.

edbctl operand sync-to-local-registry [options]

Where options are:

      --source-registry-username string        Source registry username (required).
      --source-registry-password string        Source registry password (required).
      --destination-registry-uri string        Destination registry URI (required).
      --destination-registry-username string   Destination registry username (required).
      --destination-registry-password string   Destination registry password (required).
      --version string                         Operand version (required).
      --sign-by-sigstore-private-key string    Path to the Sigstore private key.
      --sign-passphrase-file string            Path to the file containing the passphrase for the Sigstore private key.
  -w, --workers int                            Number of concurrent workers for syncing images (default is 3).
      --cpu int                                Set CPU limit for each worker (max OS threads for Go runtime, must be your CPU core count or lower).
  -y, --yes                                    Auto-confirm all confirmations.
  -h, --help                                   Help for sync-to-local-registry.

This example shows how to sync the EDB repository to a local registry:

edbctl operand sync-to-local-registry --source-registry-username <username> --source-registry-password <password> --destination-registry-uri <registry> --destination-registry-username <username> --destination-registry-password <password> --version "v.<version>"

edbctl operand list-images

This command is used to retrieve and display a comprehensive list of all container images associated with a specific version of the Hybrid Manager. It provides crucial information including the image tab, for each component.

edbctl operand list-images [options]

Where options are:

      --source-registry-username string          Source registry username (required). The username for accessing the repository where the images are stored.
      --source-registry-password string          Source registry password (required). The password for accessing the repository where the images are stored.
      --version string                           Hybrid Manager release version (required). Specifies which version of the operand to list images for.
  -y, --yes                                      Auto-confirm all confirmations.
  -h, --help                                     Displays help information for the list-images command.

edbctl operand download-image-list

This command allows you to download a file that contains a list of all required operand images for a specified version of the Hybrid Manager. This is particularly useful for preparing for installations in air-gapped or internet-disconnected environments.

edbctl operand download-image-list [options]

Where options are:

      --source-registry-username string       Source registry username (required). The username for accessing the repository where the images are stored.
      --source-registry-password string       Source registry password (required). The password for accessing the repository where the images are stored.
  -o, --output-filename string                Output file path (required). The path where the downloaded image list file will be saved.
      --version string                        Hybrid Manager release version (required). Specifies which version of the operand to download the image list for.
  -y, --yes                                   Auto-confirm all confirmations.
  -h, --help                                  Displays help information for the download-image-list command.

This example shows how to download the operand image list for a specific Hybrid Manager version:

edbctl operand download-image-list --version "v1.0.0" --source-registry-username "myuser" --source-registry-password "mypassword" --output-filename "/tmp/edb-images.txt"

edbctl operand annotate-extensions

Extracts the list of available Postgres extensions from an operand image and injects them as OCI annotations into the image manifest in its remote registry.

The image is booted locally to be introspected, so a running Docker daemon is required, along with push access to the image's registry.

Use --dry-run to print the extensions that would be recorded — in the same format as show-extensions, honoring -o — without pushing anything to the registry (the image is still booted and introspected). The -o output format only applies in --dry-run mode; without --dry-run the command just reports success.

edbctl operand annotate-extensions IMAGE [options]

Where options are:

    --timeout duration   Maximum time to wait for the whole extraction (for example, 30m, 2h) (default 20m0s).
    --dry-run            Print the extensions that would be recorded instead of pushing them to the registry.
-o, --output string      [table json yaml xml json-raw] (only used with --dry-run) (default "table").
-y, --yes                Auto-confirm all confirmations.
-h, --help               Help for annotate-extensions.

This example shows how to annotate an operand image with its extensions:

edbctl operand annotate-extensions upmdev.azurecr.io/postgresql-gf-custom:17.4-2503242007

edbctl operand copy-version

Reads the org.enterprisedb.operandset.version annotation from a source image and writes it to a target image, in place.

edbctl operand copy-version SRC_IMAGE TARGET_IMAGE [options]

Where options are:

-y, --yes    Auto-confirm all confirmations.
-h, --help   Help for copy-version.

This example shows how to copy the operand set version annotation between images:

edbctl operand copy-version docker.enterprisedb.com/pgai-platform/edb-postgres-advanced:18.3-2605132051 upmdev.azurecr.io/postgresql-gf-custom:17.4-2503242007

edbctl operand read-version

Reads the org.enterprisedb.operandset.version OCI annotation from an image manifest and prints its value to stdout.

edbctl operand read-version IMAGE [options]

Where options are:

-h, --help   Help for read-version.

This example shows how to read the operand set version annotation from an image:

edbctl operand read-version docker.enterprisedb.com/pgai-platform/edb-postgres-advanced:18.3-2605132051

edbctl operand show-extensions

Reads the org.enterprisedb.pg.extensions OCI annotation from an image manifest, decodes it, and lists the available PostgreSQL extensions it records.

edbctl operand show-extensions IMAGE [options]

Where options are:

-o, --output string   [table json yaml xml json-raw] (default "table")
-h, --help            Help for show-extensions.

This example shows how to show the extensions recorded on an operand image:

edbctl operand show-extensions upmdev.azurecr.io/edb-postgres-advanced-custom:18.4-2606080821

edbctl operand write-version

Sets (or replaces) the org.enterprisedb.operandset.version OCI annotation on a target image manifest, writing the result back to its registry in place.

edbctl operand write-version IMAGE [options]

Where options are:

    --version string   Operand set version to set (required).
-y, --yes              Auto-confirm all confirmations.
-h, --help             Help for write-version.

This example shows how to write the operand set version annotation to an image:

edbctl operand write-version --version 18.3-2605132051 upmdev.azurecr.io/postgresql-gf-custom:17.4-2503242007