This step will build an .apk using Gradle using this fantastic Docker image:
https://gitlab.com/fabmazz/android-fdroid-build-container/-/tree/ubuntu
The mentioned script is just a wrapper doing this:
/home/phabricator-android-builder/bin/docker_launch_build_fabio_asd.sh
#!/bin/bash
set -euo pipefail
if [ -z "$1" ]; then
echo "Uso: $0 <cartella-sorgente>"
exit 1
fi
SOURCE_DIR="$(realpath "$1")"
#CONTAINER_NAME="${CONTAINER_NAME:-fabmazza/android-build-fdroid:ubuntu}"
CONTAINER_NAME="${CONTAINER_NAME:-fdroid-asder}"
# Eat the first argument.
# So we pass all the other shit to gradle.
shift
if [ ! -d "$SOURCE_DIR" ]; then
echo "Errore: '$SOURCE_DIR' non è una cartella valida"
exit 1
fi
if [[ "$UID" = 0 ]]; then
echo "Do not run as root."
exit 2
fi
GID=$(id -g)
echo "[INFO] User info: $(id)"
echo "[INFO] UID=$UID"
echo "[INFO] GID=$GID"
echo "[INFO] CONTAINER_NAME=$CONTAINER_NAME"
echo "[INFO] SOURCE_DIR=$SOURCE_DIR"
## From this point, say what we are doing.
set -x
docker run \
-e DESIRED_UID="$UID" \
-e DESIRED_GID="$GID" \
--rm \
-v "$SOURCE_DIR":/home/vagrant/appbuild:Z \
"$CONTAINER_NAME" \
launch_build_local $@