|
|
- image: openjdk:8-jdk
-
- stages:
- - build
- - test
- - deploy
-
- variables:
- ANDROID_COMPILE_SDK: egrep '^[[:blank:]]+compileSdkVersion' app/build.gradle | awk '{print $2}'
-
- before_script:
- #- apt-get --quiet update --yes
- #- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
- # Explict output for logging purpose only
- - echo $ANDROID_SDK_TOOLS
- - echo $ANDROID_COMPILE_SDK
- # Fetch the specified SDK tools version to build with
- - wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${ANDROID_SDK_TOOLS}.zip
- - unzip -d android-sdk android-sdk.zip
- # Install platform tools and Android SDK for the compile target
- - echo y | android-sdk/tools/bin/sdkmanager "platforms;android-${ANDROID_COMPILE_SDK}" >/dev/null
- #- echo y | android-sdk/tools/bin/sdkmanager "platform-tools" >/dev/null
- #- echo y | android-sdk/tools/bin/sdkmanager "build-tools;${ANDROID_BUILD_TOOLS}" >/dev/null
- # Adds to environment path
- - export ANDROID_HOME=$PWD/android-sdk
- - export PATH=$PATH:$PWD/android-sdk/platform-tools/
- - chmod +x ./gradlew
- # temporarily disable checking for EPIPE error and use yes to accept all licenses
- #- set +o pipefail
- #- yes | android-sdk/tools/bin/sdkmanager --licenses
- #- set -o pipefail
-
- artifacts:
- expire_in: 1 week
- paths:
- - app/build/outputs/
-
- lintAll:
- stage: test
- except:
- - master
- script:
- - ./gradlew --console=plain lint
-
- lintRelease:
- stage: test
- only:
- - master
- script:
- - ./gradlew --console=plain lintRelease
-
- testAll:
- stage: test
- except:
- - master
- script:
- - ./gradlew --console=plain test
-
- testRelease:
- stage: test
- only:
- - master
- script:
- - ./gradlew --console=plain testReleaseUnitTest
-
- buildDebug:
- stage: build
- except:
- - master
- script:
- - ./gradlew assembleDebug
-
- buildRelease:
- stage: build
- only:
- - master
- script:
- - ./gradlew assembleRelease
-
- release:
- image: "aplyca/semantic-release"
- stage: deploy
- script:
- - semantic-release --help
|