Skip to content

cub function exec

cub function exec

Invoke a list of functions

Synopsis

Invoke functions on units. Functions can be used to modify, validate, or query unit configurations.

To display a list of supported functions, run:

  cub function list

To display usage details of a specific function, run:

  cub function explain --toolchain TOOLCHAIN_TYPE FUNCTION_NAME

Example Functions:

  • set-image: Update container image in a deployment
  • set-int-path: Set an integer value at a specific path in the configuration
  • get-replicas: Get the number of replicas for deployments
  • set-replicas: Set the number of replicas for deployments
  • where-filter: Filter units based on a condition
  • cel-validate: Validate resources using CEL expressions

The syntax is the same as the cub function do command line, but without "cub function do" and without flags.

Example:

  cub function exec functions.txt --where "Slug = 'mydeployment'

Where functions.txt contains:

set-replicas 3
set-image nginx nginx:v234
set-namespace myns
cub function exec file [flags]

Options

      --change-desc string      change description
      --changeset string        changeset to associate units with
      --data-only               show config data without other response details
      --display-mutations       display resource mutations
      --dry-run                 dry run mode: execute functions but skip updating configuration data
      --filter string           Filter entity to apply to the list. Specify as 'space/filter' for cross-space filters or just 'filter' for current space. Supports both slugs and UUIDs. The filter will be combined with any --where clause using AND logic. Examples: "production-filters/security-check", "my-filter-uuid", "validation-rules"
  -h, --help                    help for exec
      --invocation strings      execute invocations by UUID, slug, or space/slug (can be repeated or comma-separated)
      --jq string               jq expression, suppressing default output
      --json                    JSON output, suppressing default output
      --livestate-type string   Invoke the functions on the live state and use the flag value as the toolchain type for live state.
      --output-jq string        apply jq to output JSON
      --output-only             show output without other response details
      --quiet                   No default output.
      --resource-type string    resource-type filter
      --revision string         target a specific revision (format: unit-slug/revision-number, e.g. mydeployment/3)
      --timeout string          completion timeout as a duration with units, such as 10s or 2m (default "10m0s")
      --toolchain string        Toolchain type for the function invocations (default "Kubernetes/YAML")
      --trigger strings         execute triggers by UUID, slug, or space/slug (can be repeated or comma-separated)
      --unit strings            target specific units by slug or UUID (can be repeated or comma-separated)
      --verbose                 Detailed output, additive with default output
      --wait                    wait for completion (default true)
      --where string            Filter expression using SQL-inspired syntax. Supports conjunctions with AND. String operators: =, !=, <, >, <=, >=, LIKE, ILIKE, ~~, !~~, ~, ~*, !~, !~*. Pattern matching with LIKE/ILIKE uses % and _ wildcards. Regex operators (~, ~*, !~, !~*) support POSIX regular expressions. Examples: "Slug LIKE 'app-%'", "DisplayName ILIKE '%backend%'", "Slug ~ '^[a-z]+-[0-9]+$'"
      --where-data string       where data filter
      --where-resource string   filter which resources the function operates on
      --worker string           worker to execute the function
      --yaml                    YAML output, suppressing default output
      --yq string               yq expression, suppressing default output

Options inherited from parent commands

      --context string          The context to use for this command
      --debug                   Debug output
      --executor-space string   Space ID or slug whose executor to use for builtin functions (org-level only)
      --space string            space ID to perform command on

SEE ALSO