Pass --delete Explicitly with flows bulk-update

For the complete documentation index, see llms.txt. For a full content snapshot, see llms-full.txt. Append .md to any kestra.io/docs/* URL for plain Markdown.

Available on:Open Source EditionEnterprise Edition

The --delete flag on kestractl flows bulk-update now defaults to false instead of true.

Why the change

The previous default of true made bulk-update the only destructive-by-default command in the CLI. A truncated YAML file, bad merge, or partial pipeline output could silently wipe every flow not present in the file. The new default matches flows namespace-sync, the Git SyncFlows and SyncNamespaceFiles plugin tasks, and the server-side namespace update behavior changed in kestra-io/kestra#1462.

Migration steps

  1. Find all CI/CD pipeline invocations of kestractl flows bulk-update.
  2. If a pipeline relied on implicit deletion, add --delete explicitly to preserve the behavior.

Before (deletion happened implicitly)

kestractl flows bulk-update --file flows.yaml

After (opt in to keep deletion behavior)

kestractl flows bulk-update --file flows.yaml --delete

Pipelines that never relied on implicit deletion require no change.

Was this page helpful?