summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorLinus Färnstrand <faern@faern.net>2022-10-04 16:23:25 +0200
committerLinus Färnstrand <linus@mullvad.net>2022-10-10 11:55:56 +0200
commit7fbca24356da28bf97523090f3e93729e52bbb92 (patch)
tree68d23cf29d2ce93a753757590893b7a65ce3cd27 /android
parent48235c30777a865eeef23ed7011bad8e2ece1d0d (diff)
downloadmullvadvpn-7fbca24356da28bf97523090f3e93729e52bbb92.tar.xz
mullvadvpn-7fbca24356da28bf97523090f3e93729e52bbb92.zip
Make Android fetch versionName and versionCode from mullvad-version
Diffstat (limited to 'android')
-rw-r--r--android/app/build.gradle.kts11
-rw-r--r--android/buildSrc/src/main/kotlin/Utils.kt20
2 files changed, 29 insertions, 2 deletions
diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts
index 44ea1f7f32..265e0666c0 100644
--- a/android/app/build.gradle.kts
+++ b/android/app/build.gradle.kts
@@ -28,8 +28,8 @@ android {
applicationId = "net.mullvad.mullvadvpn"
minSdkVersion(Versions.Android.minSdkVersion)
targetSdkVersion(Versions.Android.targetSdkVersion)
- versionCode = 22020002
- versionName = "2022.2-beta2"
+ versionCode = generateVersionCode()
+ versionName = generateVersionName()
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
@@ -162,6 +162,13 @@ tasks.register("ensureJniDirectoryExist") {
}
}
+tasks.create("printVersion") {
+ doLast {
+ println("versionCode=${project.android.defaultConfig.versionCode}")
+ println("versionName=${project.android.defaultConfig.versionName}")
+ }
+}
+
play {
serviceAccountCredentials = file("play-api-key.json")
}
diff --git a/android/buildSrc/src/main/kotlin/Utils.kt b/android/buildSrc/src/main/kotlin/Utils.kt
new file mode 100644
index 0000000000..96c44b78c2
--- /dev/null
+++ b/android/buildSrc/src/main/kotlin/Utils.kt
@@ -0,0 +1,20 @@
+import java.io.ByteArrayOutputStream
+import org.gradle.api.Project
+import org.gradle.process.ExecSpec
+
+fun Project.execWithOutput(spec: ExecSpec.() -> Unit) =
+ ByteArrayOutputStream().use { outputStream ->
+ exec {
+ this.spec()
+ this.standardOutput = outputStream
+ }
+ outputStream.toString().trim()
+ }
+
+fun Project.generateVersionCode() = execWithOutput {
+ commandLine("cargo", "run", "-q", "--bin", "mullvad-version", "versionCode")
+}.toInt()
+
+fun Project.generateVersionName() = execWithOutput {
+ commandLine("cargo", "run", "-q", "--bin", "mullvad-version", "versionName")
+}