|
Because not all modules are yet switched to permanent SNAPSHOTs, our CI has to manage both X.Y.Z-SNAPSHOT & X.Y-SNAPSHOT versions.
In the release-job, the following needed to be done: https://git.magnolia-cms.com/projects/INTERNAL/repos/release-job/commits/e7d584eec83d377b0d97b70b6899c48bb1d05f26
In pipeline-templates, the following: https://git.magnolia-cms.com/projects/BUILD/repos/pipeline-templates/compare/diff?targetBranch=d6bb91e867cca541a9a6964531e1394b5214d615&sourceBranch=6bc2fa4b7da5d9d7527184150cd8e332041c1200&targetRepoId=2534
- shouldRunBinaryCompatibility has been updated to reflect our current versioning patterns
- X.Y-SNAPSHOT is a permanent SNAPSHOT, no longer a 'Magnolia major' version that japicmp should avoid
- ignored patch versions are now those that match the X.Y.0 pattern
- pipelines now convert the permanent X.Y SNAPSHOT into the actual X.Y.Z SNAPSHOT
- this version is fetched by parsing the Git tags (nextSnapshot.groovy)
- this version needs to be set & the module must be built again before japicmp can run
- no japicmp flag allows to easily configure the target version, unfortunately
- this code is complicated and should be turned into a Bitbucket merge check, as soon as we move to their cloud
|