feat: add preflight checks and version extraction
Made-with: Cursor
This commit is contained in:
27
build.sh
27
build.sh
@@ -34,6 +34,32 @@ success() { echo -e "${GREEN}✓${NC} $1"; }
|
||||
warn() { echo -e "${YELLOW}⚠${NC} $1"; }
|
||||
error() { echo -e "${RED}✗${NC} $1"; }
|
||||
|
||||
get_version_name() {
|
||||
grep 'versionName' "$GRADLE_BUILD_FILE" | head -1 | sed 's/.*"\(.*\)".*/\1/'
|
||||
}
|
||||
|
||||
preflight_check() {
|
||||
local ok=true
|
||||
|
||||
if ! command -v java &>/dev/null && [[ -z "${JAVA_HOME:-}" ]]; then
|
||||
error "Java not found. Install JDK 17+ or set JAVA_HOME."
|
||||
ok=false
|
||||
fi
|
||||
|
||||
if [[ ! -x "./gradlew" ]]; then
|
||||
error "Gradle wrapper not found or not executable."
|
||||
ok=false
|
||||
fi
|
||||
|
||||
if [[ "$ok" != true ]]; then
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
ensure_dist_dir() {
|
||||
mkdir -p "$DIST_DIR"
|
||||
}
|
||||
|
||||
main_menu() {
|
||||
echo -e "${BOLD}What would you like to do?${NC}"
|
||||
echo ""
|
||||
@@ -63,6 +89,7 @@ manage_keystore() { warn "Not yet implemented"; }
|
||||
clean_build() { warn "Not yet implemented"; }
|
||||
|
||||
# --- Main ---
|
||||
preflight_check
|
||||
banner
|
||||
while true; do
|
||||
main_menu
|
||||
|
||||
Reference in New Issue
Block a user