Spinnaker Halyard "hal deploy apply ... failed" in CI
Halyard validates and applies your halconfig to bootstrap or update Spinnaker. "hal deploy apply" fails when validation catches a bad provider account, a missing field, or a service that cannot be reached during the apply.
What this error means
A CI or bootstrap step running hal deploy apply fails with a validation error or "Problems in ..." listing the halconfig section that failed.
! ERROR Failed to fully apply your deployment:
! Problems in default.provider.kubernetes.account.my-k8s-account:
- Unable to communicate with your Kubernetes cluster: ...Common causes
A provider account fails validation
Halyard validates each account during apply; an unreachable cluster or bad credential aborts the whole apply.
A malformed or incomplete halconfig
A missing required field or invalid value in halconfig fails validation before anything is applied.
How to fix it
Read the halconfig validation problem
- Read which halconfig section the error names.
- Fix the account credential, endpoint, or missing field it reports.
- Re-run
hal deploy applyafter correcting halconfig.
hal config provider kubernetes account get my-k8s-account
hal deploy applySkip validation only to unblock, then fix
As a last resort you can apply without validating to bootstrap, but you must still correct the reported problem.
hal deploy apply --no-validateHow to prevent it
- Validate provider accounts before applying halconfig.
- Keep halconfig in version control and review changes.
- Ensure cluster endpoints are reachable from the Halyard host.