Skip to content

cub serviceaccount update

cub serviceaccount update

Update a service account or multiple service accounts

Synopsis

Update a ServiceAccount entity.

Changing a service account's organization role or its permissions requires Manage permission on the service account, and the role cannot be set above your own.

Examples:

  # Let another user manage a service account
  cub serviceaccount update --patch deploy-bot --permission Manage:user@example.com

  # Give a service account an organization role
  cub serviceaccount update --patch deploy-bot --org-role viewer

  # Label every service account of a team
  cub serviceaccount update --patch --where "Slug LIKE 'payments-%'" --label team=payments

With no name, --patch updates every service account --where selects.

cub serviceaccount update [<name or id>] [flags]

Options

      --annotation strings            annotations in key=value format; can separate by commas and/or use multiple instances of the flag
      --delete-gate strings           delete gates in key[=true] format; can separate by commas and/or use multiple instances of the flag
      --display-name string           friendly name for the entity, which need not be unique or URL-safe; an entity without one is shown by its slug
      --dry-run                       report what the command would write, and write nothing
      --filename string               Read the ConfigHub entity's fields, as YAML or JSON, from file, URL (https://), or stdin (-), as --from-stdin does; mutually exclusive with --from-stdin
      --from-stdin                    Read the ConfigHub entity's fields, as YAML or JSON, from stdin; merged with command arguments on create, and merged with command arguments and existing entity on update. A field the entity does not have, or one only the server sets, is refused; cub <entity> explain lists the fields
  -h, --help                          help for update
      --hidden-reason string          hide the entity, giving the reason as a name such as Archived: lists and bulk operations leave it out unless --include-hidden names the reason (use '-' to clear, which shows the entity again)
      --include-hidden string[="*"]   Also select hidden entities, to list or to act on: those hidden for the given HiddenReasons, comma-separated, as in --include-hidden=BackingUnit, or for any reason when given no value or "*". ConfigHub/YAML Units, which hold the configuration of other entities, are hidden with the reason BackingUnit. A --where naming entities by Slug or ID selects them whether hidden or not
      --label strings                 labels in key=value format; can separate by commas and/or use multiple instances of the flag
      --org-role string               organization-level role for the service account (admin, manager, editor, user, viewer, creator, member, or none), no higher than your own
  -o, --output string                 Output format. One of: json, yaml, name, wide, mutations, jq=<expr>, yq=<expr>, custom-columns=<spec>
      --patch                         use patch API
      --permission strings            permission in format Action:UserIDOrUsername, Action:group:GroupSlugOrID or Action:serviceaccount:ServiceAccountSlugOrID to add, or the same prefixed with - to remove (e.g., Manage:user@example.com, View:group:platform, View:serviceaccount:deploy-bot, -View:user@example.com, can be repeated)
      --quiet                         No default output.
      --replace                       Replace entity instead of merging when using --from-stdin or --filename
      --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]+$'"

Options inherited from parent commands

      --context string   The context to use for this command
      --debug            Debug output

SEE ALSO