Validate a configuration file offline. No API calls are made — this checks YAML syntax and schema validity. The file argument is optional and defaults to devhelm.yml.
devhelm validate devhelm.yml
Flag
Type
Default
Description
--strict
boolean
false
Fail on schema warnings (unused secrets, unknown fields, etc.) — not just hard errors
--skip-env
boolean
false
Skip ${VAR} substitution checks — useful when validating templates without the env vars set
-o, --output
enum
text
text or json — note this differs from list commands which support table|json|yaml
Use this in CI as an early check before running plan or deploy. Pair with --strict in pre-merge checks to surface drift you’d otherwise only catch at deploy time.
By default, deploy only creates and updates resources defined in your config. Resources not in the file are left untouched. Three pruning scopes, from safest to most destructive:
--prune deletes resources tracked in this config’s.devhelm/state.json that are no longer in the YAML. Safe in multi-config orgs — it never touches CLI-managed resources owned by other configs.
--prune-org-cli widens --prune to all CLI-managed resources in the org, even those created from other config files. Use with caution in shared workspaces.
--prune-all deletes all resources not in the config, including those created via the dashboard, Terraform, or the API.
devhelm deploy -f devhelm.yml --prune --yes
--prune-org-cli and --prune-all delete resources created outside this config file. Use with caution.
Only one deploy can run at a time per organization. If a lock is held by another process, the CLI fails immediately by default.Use --lock-timeout to wait: