Standardize CI on the org shape - #5
Merged
Merged
Conversation
The checks move into .github/actions/test, called by CI. Nine of the fourteen gd-* repos carried a byte-identical ci.yml and five had drifted; the drift was almost entirely legitimate -- each addon validates its own file manifest -- so those manifests are preserved verbatim. The `if: hashFiles(...)` guards are gone. A step that skips itself when its test script is absent is indistinguishable from one whose script was renamed or deleted: a skipped test is a green tick. All fourteen repos were surveyed first and every one of them does run a suite, so removing the guards costs nothing today -- which is exactly why now is the cheapest time to remove them. This repo's addon lives under gd/addon/ and its tests are Go, in cli/, so its test action differs from the twelve GDScript ones accordingly. One job named ci, timeout-minutes, and third-party actions pinned by SHA with the tag in a trailing comment. release.yml is deliberately untouched. This repo releases two artifacts behind a `target` input -- the addon or the Go CLI -- and already tests each on its own path. The generic "add Test before packaging" change the other twelve took does not fit that shape: it would have run the addon manifest check on a CLI release. Worth a look of its own. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.
Part of the
gd-*family standardization — fourteen repos, same change.What changes
.github/actions/test, called by CI. Nine of the fourteen carried a byte-identicalci.yml; five had drifted, almost entirely legitimately (each addon validates its own file manifest). Those manifests are preserved verbatim.if: hashFiles(...)guards are gone. A step that skips itself when its test script is absent is indistinguishable from one whose script was renamed or deleted — a skipped test is a green tick.setup-godotcomposite action, copied from the onecastledropandprizmcarry, rather than a download URL written intoci.yml.ci,timeout-minutes, third-party actions SHA-pinned.Why removing the guards is safe right now
All fourteen repos were surveyed first: every one of them does run a suite — twelve via
tests/test.sh, two via Go tests incli/. So removing the guards changes nothing today, which is exactly why now is the cheapest moment to do it. The next time someone renames a test script, it fails instead of going green.Phase 2 of the standardization plan (F4, F5, F6, Decisions 4–6).
release.ymldeliberately untouchedThis repo releases two artifacts behind a
targetinput — the addon or the Go CLI — and already tests each on its own path. The generic "add Test before packaging" change the other twelve took does not fit: it would run the addon manifest check on a CLI release. Worth a look of its own.