mirror of
https://github.com/Astatin3/photonvision-2025.0.0-beta-6.git
synced 2026-06-08 16:18:03 -06:00
43 lines
1.6 KiB
Groovy
43 lines
1.6 KiB
Groovy
|
|
import java.nio.file.Path
|
||
|
|
import java.time.LocalDateTime
|
||
|
|
import java.time.format.DateTimeFormatter
|
||
|
|
|
||
|
|
gradle.allprojects {
|
||
|
|
ext.getCurrentVersion = {
|
||
|
|
->
|
||
|
|
def stdout = new ByteArrayOutputStream()
|
||
|
|
String tagIsh
|
||
|
|
try {
|
||
|
|
exec {
|
||
|
|
commandLine 'git', 'describe', '--tags', "--match=v*"
|
||
|
|
standardOutput = stdout
|
||
|
|
}
|
||
|
|
tagIsh = stdout.toString().trim().toLowerCase()
|
||
|
|
} catch (Exception e) {
|
||
|
|
tagIsh = "dev-Unknown"
|
||
|
|
}
|
||
|
|
|
||
|
|
// Dev tags: v2021.1.6-3-gf922466d
|
||
|
|
// We're specifically looking to capture the middle -3-
|
||
|
|
boolean isDev = tagIsh.matches(".*-[0-9]*-g[0-9a-f]*")
|
||
|
|
if (isDev && !tagIsh.startsWith("dev-")) tagIsh = "dev-" + tagIsh
|
||
|
|
println("Picked up version: " + tagIsh)
|
||
|
|
return tagIsh
|
||
|
|
}
|
||
|
|
|
||
|
|
if (!ext.has("versionString")) {
|
||
|
|
ext.versionString = getCurrentVersion()
|
||
|
|
}
|
||
|
|
|
||
|
|
ext.writePhotonVersionFile = {File versionFileIn, Path path, String version ->
|
||
|
|
println("Writing " + version + " to " + path.toAbsolutePath().toString())
|
||
|
|
String date = DateTimeFormatter.ofPattern("yyyy-M-d hh:mm:ss").format(LocalDateTime.now())
|
||
|
|
File versionFileOut = new File(path.toAbsolutePath().toString())
|
||
|
|
versionFileOut.delete()
|
||
|
|
def read = versionFileIn.text.replace('${version}', version).replace('${date}', date)
|
||
|
|
if (!versionFileOut.parentFile.exists()) versionFileOut.parentFile.mkdirs()
|
||
|
|
if (!versionFileOut.exists()) versionFileOut.createNewFile()
|
||
|
|
versionFileOut.write(read)
|
||
|
|
}
|
||
|
|
}
|