diff --git a/json-builder/kotlin/build.gradle.kts b/json-builder/kotlin/build.gradle.kts index 3dc215dff..13dfe6e88 100644 --- a/json-builder/kotlin/build.gradle.kts +++ b/json-builder/kotlin/build.gradle.kts @@ -1,10 +1,15 @@ +import com.yandex.divkit.gradle.optBooleanProperty + plugins { alias(libs.plugins.kotlin.jvm) id("divkit.convention.publishing-project") id("divkit.convention.publishing-module") } -group = "com.yandex.div" +val useLegacyGroupId = optBooleanProperty("useLegacyGroupId") ?: false +if (useLegacyGroupId) { + group = "com.yandex.div" +} kotlin { jvmToolchain(17) @@ -12,5 +17,4 @@ kotlin { dependencies { api(project(":divan-dsl")) - api(project(":legacy-json-builder")) } diff --git a/json-builder/kotlin/buildSrc/src/main/kotlin/com/yandex/divkit/gradle/ProjectExtension.kt b/json-builder/kotlin/buildSrc/src/main/kotlin/com/yandex/divkit/gradle/ProjectExtension.kt index d0c59908e..e5e0e673f 100644 --- a/json-builder/kotlin/buildSrc/src/main/kotlin/com/yandex/divkit/gradle/ProjectExtension.kt +++ b/json-builder/kotlin/buildSrc/src/main/kotlin/com/yandex/divkit/gradle/ProjectExtension.kt @@ -23,6 +23,10 @@ fun Project.applyProperties(from: String) { } } -inline fun Project.optProperty(name: String): T? { - return findProperty(name) as? T +fun Project.optStringProperty(name: String): String? { + return findProperty(name) as? String +} + +fun Project.optBooleanProperty(name: String): Boolean? { + return optStringProperty(name)?.toBoolean() } diff --git a/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-module.gradle.kts b/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-module.gradle.kts index 712481905..49cd929ba 100644 --- a/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-module.gradle.kts +++ b/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-module.gradle.kts @@ -1,7 +1,7 @@ package divkit.convention import com.yandex.divkit.gradle.PublicationType -import com.yandex.divkit.gradle.optProperty +import com.yandex.divkit.gradle.optStringProperty import com.yandex.divkit.gradle.sourceSets import java.net.URI @@ -20,12 +20,12 @@ val bucketPassword: String? by rootProject.extra val publishToBucket: Boolean by rootProject.extra extra.apply { - set("signing.keyId", rootProject.optProperty("signing.keyId") ?: System.getenv("SIGNING_KEY_ID")) - set("signing.password", rootProject.optProperty("signing.password") ?: System.getenv("SIGNING_PASSWORD")) - set("signing.secretKeyRingFile", rootProject.optProperty("signing.secretKeyRingFile") ?: System.getenv("SIGNING_SECRET_KEY_RING_FILE")) + set("signing.keyId", rootProject.optStringProperty("signing.keyId") ?: System.getenv("SIGNING_KEY_ID")) + set("signing.password", rootProject.optStringProperty("signing.password") ?: System.getenv("SIGNING_PASSWORD")) + set("signing.secretKeyRingFile", rootProject.optStringProperty("signing.secretKeyRingFile") ?: System.getenv("SIGNING_SECRET_KEY_RING_FILE")) } -group = "com.yandex.divkit.json-builder" +group = "com.yandex.divkit.kotlin-json-builder" version = divkitVersionSuffixed if (publishToMavenCentral) { diff --git a/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-project.gradle.kts b/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-project.gradle.kts index 9e18c00e5..0b60095d3 100644 --- a/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-project.gradle.kts +++ b/json-builder/kotlin/buildSrc/src/main/kotlin/publishing-project.gradle.kts @@ -1,7 +1,7 @@ package divkit.convention import com.yandex.divkit.gradle.applyProperties -import com.yandex.divkit.gradle.optProperty +import com.yandex.divkit.gradle.optStringProperty import java.net.URI plugins { @@ -12,16 +12,16 @@ plugins { applyProperties(from = "$rootDir/bucket.properties") val divkitVersionSuffixed: String by extra -val sonatypeUsername: String? by extra(optProperty("sonatypeUsername") ?: System.getenv("SONATYPE_USERNAME")) -val sonatypePassword: String? by extra(optProperty("sonatypePassword") ?: System.getenv("SONATYPE_PASSWORD")) +val sonatypeUsername: String? by extra(optStringProperty("sonatypeUsername") ?: System.getenv("SONATYPE_USERNAME")) +val sonatypePassword: String? by extra(optStringProperty("sonatypePassword") ?: System.getenv("SONATYPE_PASSWORD")) val publishToMavenCentral: Boolean by extra(sonatypeUsername != null && sonatypePassword != null) -val bucketReleasesUrl: URI by extra(URI.create(optProperty("bucketReleasesUrl").orEmpty())) -val bucketSnapshotsUrl: URI by extra(URI.create(optProperty("bucketSnapshotsUrl").orEmpty())) -val bucketUsername: String? by extra(optProperty("bucketUsername") ?: System.getenv("BUCKET_USERNAME")) -val bucketPassword: String? by extra(optProperty("bucketPassword") ?: System.getenv("BUCKET_PASSWORD")) +val bucketReleasesUrl: URI by extra(URI.create(optStringProperty("bucketReleasesUrl").orEmpty())) +val bucketSnapshotsUrl: URI by extra(URI.create(optStringProperty("bucketSnapshotsUrl").orEmpty())) +val bucketUsername: String? by extra(optStringProperty("bucketUsername") ?: System.getenv("BUCKET_USERNAME")) +val bucketPassword: String? by extra(optStringProperty("bucketPassword") ?: System.getenv("BUCKET_PASSWORD")) val publishToBucket: Boolean by extra(bucketUsername != null && bucketPassword != null) -group = "com.yandex.divkit.json-builder" +group = "com.yandex.divkit.kotlin-json-builder" version = divkitVersionSuffixed if (publishToMavenCentral) { diff --git a/json-builder/kotlin/buildSrc/src/main/kotlin/version.gradle.kts b/json-builder/kotlin/buildSrc/src/main/kotlin/version.gradle.kts index e18013e06..eae58c48c 100644 --- a/json-builder/kotlin/buildSrc/src/main/kotlin/version.gradle.kts +++ b/json-builder/kotlin/buildSrc/src/main/kotlin/version.gradle.kts @@ -2,7 +2,7 @@ package divkit.convention import com.yandex.divkit.gradle.PublicationType import com.yandex.divkit.gradle.Version -import com.yandex.divkit.gradle.optProperty +import com.yandex.divkit.gradle.optStringProperty val versionFile = rootProject.layout.projectDirectory.file("../../version") val version = providers.fileContents(versionFile).asText.get() @@ -10,6 +10,6 @@ val (major, minor, patch) = version.trim() .split('.') .map(Integer::parseInt) -val publicationType by extra(PublicationType.fromString(project.optProperty("publicationType"))) +val publicationType by extra(PublicationType.fromString(project.optStringProperty("publicationType"))) val divkitVersion by extra(Version(project, major, minor, patch)) val divkitVersionSuffixed by extra("${divkitVersion.versionName}${publicationType.getVersionSuffix()}") diff --git a/json-builder/kotlin/legacy-json-builder/build.gradle.kts b/json-builder/kotlin/legacy-json-builder/build.gradle.kts index 7b7ab082c..c42b5015b 100644 --- a/json-builder/kotlin/legacy-json-builder/build.gradle.kts +++ b/json-builder/kotlin/legacy-json-builder/build.gradle.kts @@ -1,10 +1,7 @@ plugins { alias(libs.plugins.kotlin.jvm) - id("divkit.convention.publishing-module") } -group = "com.yandex.div" - kotlin { jvmToolchain(17)