diff --git a/.gitignore b/.gitignore index c361e158a19..71f2e182cf9 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,7 @@ hs_err_pid* **/build/** **/log/** **/dependency-reduced-pom.xml +**/version.json # Frontend build output **/node_modules/** diff --git a/prime-router/build.gradle.kts b/prime-router/build.gradle.kts index f470edb4efa..1f79608057d 100644 --- a/prime-router/build.gradle.kts +++ b/prime-router/build.gradle.kts @@ -23,7 +23,9 @@ import org.apache.commons.io.FilenameUtils import org.apache.tools.ant.filters.ReplaceTokens import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.jooq.meta.jaxb.ForcedType +import java.io.ByteArrayOutputStream import java.io.FileInputStream +import java.nio.charset.StandardCharsets import java.time.LocalDateTime import java.time.format.DateTimeFormatter import java.util.Properties @@ -497,9 +499,22 @@ tasks.azureFunctionsPackage { finalizedBy("copyAzureScripts") } +tasks.register("generateVersionFile") { + doLast { + val stdout = ByteArrayOutputStream() + exec { + commandLine("git", "rev-parse", "--short", "HEAD") + standardOutput = stdout + } + val currentCommit = stdout.toString(StandardCharsets.UTF_8).trim() + File("./version.json").writeText("{\"commitId\": \"$currentCommit\"}") + } +} + val azureResourcesTmpDir = File(buildDir, "$azureFunctionsDir-resources/$azureAppName") val azureResourcesFinalDir = File(buildDir, "$azureFunctionsDir/$azureAppName") tasks.register("gatherAzureResources") { + dependsOn("generateVersionFile") from("./") into(azureResourcesTmpDir) include("metadata/**/*.yml") @@ -509,6 +524,7 @@ tasks.register("gatherAzureResources") { include("metadata/**/*.csv") include("settings/**/*.yml") include("assets/**/*__inline.html") + include("version.json") } tasks.register("copyAzureResources") {