diff --git a/build.gradle.kts b/build.gradle.kts index 05abe8ef86be87ebe94ce283adb64dd4d9743809..a0f9cf867057f5c2d14d914585da571c3acef4c2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,6 +8,7 @@ */ plugins { + id("justjanne.version") id("justjanne.dokka") id("justjanne.publish-maven-central") idea @@ -15,4 +16,3 @@ plugins { } group = "de.justjanne.libquassel" -version = "0.10.1" diff --git a/gradle/convention/src/main/kotlin/justjanne.version.gradle.kts b/gradle/convention/src/main/kotlin/justjanne.version.gradle.kts new file mode 100644 index 0000000000000000000000000000000000000000..3c0ef79433e737933dc6edbb193a5adfd02a6246 --- /dev/null +++ b/gradle/convention/src/main/kotlin/justjanne.version.gradle.kts @@ -0,0 +1,23 @@ +import org.gradle.api.Project + +/* + * libquassel + * Copyright (c) 2022 Janne Mareike Koschinski + * + * This Source Code Form is subject to the terms of the Mozilla Public License, + * v. 2.0. If a copy of the MPL was not distributed with this file, You can + * obtain one at https://mozilla.org/MPL/2.0/. + */ + +version = cmd("git", "describe", "--always", "--tags", "HEAD") ?: "1.0.0" + +fun Project.cmd(vararg command: String) = try { + val stdOut = java.io.ByteArrayOutputStream() + exec { + commandLine(*command) + standardOutput = stdOut + } + stdOut.toString(Charsets.UTF_8.name()).trim() +} catch (e: Throwable) { + null +}