summaryrefslogtreecommitdiff
path: root/src/android/app/build.gradle.kts
diff options
context:
space:
mode:
Diffstat (limited to 'src/android/app/build.gradle.kts')
-rw-r--r--src/android/app/build.gradle.kts74
1 files changed, 18 insertions, 56 deletions
diff --git a/src/android/app/build.gradle.kts b/src/android/app/build.gradle.kts
index d62254dd3..06e59d1ac 100644
--- a/src/android/app/build.gradle.kts
+++ b/src/android/app/build.gradle.kts
@@ -235,71 +235,33 @@ dependencies {
235 implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") 235 implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0")
236} 236}
237 237
238fun getGitVersion(): String { 238fun runGitCommand(command: List<String>): String {
239 var versionName = "0.0" 239 return try {
240 240 ProcessBuilder(command)
241 try {
242 versionName = ProcessBuilder("git", "describe", "--always", "--long")
243 .directory(project.rootDir) 241 .directory(project.rootDir)
244 .redirectOutput(ProcessBuilder.Redirect.PIPE) 242 .redirectOutput(ProcessBuilder.Redirect.PIPE)
245 .redirectError(ProcessBuilder.Redirect.PIPE) 243 .redirectError(ProcessBuilder.Redirect.PIPE)
246 .start().inputStream.bufferedReader().use { it.readText() } 244 .start().inputStream.bufferedReader().use { it.readText() }
247 .trim() 245 .trim()
248 .replace(Regex("(-0)?-[^-]+$"), "")
249 } catch (e: Exception) { 246 } catch (e: Exception) {
250 logger.error("Cannot find git, defaulting to dummy version number") 247 logger.error("Cannot find git")
251 } 248 ""
252
253 if (System.getenv("GITHUB_ACTIONS") != null) {
254 val gitTag = System.getenv("GIT_TAG_NAME")
255 versionName = gitTag ?: versionName
256 } 249 }
257
258 return versionName
259} 250}
260 251
261fun getGitHash(): String { 252fun getGitVersion(): String {
262 try { 253 val versionName = if (System.getenv("GITHUB_ACTIONS") != null) {
263 val processBuilder = ProcessBuilder("git", "rev-parse", "--short", "HEAD") 254 val gitTag = System.getenv("GIT_TAG_NAME") ?: ""
264 processBuilder.directory(project.rootDir) 255 gitTag
265 val process = processBuilder.start() 256 } else {
266 val inputStream = process.inputStream 257 runGitCommand(listOf("git", "describe", "--always", "--long"))
267 val errorStream = process.errorStream 258 .replace(Regex("(-0)?-[^-]+$"), "")
268 process.waitFor()
269
270 return if (process.exitValue() == 0) {
271 inputStream.bufferedReader()
272 .use { it.readText().trim() } // return the value of gitHash
273 } else {
274 val errorMessage = errorStream.bufferedReader().use { it.readText().trim() }
275 logger.error("Error running git command: $errorMessage")
276 "dummy-hash" // return a dummy hash value in case of an error
277 }
278 } catch (e: Exception) {
279 logger.error("$e: Cannot find git, defaulting to dummy build hash")
280 return "dummy-hash" // return a dummy hash value in case of an error
281 } 259 }
260 return versionName.ifEmpty { "0.0" }
282} 261}
283 262
284fun getBranch(): String { 263fun getGitHash(): String =
285 try { 264 runGitCommand(listOf("git", "rev-parse", "--short", "HEAD")).ifEmpty { "dummy-hash" }
286 val processBuilder = ProcessBuilder("git", "rev-parse", "--abbrev-ref", "HEAD") 265
287 processBuilder.directory(project.rootDir) 266fun getBranch(): String =
288 val process = processBuilder.start() 267 runGitCommand(listOf("git", "rev-parse", "--abbrev-ref", "HEAD")).ifEmpty { "dummy-hash" }
289 val inputStream = process.inputStream
290 val errorStream = process.errorStream
291 process.waitFor()
292
293 return if (process.exitValue() == 0) {
294 inputStream.bufferedReader()
295 .use { it.readText().trim() } // return the value of gitHash
296 } else {
297 val errorMessage = errorStream.bufferedReader().use { it.readText().trim() }
298 logger.error("Error running git command: $errorMessage")
299 "dummy-hash" // return a dummy hash value in case of an error
300 }
301 } catch (e: Exception) {
302 logger.error("$e: Cannot find git, defaulting to dummy build hash")
303 return "dummy-hash" // return a dummy hash value in case of an error
304 }
305}