Newer
Older
stages:
- backend build
- frontend build
- backend test
- frontend test
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- .m2/repository/
- target/
- .yarn
- android-sdk/
- .gradle/wrapper
- .gradle/caches
variables:
# Specify the SDK tools version and build tools version to use
ANDROID_COMPILE_SDK: 31
ANDROID_BUILD_TOOLS: 31.0.0
ANDROID_SDK_TOOLS: 7583922
ANDROID_HOME: "/usr/local/android-sdk"
Prettier check:
image: node:16.3.0
stage: backend test
needs: []
script:
- cd backend
- yarn
- yarn prettier --check .
retry: 1
Backend build:
image: node:16.3.0
stage: backend test
needs: []
script:
- cd backend
- yarn
- yarn tsc
Frontend build:
image: gradle:7.5.0-jdk11
stage: backend test
needs: []
script:
# Restore Android SDK from cache
- if [ -d android-sdk ]; then mv android-sdk/* $ANDROID_HOME/; fi
# Download and install Android SDK
- wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_SDK_TOOLS}_latest.zip
- unzip -q android-sdk.zip -d android-sdk
- echo y | android-sdk/cmdline-tools/bin/sdkmanager --sdk_root=$ANDROID_HOME "platforms;android-${ANDROID_COMPILE_SDK}" "build-tools;${ANDROID_BUILD_TOOLS}"
- cd frontend
- ./gradlew clean
- ./gradlew build --refresh-dependencies
- gradle build