cub run where-filter
cub run where-filter
Returns true if all terms of the conjunction of relational expressions evaluate to true for at least one matching path of a resource of the specified type. Intended to be used for filtering rather than validating, though it returns the same output type. Validating. Supported toolchains: AppConfig/Env, AppConfig/INI, AppConfig/JSON, AppConfig/Properties, AppConfig/Text, AppConfig/YAML, AppConfig/TOML, ConfigHub/YAML, Kubernetes/YAML
cub run where-filter [flags]
Options
-h, --help help for where-filter
--resource-type string (required) Resource type (Schema) to match
--where-expression AND (required) The specified string is an expression for the purpose of evaluating whether the configuration data matches the filter. It supports conjunctions using AND of relational expressions of the form *path* *operator* *literal*. The path specifications are dot-separated, for both map fields and array indices, as in `spec.template.spec.containers.0.image = 'ghcr.io/headlamp-k8s/headlamp:latest' AND spec.replicas > 1`. Path expressions support `*` for wildcard array or map segments and `?key=value` syntax for associative matches of array elements containing objects with a `key` attribute. Strings support the following operators: `<`, `>`, `<=`, `>=`, `=`, `!=`, `LIKE`, `NOT LIKE`, `ILIKE`, `~~`, `!~~`, `~`, `!~`, `~*`, `!~*`, `IN`, `NOT IN`. String pattern operators: `LIKE` and `~~` for pattern matching with `%` and `_` wildcards, `ILIKE` for case-insensitive pattern matching, `NOT LIKE` and `!~~` for negated pattern matching. String regex operators: `~` for regex matching, `~*` for case-insensitive regex, `!~` and `!~*` for regex not matching (case-sensitive and insensitive). Integers support the following operators: `<`, `>`, `<=`, `>=`, `=`, `!=`, `IN`, `NOT IN`. Boolean values support equality and inequality only. The `IN` and `NOT IN` operators accept a comma-separated list of values in parentheses, such as `spec.template.spec.containers.0.image#reference IN (':latest', ':arm64-latest')`. The syntax `.|` requires the preceding path to exist; otherwise the relation `!=` will always return true regardless what it is compared with. String literals are quoted with single quotes, such as `'string'`. Integer and boolean literals are also supported for attributes of those types.
Options inherited from parent commands
--change-desc string change description
--changeset string changeset to associate units with
--context string The context to use for this command
--debug Debug output
--dry-run dry run mode: execute functions but skip updating configuration data
--executor-space string Space ID or slug whose executor to use for builtin functions (org-level only)
--filter string filter to apply (slug, space/filter, or UUID)
--livestate-type string Invoke the function on the live state and use the flag value as the toolchain type for live state.
-o, --output string Output format. One of: json, yaml, name, wide, mutations, jq=<expr>, yq=<expr>, custom-columns=<spec>
--quiet No output
--show string Select which part of the function response to display. One of: output, values, data
--space string space ID to perform command on
--toolchain string Toolchain type for the function invocations (default "Kubernetes/YAML")
--unit strings target specific units by slug or UUID (can be repeated or comma-separated)
--wait wait for completion
--where string where filter
--where-data string where data filter
--where-resource string filter which resources the function operates on
--worker string worker to execute the function
SEE ALSO
- cub run - invoke a function