From 43aff85381257fc805705b26c1aee9c0937dcc27 Mon Sep 17 00:00:00 2001 From: Ishan09811 <156402647+Ishan09811@users.noreply.github.com> Date: Sat, 8 Jun 2024 12:12:11 +0530 Subject: [PATCH] auto git versioning --- src/pandroid/app/build.gradle.kts | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/pandroid/app/build.gradle.kts b/src/pandroid/app/build.gradle.kts index b67f9419..82b7cde2 100644 --- a/src/pandroid/app/build.gradle.kts +++ b/src/pandroid/app/build.gradle.kts @@ -10,8 +10,8 @@ android { applicationId = "com.panda3ds.pandroid" minSdk = 24 targetSdk = 33 - versionCode = 1 - versionName = "1.0" + versionCode = getVersionCode() + versionName = getVersion() testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" @@ -54,3 +54,25 @@ dependencies { implementation("androidx.constraintlayout:constraintlayout:2.1.4") implementation("com.google.code.gson:gson:2.10.1") } + +def getVersionName() { + def tag = '1.0' + try { + def process = 'git describe --tags --abbrev=0'.execute() + tag = process.text.trim() + if (tag.startsWith('v')) { + tag = tag.substring(1) + } + } catch (Exception e) { + println "Failed to get latest Git tag: ${e.message}" + } + return tag +} + +def getVersionCode() { + def versionCode = 1 + if (getVersionName() && getVersionName()[0].isDigit()) { + versionCode = getVersionName()[0].toInteger() + } + return versionCode +}