woodpecker-cli lint: Validate Woodpecker Pipelines
woodpecker-cli lint validates a Woodpecker pipeline file against the schema and flags deprecated or risky settings before the pipeline runs.
Woodpecker CI (the Drone fork) uses .woodpecker.yml or files under .woodpecker/. woodpecker-cli lint catches schema errors and warns about deprecated keys so a config change does not silently break.
What it does
woodpecker-cli lint parses the pipeline file(s), validates against the schema, and reports errors plus warnings for deprecated fields or missing recommended settings. It exits nonzero on error so it gates a PR.
Common usage
woodpecker-cli lint # lint .woodpecker.yml or .woodpecker/
woodpecker-cli lint .woodpecker/build.yml
woodpecker-cli lint --strict # treat warnings as errorsOptions
| Flag | What it does |
|---|---|
| [path] | Pipeline file or directory (defaults to .woodpecker) |
| --strict | Fail on warnings, not just errors |
| --plugins-privileged <list> | Plugins allowed to run privileged during lint |
| --plugins-trusted-clone <list> | Trusted clone plugins for validation |
In CI
Run woodpecker-cli lint in a PR check (it can run in a Woodpecker step itself) so pipeline YAML mistakes are caught before merge. Use --strict to force deprecations to be fixed rather than ignored.
Common errors in CI
Errors read like Error: pipeline: ... field steps is required and yaml: unmarshal errors: cannot unmarshal !!str into .... Deprecation warnings such as pipeline section is deprecated, use steps become failures with --strict. command not found: woodpecker-cli means the CLI is not installed on the runner.