Auto-commit after successful build: improve build setup

Changed files:\nSetupBuildEnvironment.sh
app/build.gradle.kts
This commit is contained in:
Joe Tretter
2026-04-24 16:25:21 -05:00
parent d673d5f3a6
commit 5b5d88872f
2 changed files with 45 additions and 7 deletions

View File

@@ -277,20 +277,57 @@ ensure_sdk_packages() {
} }
maybe_build() { maybe_build() {
if [ "${1:-}" != "--build" ]; then local mode="${1:-}"
return local gradle_task=""
fi local artifact_label=""
case "$mode" in
--build)
gradle_task="assembleDebug"
artifact_label="debug APK"
;;
--build-aab)
gradle_task="bundleDebug"
artifact_label="debug AAB"
;;
*)
return
;;
esac
setup_env setup_env
bump_android_version bump_android_version
log "Building debug APK with --no-daemon" log "Building $artifact_label with --no-daemon"
"$PROJECT_DIR/gradlew" --no-daemon assembleDebug "$PROJECT_DIR/gradlew" --no-daemon "$gradle_task"
auto_commit_if_needed auto_commit_if_needed
log "Stopping any Gradle daemons just in case" log "Stopping any Gradle daemons just in case"
"$PROJECT_DIR/gradlew" --stop >/dev/null 2>&1 || true "$PROJECT_DIR/gradlew" --stop >/dev/null 2>&1 || true
} }
print_usage() {
cat <<EOF_USAGE
Usage: bash ./SetupBuildEnvironment.sh [--build | --build-aab]
--build Setup the environment and build the debug APK
--build-aab Setup the environment and build the debug Android App Bundle (AAB)
EOF_USAGE
}
validate_args() {
case "${1:-}" in
""|--build|--build-aab)
;;
*)
echo "Unknown argument: $1" >&2
print_usage >&2
exit 1
;;
esac
}
main() { main() {
validate_args "${1:-}"
require_tool curl require_tool curl
require_tool unzip require_tool unzip
require_tool tar require_tool tar
@@ -320,6 +357,7 @@ main() {
log "To cross-compile Git for Android arm64-v8a: bash ./CrossCompileGitForAndroid.sh" log "To cross-compile Git for Android arm64-v8a: bash ./CrossCompileGitForAndroid.sh"
log "To build without a background Gradle daemon: ./gradlew --no-daemon assembleDebug" log "To build without a background Gradle daemon: ./gradlew --no-daemon assembleDebug"
log "To setup and build in one step: bash ./SetupBuildEnvironment.sh --build" log "To setup and build in one step: bash ./SetupBuildEnvironment.sh --build"
log "To setup and build a debug AAB in one step: bash ./SetupBuildEnvironment.sh --build-aab"
} }
main "$@" main "$@"

View File

@@ -11,8 +11,8 @@ android {
applicationId = "solutions.tretter.githugandroid" applicationId = "solutions.tretter.githugandroid"
minSdk = 26 minSdk = 26
targetSdk = 34 targetSdk = 34
versionCode = 80 versionCode = 81
versionName = "0.1.79" versionName = "0.1.80"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true vectorDrawables.useSupportLibrary = true