ci: autodetect Android SDK path on desktop runner
Some checks failed
Forgejo Release Builder / release (push) Failing after 8m12s

This commit is contained in:
littlecodedragon 2026-05-07 00:25:47 +02:00
parent 2cf613d19f
commit 510fcf1811

View file

@ -96,13 +96,33 @@ jobs:
shell: bash
run: |
set -euo pipefail
if [ -d /opt/android-sdk-linux ]; then
export ANDROID_HOME=/opt/android-sdk-linux
export ANDROID_SDK_ROOT=/opt/android-sdk-linux
echo "ANDROID_HOME=$ANDROID_HOME" >> "$GITHUB_ENV"
echo "ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" >> "$GITHUB_ENV"
printf 'sdk.dir=%s\n' "$ANDROID_HOME" > local.properties
sdk_candidates=(
"${ANDROID_HOME:-}"
"${ANDROID_SDK_ROOT:-}"
"/opt/android-sdk-linux"
"/home/yuna/Android/Sdk"
"/home/runner/Android/Sdk"
"/root/Android/Sdk"
)
sdk_dir=""
for candidate in "${sdk_candidates[@]}"; do
if [ -n "$candidate" ] && [ -d "$candidate/platforms" ] && [ -d "$candidate/build-tools" ]; then
sdk_dir="$candidate"
break
fi
done
if [ -z "$sdk_dir" ]; then
echo "Android SDK not found. Checked:"
for candidate in "${sdk_candidates[@]}"; do
[ -n "$candidate" ] && echo " - $candidate"
done
exit 1
fi
export ANDROID_HOME="$sdk_dir"
export ANDROID_SDK_ROOT="$sdk_dir"
echo "ANDROID_HOME=$ANDROID_HOME" >> "$GITHUB_ENV"
echo "ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" >> "$GITHUB_ENV"
printf 'sdk.dir=%s\n' "$ANDROID_HOME" > local.properties
chmod +x ./gradlew
export GRADLE_USER_HOME="${PWD}/.gradle-ci"
./gradlew --no-daemon --max-workers=1 \