chore(ENGKNOW-3966): remove VERSION file, derive version from git tags - #148
Merged
Merged
Conversation
Same approach as gor-services (ENGKNOW-3884). The VERSION file was stale (5.12.0 while v5.13.1 is released), so tag builds published the wrong version. - Remove the VERSION file; the gradle git-versioning plugin derives the version from tags (tag checkout -> X.Y.Z, otherwise <tag>-SNAPSHOT) with a 0.0.0-SNAPSHOT fallback for shallow clones. -Pversion still overrides. Add printVersion task. - CI: fetch-depth 0 for gradle jobs, no -Pversion when publishing, check the version matches the tag before publishing a release, least-privilege permissions for the publish jobs. - Replace grgit with git rev-parse for the manifest git SHA (grgit fails in git worktrees). - Remove dead release Makefile targets and scripts, and the unused .gitlab-ci.yml. Rewrite release docs in CONTRIBUTING.md. Co-Authored-By: Claude Opus 5.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.
Jira: ENGKNOW-3966
Removes the
VERSIONfile, same approach as gor-services (ENGKNOW-3884, GeneDx/gdb-gor-services#104).The
VERSIONfile was stale: it said5.12.0whilev5.13.1is the latest release. So tag builds published the wrong version (publishVersionused-Pversion=$(cat VERSION)).Changes
VERSION. Theme.qoomon.git-versioninggradle plugin now derives the version fromvX.Y.Ztags:X.Y.Z<latest tag>-SNAPSHOT0.0.0-SNAPSHOTwith a warning-Pversion=...still overrides itprintVersiontask /make gitversionprints itbuild.yml): gradle jobs usefetch-depth: 0. Publish jobs no longer pass-Pversion, have least-privilegepermissions, and the tag job checks that the gradle version matches the tag before publishing. Also fixed the swapped "snapshot"/"release" step names.git rev-parse HEADfor the manifestGit-SHA(grgit returns null in git worktrees, which broke the build).release_milestone_from_master.sh,version.shand the unused.gitlab-ci.yml(GitLab builds have been off since Dec 2024). Rewrite the release docs inCONTRIBUTING.mdand the versioning notes inCLAUDE.md.No release workflow / commitizen as in gor-services: gorpipe/gor has no tag rulesets or devops-ci-bot secrets, so releases are still created as a
vX.Y.Zrelease/tag onmainin the GitHub UI.Testing
./gradlew -q printVersion→5.14.0-SNAPSHOTon branch (the latest local tag). With-Pversion=1.2.3→1.2.3.v5.13.1→5.13.1.Implementation-Version: 5.14.0-SNAPSHOT (git SHA …),Git-SHAset../gradlew assemble test: all pass except 3UTestOCIObjectStorageSourceTypetests. These fail locally with "Missing credentials, can not create simple OCI auth" because they need the CI secrets.Note: after merge,
mainsnapshots are5.13.1-SNAPSHOT(latest tag on GitHub). Before, they were5.12.0-SNAPSHOT.🤖 Generated with Claude Code