Files
omv-dijiang/.gitlab-ci.yml
2026-05-06 00:09:02 +08:00

50 lines
1.8 KiB
YAML

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"