summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorLinus Färnstrand <linus@mullvad.net>2020-03-30 18:13:33 +0200
committerLinus Färnstrand <linus@mullvad.net>2020-03-30 18:13:33 +0200
commit0f09b3ea7e56382772508a717c1bca3422a9fd52 (patch)
treeb2ee6c66d327a4be4f8686fdf61eb70955fca55f
parentbb16d4bb7a26bdd578d46df9fafa7008b6339e3f (diff)
parenteae5cf9f4f8fd30db4fbe11c4c0bc91db791b25e (diff)
downloadmullvadvpn-0f09b3ea7e56382772508a717c1bca3422a9fd52.tar.xz
mullvadvpn-0f09b3ea7e56382772508a717c1bca3422a9fd52.zip
Merge branch 'build-android-app-bundle'
-rwxr-xr-xbuild-apk.sh39
-rwxr-xr-xci/buildserver-build.sh4
-rwxr-xr-xci/buildserver-upload.sh4
3 files changed, 32 insertions, 15 deletions
diff --git a/build-apk.sh b/build-apk.sh
index cf2a54cafd..8f1a8b9998 100755
--- a/build-apk.sh
+++ b/build-apk.sh
@@ -7,18 +7,28 @@ cd "$SCRIPT_DIR"
PRODUCT_VERSION="$(node -p "require('$SCRIPT_DIR/gui/package.json').version" | sed -Ee 's/\.0//g')"
+BUILD_TYPE="release"
+GRADLE_TASK="assembleRelease"
+BUNDLE_TASK="bundleRelease"
+FILE_SUFFIX=""
+CARGO_ARGS="--release"
+BUILD_BUNDLE="no"
-if [[ "${1:-""}" == "--dev-build" ]]; then
- BUILD_TYPE="debug"
- GRADLE_TASK="assembleDebug"
- APK_SUFFIX="-debug"
- CARGO_ARGS=""
-else
- BUILD_TYPE="release"
- GRADLE_TASK="assembleRelease"
- APK_SUFFIX=""
- CARGO_ARGS="--release"
+while [ ! -z "${1:-""}" ]; do
+ if [[ "${1:-""}" == "--dev-build" ]]; then
+ BUILD_TYPE="debug"
+ GRADLE_TASK="assembleDebug"
+ BUNDLE_TASK="bundleDebug"
+ FILE_SUFFIX="-debug"
+ CARGO_ARGS=""
+ elif [[ "${1:-""}" == "--app-bundle" ]]; then
+ BUILD_BUNDLE="yes"
+ fi
+
+ shift 1
+done
+if [[ "$BUILD_TYPE" == "release" ]]; then
if [ ! -f "$SCRIPT_DIR/android/keystore.properties" ]; then
echo "ERROR: No keystore.properties file found" >&2
echo " Please configure the signing keys as described in the README" >&2
@@ -91,7 +101,14 @@ cd "$SCRIPT_DIR/android"
mkdir -p "$SCRIPT_DIR/dist"
cp "$SCRIPT_DIR/android/build/outputs/apk/$BUILD_TYPE/android-$BUILD_TYPE.apk" \
- "$SCRIPT_DIR/dist/MullvadVPN-${PRODUCT_VERSION}${APK_SUFFIX}.apk"
+ "$SCRIPT_DIR/dist/MullvadVPN-${PRODUCT_VERSION}${FILE_SUFFIX}.apk"
+
+if [[ "$BUILD_BUNDLE" == "yes" ]]; then
+ ./gradlew --console plain "$BUNDLE_TASK"
+
+ cp "$SCRIPT_DIR/android/build/outputs/bundle/$BUILD_TYPE/android.aab" \
+ "$SCRIPT_DIR/dist/MullvadVPN-${PRODUCT_VERSION}${FILE_SUFFIX}.aab"
+fi
echo "**********************************"
echo ""
diff --git a/ci/buildserver-build.sh b/ci/buildserver-build.sh
index b6b2ad18a0..84d303a1ef 100755
--- a/ci/buildserver-build.sh
+++ b/ci/buildserver-build.sh
@@ -43,7 +43,7 @@ EOF
}
upload() {
- for f in MullvadVPN-*.{deb,rpm,exe,pkg,apk}; do
+ for f in MullvadVPN-*.{deb,rpm,exe,pkg,apk,aab}; do
sha256sum "$f" > "$f.sha256"
case "$(uname -s)" in
# Linux is both the build and upload server. Just move directly to target dir
@@ -116,7 +116,7 @@ build_ref() {
;;
Linux*)
echo "Building Android APK"
- ./build-apk.sh || return 0
+ ./build-apk.sh --app-bundle || return 0
;;
esac
diff --git a/ci/buildserver-upload.sh b/ci/buildserver-upload.sh
index 970a529f9b..0511c8dc27 100755
--- a/ci/buildserver-upload.sh
+++ b/ci/buildserver-upload.sh
@@ -9,7 +9,7 @@ cd $UPLOAD_DIR
while true; do
sleep 10
- for f_checksum in MullvadVPN-*.{deb,rpm,exe,pkg,apk}.sha256; do
+ for f_checksum in MullvadVPN-*.{deb,rpm,exe,pkg,apk,aab}.sha256; do
sleep 1
f="${f_checksum/.sha256/}"
if ! sha256sum --quiet -c "$f_checksum"; then
@@ -17,7 +17,7 @@ while true; do
continue
fi
- version=$(echo $f | sed -Ee 's/MullvadVPN-(.*)(\.exe|\.pkg|_amd64\.deb|_x86_64\.rpm|.apk)/\1/g')
+ version=$(echo $f | sed -Ee 's/MullvadVPN-(.*)(\.exe|\.pkg|_amd64\.deb|_x86_64\.rpm|\.apk|\.aab)/\1/g')
ssh build.mullvad.net mkdir -p "app/$version" || continue
scp -pB "$f" build.mullvad.net:app/$version/ || continue