ci: adopt the gt-managed pipeline - #47
Closed
pedromvgomes wants to merge 2 commits into
Closed
Conversation
Moves this repository onto gt's centrally-owned CI/CD orchestration. gt owns the entry points and the shared stages; the ci-*/cd-* files hold this repo's own work and gt never touches them again. ci.yml's lint and build jobs become ci-build, and test becomes ci-test. release.yml's goreleaser job becomes cd-publish, keeping the broader `v*` tag pattern this repository has always released on rather than being narrowed to v*.*.* for uniformity's sake. Two things changed rather than moved: The suite now runs with -race and writes a coverage profile, uploaded as gt-coverage. That is what lets the bulwark stage consume it instead of running the tests a second time, so the repository gains a coverage gate without paying for a second suite run. goreleaser's contents: write is now declared on the job. release.yml had it at workflow level, and extracting the job alone would have dropped it silently — the release would have failed at the point of creating itself. gt and agentic-toolkit are the two halves of the same idea: gt governs how a repository is shaped, agtk governs what its agents know. This repository being governed by the other is the point, not a coincidence. Branch protection needs exactly one check after this: `ci-gate`.
bulwark no longer takes tests-mode or go-report as action inputs; which side produces coverage is coverage.source in .bulwark.yml. Without this the removed inputs would be silently ignored and bulwark would re-run the suite ci-test already ran.
Owner
Author
|
Superseded by #48, which is the same onboarding rebased onto current main and with the CI jobs actually moved out of Recording this branch's tip so nothing here is lost: The only files here that #48 does not carry are |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Seventh repository onto gt's pipeline. Do not merge yet — see below.
What moved
ci.yml→lint,buildci-build.ymlci.yml→testci-test.yml, now with-raceand a coverage profilerelease.yml→goreleasercd-publish.yml, keeping thev*tag patternThe
v*pattern is preserved rather than narrowed tov*.*.*— this repository has always released on it, and uniformity is not a reason to change when a repo ships.Two things changed rather than moved
The suite gains
-raceand a coverage profile, uploaded asgt-coverage. That is what lets the bulwark stage consume it instead of running the tests again, so the repo gets a coverage gate without paying for a second suite run.goreleasernow declarescontents: writeon the job.release.ymlhad it at workflow level, and extracting the job alone drops it silently —actionlintis perfectly happy, and the failure would only appear when a real release tried to create itself. That trap has now bitten twice in this rollout.Expected to fail until gt v1.0.0 ships
Callers pin
reusable-*.yml@v1, which does not exist yet — the workflow fails to resolve with zero jobs started.Before merging
Branch protection must move to exactly one required check,
ci-gate, in the same window as the merge.gt repo settings applydoes this.