os: linux dist: bionic group: edge language: node_js node_js: 11 php: 7.1 android: components: - tools - platform-tools - build-tools-29.0.3 - android-28 - extra-google-google_play_services - extra-google-m2repository - extra-android-m2repository git: depth: 3 before_cache: - rm -rf $HOME/.cache/electron-builder/wine - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock - rm -fr $HOME/.gradle/caches/*/plugin-resolution/ cache: directories: - $HOME/.npm - $HOME/.cache/electron - $HOME/.cache/electron-builder - $HOME/.gradle/caches/ - $HOME/.gradle/wrapper/ - $HOME/.android/build-cache before_script: - if [ "$TRAVIS_OS_NAME" != 'windows' ] ; then npm install npm@latest -g ; fi - gulp jobs: include: - stage: check if: NOT branch =~ /(master|integration|desktop)$/ os: linux script: npm run build --bailOnLintError true --typeCheckOnLint true - stage: mirror if: branch IN (master, integration, desktop) AND repo = moodlehq/moodleapp os: linux script: scripts/mirror.sh - stage: prepare if: branch =~ /(master|^integration)$/ AND env(PREPARE) IS NOT blank AND env(PREPARE) = 1 os: linux script: scripts/aot.sh - stage: build name: "Build Android" if: env(DEPLOY) IS NOT blank AND ((env(DEPLOY) = 1 AND NOT branch = desktop) OR (env(DEPLOY) IN (2,3) AND tag IS NOT blank)) os: linux dist: trusty group: edge language: android before_install: - nvm install 11 - node --version - npm --version - nvm --version - npm ci - npm install -g gulp script: scripts/aot.sh - stage: build name: "Build iOS" if: env(DEPLOY) IS NOT blank AND ((env(DEPLOY) = 1 AND NOT branch = desktop) OR (env(DEPLOY) IN (2,3) AND tag IS NOT blank)) os: osx osx_image: xcode11.3 script: scripts/aot.sh - stage: build name: "Build Linux" if: env(DEPLOY) IS NOT blank AND ((env(DEPLOY) = 1 AND branch = desktop) OR (env(DEPLOY) = 3 AND tag IS NOT blank)) os: linux env: - ELECTRON_CACHE=$HOME/.cache/electron - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder script: scripts/aot.sh - stage: build name: "Build MacOS" if: env(DEPLOY) IS NOT blank AND ((env(DEPLOY) = 1 AND branch = desktop) OR (env(DEPLOY) = 3 AND tag IS NOT blank)) os: osx osx_image: xcode11.3 env: - ELECTRON_CACHE=$HOME/.cache/electron - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder script: scripts/aot.sh - stage: build name: "Build Windows" if: env(DEPLOY) IS NOT blank AND ((env(DEPLOY) = 1 AND branch = desktop) OR (env(DEPLOY) = 3 AND tag IS NOT blank)) os: windows env: - ELECTRON_CACHE=$HOME/.cache/electron - ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder - ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true - DEBUG=electron-windows-store script: scripts/aot.sh