semver-gradle/examples/test/build.gradle

65 lines
1.1 KiB
Groovy

plugins {
id 'java'
id 'application'
id("net.thauvin.erik.gradle.semver")
}
defaultTasks 'run'
application {
mainClass = 'App'
}
// version = 1.0
def f = new File("version.properties")
def semverProcessor = 'net.thauvin.erik:semver:1.2.2-SNAPSHOT'
repositories {
mavenLocal()
mavenCentral()
maven {
name = "SonatypeSnapshots"
url = uri("https://oss.sonatype.org/content/repositories/snapshots")
}
}
dependencies {
annotationProcessor semverProcessor
compileOnly semverProcessor
}
application {
println project.version
project.afterEvaluate {
println "afterEvaluate: $project.version"
}
}
incrementBuildMeta {
doFirst {
//buildMeta = sprintf("%03d", (buildMeta as Integer) + 1)
buildMeta = new Date().format("yyyyMMddHHmmss")
}
}
run {
doFirst {
println "$semver"
args = [f.name]
}
}
tasks.register('echoVersion', Exec) {
commandLine('echo', "${-> version}")
}
semver {
properties = "${f.name}"
keysPrefix = f.name.substring(0, f.name.indexOf(".") + 1)
buildMetaKey = "meta"
semverKey = "fullversion"
}