stages: - build - test image: eclipse-temurin:21-jdk variables: ANDROID_COMPILE_SDK: "36" ANDROID_BUILD_TOOLS: "36.0.0" ANDROID_SDK_TOOLS: "11076708" GRADLE_USER_HOME: "$CI_PROJECT_DIR/.gradle" ANDROID_SDK_ROOT: "$CI_PROJECT_DIR/android-home" before_script: - apt-get update -qq && apt-get install -y wget tar unzip lib32stdc++6 lib32z1 - export ANDROID_SDK_ROOT="${PWD}/android-home" - mkdir -p $ANDROID_SDK_ROOT/cmdline-tools - wget -q -O $ANDROID_SDK_ROOT/cmdline-tools.zip "https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_SDK_TOOLS}_latest.zip" - unzip -d $ANDROID_SDK_ROOT/cmdline-tools $ANDROID_SDK_ROOT/cmdline-tools.zip - mv $ANDROID_SDK_ROOT/cmdline-tools/cmdline-tools $ANDROID_SDK_ROOT/cmdline-tools/tools || true - export PATH=$PATH:${ANDROID_SDK_ROOT}/cmdline-tools/tools/bin/ - sdkmanager --verbose --version - yes | sdkmanager --licenses || true - sdkmanager --verbose "platforms;android-${ANDROID_COMPILE_SDK}" "platform-tools" "build-tools;${ANDROID_BUILD_TOOLS}" || true - chmod +x ./gradlew - echo "sdk.dir=${ANDROID_SDK_ROOT}" > local.properties assembleDebug: stage: build script: - ./gradlew assembleDebug artifacts: paths: - app/build/outputs/**/*.apk debugTests: stage: test script: - ./gradlew -Pci --console=plain :app:testDebug artifacts: when: always expire_in: 7 days paths: - app/build/reports/tests/testDebug/ - app/build/test-results/testDebug/ - app/build/outputs/unit_test_code_coverage/debugUnitTest/