Merge pull request #5177 from keymanapp/cherrypick/android/5145-add-clean-flag

chore(android): Add -clean flag to build script 🍒
This commit is contained in:
Darcy Wong 2021-05-28 09:55:38 +07:00 committed by GitHub
commit 48c5e2656c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 38 additions and 7 deletions

View file

@ -40,7 +40,7 @@ android {
String env_release_store_password = System.getenv("release_store_password")
String env_release_key_alias = System.getenv("release_key_alias")
String env_release_key_password = System.getenv("release_key_password")
if (env_release_store_file != null) {
if (env_release_store_file != null && file(env_release_store_file).exists()) {
signingConfigs {
release {
println "Using signing from environment"
@ -61,7 +61,7 @@ android {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
if (env_release_store_file != null) {
if (env_release_store_file != null && file(env_release_store_file).exists()) {
signingConfig signingConfigs.release
}
}
@ -85,7 +85,7 @@ sentry {
}
String env_keys_json_file = System.getenv("keys_json_file")
if (env_keys_json_file != null) {
if (env_keys_json_file != null && file(env_keys_json_file).exists()) {
apply plugin: 'com.github.triplet.play'
play {

View file

@ -1,5 +1,6 @@
#!/bin/bash
# Build Keyman Engine Android and KMAPro
# Build Keyman Engine for Android, Keyman for Android, and FirstVoices Android app
# Use '-clean' flag to clean build artifacts (won't do other build steps)
# Set sensible script defaults:
# set -e: Terminate script if a command returns an error
@ -20,8 +21,38 @@ THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BA
#
SHLVL=0
# Clean build artifacts: keyman-engine.aar libaries, output and upload directories
clean ( ) {
cd "$KEYMAN_ROOT/android"
find . -name "keyman-engine.aar" | while read fname; do
echo "Cleaning $fname"
rm $fname
done
if [ -f "$KEYMAN_ROOT/oem/firstvoices/android/app/libs/keyman-engine.aar" ]; then
echo "Cleaning OEM FirstVoices keyman-engine.aar"
rm "$KEYMAN_ROOT/oem/firstvoices/android/app/libs/keyman-engine.aar"
fi
if [ -d "$KEYMAN_ROOT/android/KMAPro/kMAPro/build/outputs" ]; then
echo "Cleaning KMAPro build outputs directory"
rm -rf "$KEYMAN_ROOT/android/KMAPro/kMAPro/build/outputs"
fi
if [ -d "$KEYMAN_ROOT/android/upload" ]; then
echo "Cleaning upload directory"
rm -rf "$KEYMAN_ROOT/android/upload"
fi
}
echo Build KMEA and KMAPro:
# Check about cleaning artifact paths
if [[ "$1" == "-clean" ]] ; then
clean
exit
fi
# Building Keyman Engine for Android
cd "$KEYMAN_ROOT/android/KMEA"

View file

@ -30,7 +30,7 @@ android {
String env_release_store_password = System.getenv("oem_firstvoices_release_store_password")
String env_release_key_alias = System.getenv("oem_firstvoices_release_key_alias")
String env_release_key_password = System.getenv("oem_firstvoices_release_key_password")
if (env_release_store_file != null) {
if (env_release_store_file != null && file(env_release_store_file).exists()) {
signingConfigs {
release {
println "Using signing from environment"
@ -49,7 +49,7 @@ android {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
if (env_release_store_file != null) {
if (env_release_store_file != null && file(env_release_store_file).exists()) {
signingConfig signingConfigs.release
}
}
@ -73,7 +73,7 @@ sentry {
}
String env_keys_json_file = System.getenv("oem_firstvoices_keys_json_file")
if (env_keys_json_file != null) {
if (env_keys_json_file != null && file(env_keys_json_file).exists()) {
apply plugin: 'com.github.triplet.play'
play {