This handbook captures the practical maintenance workflow for the 11 primary Chenile repositories.
Working rules
- Do not commit unrelated changes during a version upgrade.
- Prefer annotated tags so
git describeresolves to the release tag. - Treat
chenile-parentas the release gate for all the other repositories. - Do not deploy the sibling repositories until the new
chenile-parentis visible in Maven Central.
Repository order
Use this standard order for build, tagging, and deploy:
chenile-parentchenile-corechenile-query-workflow-blueprintschenile-service-registrychenile-proxieschenile-securitychenile-messagingchenile-bddchenile-otherschenile-process-managementcconfig
Release checklist
1. Update versions
Update chenile-parent first, then update each sibling repository root pom.xml parent version and *-version.txt file.
2. Verify the scoped edits
Typical check:
git status --short
3. Run local installs
Run local build verification in repository order.
mvn install
The repository Makefiles also support:
make build
4. Commit the upgrade
Commit each repository with:
Upgraded to <version>
5. Create annotated tags
git tag -a <version> -m "<version>"
6. Push branch and tag
git push
git push origin <version>
If main has no upstream:
git push --set-upstream origin main
git push origin <version>
7. Verify git describe
After tagging:
git describe
Expected result:
<version>
If it returns something like 2.1.13-1-g<sha>, the new tag is probably lightweight while the older tag is annotated.
Fix:
git tag -d <version>
git tag -a <version> -m "<version>"
git push --force origin refs/tags/<version>
Deploy workflow
Step 1: Deploy chenile-parent
make deploy
Step 2: Wait for Maven Central
Verify that:
org.chenile:chenile-parent:<version>
is visible in Maven Central before deploying any sibling repository.
Step 3: Deploy the remaining repositories
Only after chenile-parent is visible in Maven Central, run:
make deploy
in the standard repository order.
Troubleshooting
git describe shows the previous version
Cause:
- the new tag is lightweight
- the older tag is annotated
Resolution:
- recreate the tag as annotated
- force-push the updated tag
chenile-parent deploy succeeded but sibling deploys fail
Likely cause:
- Maven Central has not indexed the new parent yet
Resolution:
- wait until the parent version is visible in Maven Central
- retry dependent deploys after publication is confirmed