Skip to content

cub changeorder update

cub changeorder update

Update a changeorder or multiple changeorders

Synopsis

Update a changeorder or multiple changeorders using bulk operations.

Single changeorder update:

  cub changeorder update my-changeorder --description "Updated description"

Bulk update with --patch:

Update multiple changeorders at once based on search criteria. Requires --patch flag with no positional arguments.

Examples:

  # Update description for all changeorders matching a pattern
  echo '{"Description": "Archived changeorder"}' | cub changeorder update --patch --where "CreatedAt < '2024-01-01'" --from-stdin

  # Update description for specific changeorders
  cub changeorder update --patch --changeorder cs1,cs2 --description "Updated description"

  # Abort a changeorder, so that it reads as Aborted rather than still on its way
  cub changeorder update my-changeorder --aborted-reason "superseded by the 1.43 rollout"

  # Put an aborted changeorder back on its way
  cub changeorder update my-changeorder --aborted-reason ""

  # Change where a changeorder is headed, which re-derives what it covers
  cub changeorder update my-changeorder --in-scope-space staging,prod-use2,prod-usw2

  # Clear the list, leaving wherever its links reach to say where it is headed
  cub changeorder update my-changeorder --in-scope-space "-"

  # Say where it is headed as a selection, which the server evaluates into its in-scope spaces
  cub changeorder update my-changeorder --where-space-field "Labels.Environment = 'prod'"

  # Narrow it with a Filter over Spaces, ANDed with the expression
  cub changeorder update my-changeorder --space-filter platform/use2-spaces

  # Take in the spaces that have come to match since, which a changeorder does not do on its own
  cub changeorder update my-changeorder --refresh-spaces

  # Clear both, keeping the spaces they last selected and handing the list back to --in-scope-space
  cub changeorder update my-changeorder --where-space-field "-" --space-filter "-"

  # Update tags for changeorders using JSON patch
  echo '{"StartTagID": "new-tag-uuid", "EndTagID": "another-tag-uuid"}' | cub changeorder update --patch --where "Description LIKE 'Release%'" --from-stdin
cub changeorder update [<slug or id>] [options...] [flags]

Options

      --aborted-reason string      why the change order was given up on; setting it aborts the change order, and passing an empty value puts it back on its way
      --annotation strings         annotations in key=value format; can separate by commas and/or use multiple instances of the flag
      --changeorder strings        target specific changeorders by slug or UUID for bulk patch (can be repeated or comma-separated)
      --delete-gate strings        delete gates in key[=true] format; can separate by commas and/or use multiple instances of the flag
      --description string         human-readable description of the change
      --filename string            Read the ConfigHub entity JSON from file, URL (https://), or stdin (-); mutually exclusive with --from-stdin
      --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"
      --from-stdin                 Read the ConfigHub entity JSON (e.g., retrieved with cub <entity> get --quiet --json) from stdin; merged with command arguments on create, and merged with command arguments and existing entity on update
  -h, --help                       help for update
      --in-scope-space strings     spaces (slug or UUID) this change order propagates into, stored on it as InScopeSpaceIDs and re-deriving what it covers (can be repeated or comma-separated; use '-' to clear)
      --label strings              labels in key=value format; can separate by commas and/or use multiple instances of the flag
  -o, --output string              Output format. One of: json, yaml, name, wide, mutations, jq=<expr>, yq=<expr>, custom-columns=<spec>
      --patch                      use patch API for individual or bulk operations
      --quiet                      No default output.
      --refresh-spaces             re-evaluate the where expression and/or space filter into the change order's in-scope spaces even if neither has changed, re-deriving what it covers if the spaces moved
      --replace                    Replace entity instead of merging when using --from-stdin or --filename
      --space-filter string        filter over Spaces (slug, space/slug, or UUID) selecting where this change order is headed, ANDed with its where expression (use '-' to clear)
      --verbose                    Detailed output, additive with default output
      --where string               Filter expression using SQL-inspired syntax. Supports conjunctions with AND. String operators: =, !=, <, >, <=, >=, LIKE, NOT LIKE, ILIKE, ~~, !~~, ~, ~*, !~, !~*. Pattern matching with LIKE/ILIKE uses % and _ wildcards. Regex operators (~, ~*, !~, !~*) support POSIX regular expressions. A related entity is referenced by prefix, as in "UpstreamUnit.Slug = 'base'"; when the reference names a list, a * segment matches any element, as in "FromLink.*.Slug = 'upgrade-app'". Examples: "Slug LIKE 'app-%'", "DisplayName ILIKE '%backend%'", "Slug ~ '^[a-z]+-[0-9]+$'"
      --where-space-field string   where expression over Spaces selecting where this change order is headed, stored on it as WhereSpace and ANDed with its space filter; while either is set, the server sets its in-scope spaces from them (use '-' to clear)

Options inherited from parent commands

      --context string   The context to use for this command
      --debug            Debug output
      --space string     space to operate in, by slug or UUID. Omitted, a list or bulk operation spans the organization and a single entity is named as <space>/<slug>

SEE ALSO