Add Woodpecker validation pipeline (tofu fmt + validate) #38
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/pal-e-platform!38
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "37-woodpecker-validation-pipeline"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds a
.woodpecker.yamlpipeline that validates Terraform formatting and syntax on pull requests. Usestofu init -backend=falseso no secrets or state access are needed.Changes
.woodpecker.yaml(new): Woodpecker CI pipeline triggered onpull_requestevents only. Runstofu init -backend=false,tofu fmt -check -recursive, andtofu validatein theterraform/directory using theghcr.io/opentofu/opentofu:1.9image.Test Plan
Review Checklist
Related
plan-pal-e-platform-- Phase 6: CICloses #37
Self-Review
Reviewed the diff (1 file, 11 additions, 0 deletions). No issues found.
Checklist:
.woodpecker.yaml) -- no unnecessary changespull_requestonly -- no push-to-main trigger (validation only, per issue spec)ghcr.io/opentofu/opentofu:1.9(meets >=1.9 requirement)tofu init -backend=false,tofu fmt -check -recursive,tofu validateCloses #37PR #38 Review
BLOCKERS
None.
NITS
tofu init -backend=falsewill download 4 providers (kubernetes, helm, tailscale, minio) on every pipeline run since there is no caching. This is functional but will add 10-30 seconds to each run. Not blocking -- provider caching can be addressed later if pipeline speed becomes a concern.SOP COMPLIANCE
37-woodpecker-validation-pipelinereferences #37)plan-pal-e-platform-- Phase 6: CI)Closes #37present in PR body.woodpecker.yamlonly)DETAILS
pull_requestonly. Nopushevent. Pipeline will not run on merges to main.ghcr.io/opentofu/opentofu:1.9is the official OpenTofu image. Appropriate choice.-backend=false: Correct. The repo uses akubernetesbackend requiring cluster access and kubeconfig. Skipping backend init allows provider download and validation without secrets.cd terraformthentofu initthentofu fmt -check -recursivethentofu validate-- correct order. Format check before validate is fine (both are independent of each other post-init).when:list andsteps:list syntax are correct.VERDICT: APPROVED