build-android: image: golang:1.26.2-bookworm before_script: | apt update && apt install -y openjdk-17-jdk-headless unzip curl rsync patch /usr/lib/jvm/java-17-openjdk-amd64/bin/java --version cache: - key: "app-compile-cache-$CI_COMMIT_REF_SLUG" paths: - works/core/clients/android/app/build - Android/ - key: "go-cache-$CI_COMMIT_REF_SLUG" paths: - .go/pkg/mod - .cache/go-build # - .gradle/caches # - .gradle/wrapper script: | bash ./setup-ndk.sh export ANDROID_HOME="$PWD/Android/Sdk" bin/update && bin/apply-ci && cd works/core export version="$(git describe --tags)-$CI_COMMIT_SHORT_SHA" && echo "building version $version" git submodule update --init --recursive make lib_install export PATH="$PATH:$(go env GOPATH)/bin" go mod tidy make lib_android cd clients/android && git checkout dev && cd ../.. go run -v ./cmd/internal/update_android_version --ci --nightly mkdir clients/android/app/libs # start building cp *.aar clients/android/app/libs cd clients/android ./gradlew --no-daemon :app:assembleOtherRelease cd ../.. mkdir -p dist # prepare upload cp clients/android/app/build/outputs/apk/other/release/*arm64-v8a.apk dist mv dist ../.. VERSION_CODE=$(grep VERSION_CODE clients/android/version.properties | cut -d= -f2) VERSION_NAME=$(grep VERSION_NAME clients/android/version.properties | cut -d= -f2) variables: ANDROID_NDK_VERSION: r28 LOCAL_PROPERTIES: "S0VZU1RPUkVfUEFTUz0xMTQ1MTQKQUxJQVNfTkFNRT1hbGlhcwpBTElBU19QQVNTPTExNDUxNAo=" GOPATH: "$CI_PROJECT_DIR/.go" GOMODCACHE: "$CI_PROJECT_DIR/.go/pkg/mod" GOCACHE: "$CI_PROJECT_DIR/.cache/go-build" # GRADLE_USER_HOME: "$CI_PROJECT_DIR/.gradle" artifacts: paths: - "./dist"