refactor(build): decouple per-module versioning

Each module uses its own version property instead of a shared
artefactVersion, so changes to one module no longer force a
version bump across all modules. CI now supports per-module
release tags with the format <module>/v<version>.
This commit is contained in:
2026-05-29 16:20:27 +08:00
parent 3c71efeec8
commit 54e11c9b8b
9 changed files with 128 additions and 35 deletions
+14 -7
View File
@@ -28,7 +28,14 @@ plugins {
id("signing")
}
val artefactVersion: String by project
val commonToolboxVersion: String by project
val identityGeneratorVersion: String by project
val cryptoToolboxVersion: String by project
val mathToolboxVersion: String by project
val tupleVersion: String by project
val versionCatalogueVersion: String by project
version = versionCatalogueVersion
val projectUrl: String by project
val projectGithubUrl: String by project
val licenseName: String by project
@@ -40,11 +47,11 @@ repositories {
dependencies {
constraints {
api("com.onixbyte:common-toolbox:$artefactVersion")
api("com.onixbyte:identity-generator:$artefactVersion")
api("com.onixbyte:crypto-toolbox:$artefactVersion")
api("com.onixbyte:math-toolbox:$artefactVersion")
api("com.onixbyte:tuple:$artefactVersion")
api("com.onixbyte:common-toolbox:$commonToolboxVersion")
api("com.onixbyte:identity-generator:$identityGeneratorVersion")
api("com.onixbyte:crypto-toolbox:$cryptoToolboxVersion")
api("com.onixbyte:math-toolbox:$mathToolboxVersion")
api("com.onixbyte:tuple:$tupleVersion")
}
}
@@ -53,7 +60,7 @@ publishing {
create<MavenPublication>("versionCatalogue") {
groupId = group.toString()
artifactId = "version-catalogue"
version = artefactVersion
version = versionCatalogueVersion
pom {
name = "OnixByte Version Catalogue"