Skip to content

feat: route jenkins/circleci through cigen, retire template generators (#804)#21

Merged
intel352 merged 3 commits into
mainfrom
feat/cigen-jenkins-circleci-804
May 31, 2026
Merged

feat: route jenkins/circleci through cigen, retire template generators (#804)#21
intel352 merged 3 commits into
mainfrom
feat/cigen-jenkins-circleci-804

Conversation

@intel352
Copy link
Copy Markdown
Contributor

Summary

PR 2 of 3 for #804. Routes the plugin's jenkins and circleci platforms through the workflow engine's config-derived cigen renderers (shipped in workflow v0.68.0, PR #810) and retires the legacy text/template generators. All four step.ci_generate platforms are now config-derived from the same CIPlan.

Satisfies acceptance #2: step.ci_generate for jenkins/circleci routes through cigen; jenkins/circleci template generators removed.

Changes

  • go.mod — bump github.com/GoCodeAlone/workflow v0.67.0 → v0.68.0 (first release with cigen.RenderJenkins/RenderCircleCI). plugin.json minEngineVersion → 0.68.0.
  • internal/generator.go — the platform switch routes all four platforms through cigen (4-way render switch). Deleted: the registry map, the Generator interface, the legacy default: template branch, and the internal/platforms import.
  • Deleted internal/platforms/ (9 files) — jenkins/circleci template generators plus the GHA/GitLab template files that were already off the production path since feat: smart GHA/GitLab generation via cigen (PR5/7) #18 (their tests were the only remaining referees). Intentional full-package retirement.
  • internal/generator_test.go — replaced the two _TemplateUnchanged tests with _CigenMarkers tests (real ExecuteCIGenerate → config-derived markers: secret wiring, wfctl migrations up, smoke, wfctl infra apply; absence of go test/wfctl deploy --image/docker build per ADR 0044). Path-safety preserved via a direct validateRelativeOutputPath unit test (the registry-injection seam is gone); deleted staticGenerator/registerTestGenerator.
  • integration_test.goTestIntegration_ExecuteCIGenerate_JenkinsCircleCI drives the real ExecuteCIGenerate for both platforms across the external package boundary (acceptance fix: use released workflow dependency #2 behavior proof). Existing pipeline-wiring mock tests retained.
  • plugin.json — version 0.1.6 → 0.2.0 (behavior change: jenkins/circleci now config-derived).
  • README.md — corrected (all four platforms config-derived).

Verification

  • go test ./... — PASS (root + internal). _CigenMarkers for all 4 platforms + the real-ExecuteCIGenerate integration test green.
  • go vet ./... — clean. golangci-lint run --new-from-rev=origin/main ./... — 0 issues.
  • Plugin builds in the wfctl-discoverable layout (<dir>/ci-generator/ci-generator + plugin.json).

Sequencing

Depends on workflow v0.68.0 (merged + tagged). After merge: tag plugin v0.2.0.

Note

Copilot review intentionally not requested (broken). Merge gate = adversarial review clean + two-stage code review APPROVED + CI green.

🤖 Generated with Claude Code

@intel352 intel352 merged commit 757ca93 into main May 31, 2026
3 checks passed
@intel352 intel352 deleted the feat/cigen-jenkins-circleci-804 branch May 31, 2026 23:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant