diff options
Diffstat (limited to 'src/android/app/build.gradle.kts')
| -rw-r--r-- | src/android/app/build.gradle.kts | 74 |
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 | ||
| 238 | fun getGitVersion(): String { | 238 | fun 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 | ||
| 261 | fun getGitHash(): String { | 252 | fun 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 | ||
| 284 | fun getBranch(): String { | 263 | fun 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) | 266 | fun 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 | } | ||