os: linux
dist: trusty
node_js: 14
jdk:
  - oraclejdk11

git:
  depth: 3

before_cache:
  - rm -f  $HOME/.gradle/caches/modules-2/modules-2.lock
  - rm -fr $HOME/.gradle/caches/*/plugin-resolution/

cache:
  npm: true
  directories:
    - $HOME/.npm
    - $HOME/.gradle/caches/
    - $HOME/.gradle/wrapper/
    - $HOME/.android/build-cache
    - $HOME/Library/Caches/Homebrew

before_install:
  - nvm install
  - node --version
  - npm --version
  - nvm --version
  - npm ci

before_script:
  - npx gulp

script:
  - scripts/build.sh

jobs:
  include:
  - name: "Build Android"
    if: env(DEPLOY) = 1 OR (env(DEPLOY) = 2 AND tag IS NOT blank)
    language: android
    android:
      components:
      - tools
      - platform-tools
      - build-tools-29.0.3
      - android-29
      - extra-google-google_play_services
      - extra-google-m2repository
      - extra-android-m2repository
    before_install:
      - nvm install
      - node --version
      - npm --version
      - nvm --version
      - npm ci
      - export JAVA_HOME_COPY=$JAVA_HOME
      - export JAVA_HOME=/usr/lib/jvm/java-8-oracle
      - yes | sdkmanager "build-tools;32.0.0"
      - export JAVA_HOME=$JAVA_HOME_COPY
    addons:
      apt:
        packages:
        - libsecret-1-dev
  - name: "Build iOS"
    language: node_js
    if: env(BUILD_IOS) = 1 AND (env(DEPLOY) = 1 OR (env(DEPLOY) = 2 AND tag IS NOT blank))
    os: osx
    osx_image: xcode14.2
    addons:
      homebrew:
        packages:
        - jq
    before_cache:
      - brew cleanup