ci(release): publish versioned artifacts
This commit is contained in:
@@ -4,7 +4,9 @@ plugins {
|
||||
}
|
||||
|
||||
group = "games.dmg"
|
||||
version = "0.1.0"
|
||||
version = providers.gradleProperty("releaseVersion")
|
||||
.orElse("0.1.0-SNAPSHOT")
|
||||
.get()
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
@@ -24,6 +26,38 @@ java {
|
||||
toolchain.languageVersion.set(JavaLanguageVersion.of(17))
|
||||
}
|
||||
|
||||
val generatedVersionDirectory = layout.buildDirectory.dir("generated/sources/version/java/main")
|
||||
val generateVersionSource = tasks.register("generateVersionSource") {
|
||||
val pluginVersion = providers.provider { project.version.toString() }
|
||||
inputs.property("pluginVersion", pluginVersion)
|
||||
outputs.dir(generatedVersionDirectory)
|
||||
|
||||
doLast {
|
||||
val output = generatedVersionDirectory.get()
|
||||
.file("games/dmg/accountmanager/BuildMetadata.java")
|
||||
.asFile
|
||||
output.parentFile.mkdirs()
|
||||
output.writeText(
|
||||
"""package games.dmg.accountmanager;
|
||||
|
||||
public final class BuildMetadata {
|
||||
public static final String VERSION = "${pluginVersion.get()}";
|
||||
|
||||
private BuildMetadata() {}
|
||||
}
|
||||
"""
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
sourceSets.main {
|
||||
java.srcDir(generatedVersionDirectory)
|
||||
}
|
||||
|
||||
tasks.compileJava {
|
||||
dependsOn(generateVersionSource)
|
||||
}
|
||||
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user