That would work, but it would not fit into the CI pipeline that would allow any project to push a TCK module change, and then just be able to kickoff the release pipeline to release just the TCK. I have updated the
https://ci.eclipse.org/microprofile/job/Test%20Releases/ pipeline to allow one to choose between a Full or TCK release to verify that one could run alternative types of release builds in the release pipeline. That does work, but I have been testing out the multi-module-maven-release-plugin and it has some quirks that I have so far have not been able to workaround. First is that it is using json info stuck in git tags using the [-m message] option to store a major.minor version + a buildNumber. We would have to tag using this convention or use the multi-module-maven-release-plugin for both full and tck releases.
The bigger problem is that the multi-module-maven-release-plugin is searching the commit tree for each module to see if there have been any commits past the commit associated with the module tag. This generally identifies that there are unreleased changes as our master branch is not a static branch post the previous release. Changes for the next release are typically being accumulated.
At this point I can see options:
1. Do manually releases as needed for the TCK as suggested by Mark.
2. Look into a fork of the maven-release-plugin that supports just releasing one subproject. No idea the scope of that effort as of yet.
3. Look into a fork of the multi-module-maven-release-plugin that would suppress the search of the git history for changes and simply verify that parent/api/spec artifacts for a given major.minor exist, and only release the tck major.minor.patch+1 version. This does not seem like much work, but the issue of tagging conventions is a problem.
At this point I'm wanting to take a quick look at determining the scope of option 2, and if that is non-trival, probably just documenting the process for option 1 is the best immediate step forward.