diff --git a/build.gradle.kts b/build.gradle.kts index fe0c284..a2ab0bf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -11,14 +11,16 @@ group = "pw.binom.agentik" // прочитать через rootProject.extra["projectVersion"]. // Publication version: -Pversion= (CICD publishes by release tag) с -// fallback в gradle.properties ("version=0.1.0"). Без версии maven-publish падает -// с "Invalid publication 'kotlinMultiplatform': version cannot be empty" — +// fallback в gradle.properties (ключ `agentik.version.default`, не `version` +// — иначе Gradle-мерж gradle.properties и -Pversion= отдаёт приоритет +// gradle.properties). Без версии maven-publish падает с +// "Invalid publication 'kotlinMultiplatform': version cannot be empty" — // это известный gotcha: subprojects читают rootProject.version ДО того, как // if-блок ниже успевает его установить. Фикс: provider+orElse вычисляется // eagerly, и subprojects получают готовую строку. val projectVersion: String = providers.gradleProperty("version") .map { it.trimStart('v', 'V') } // strip optional "v" prefix from tag - .getOrElse("0.1.0") + .getOrElse(providers.gradleProperty("agentik.version.default").orElse("0.1.0-SNAPSHOT").get()) version = projectVersion extra["projectVersion"] = projectVersion diff --git a/gradle.properties b/gradle.properties index 6e4dd2e..3003832 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,9 @@ -# Default version for local builds; overridden by `-Pversion=` from CI/CD. -# В CI/CD не указывай эту переменную — берётся из имени тега (см. release.yml). -version=0.1.0-SNAPSHOT +# Default version for local builds only (когда CI/CD не передал -Pversion=). +# Имя ключа специально НЕ 'version' — иначе Gradle-мерж gradle.properties и +# -Pversion= возьмёт default из gradle.properties. Передавай через CICD: +# ./gradlew ... -Pversion=$(git describe --tags) +# см. .gitea/workflows/release.yml (использует -Pversion=$GITHUB_REF_NAME). +agentik.version.default=0.1.0-SNAPSHOT # KMP jvm target uses JDK 21 for both compilation and toolchain. org.gradle.jvmargs=-Xmx4096M -XX:+UseG1GC