diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..1ecac65 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,52 @@ +# This file is a template, and might need editing before it works on your project. +# Read more about this script on this blog post https://about.gitlab.com/2018/10/24/setting-up-gitlab-ci-for-android-projects/, by Jason Lenny +image: openjdk:8-jdk + +variables: + ANDROID_COMPILE_SDK: "28" + ANDROID_BUILD_TOOLS: "28.0.2" + ANDROID_SDK_TOOLS: "4333796" + +before_script: + - apt-get --quiet update --yes + - apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 + - wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${ANDROID_SDK_TOOLS}.zip + - unzip -d android-sdk-linux android-sdk.zip + - echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${ANDROID_COMPILE_SDK}" >/dev/null + - echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null + - echo y | android-sdk-linux/tools/bin/sdkmanager "build-tools;${ANDROID_BUILD_TOOLS}" >/dev/null + - export ANDROID_HOME=$PWD/android-sdk-linux + - export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ + - chmod +x ./gradlew + # temporarily disable checking for EPIPE error and use yes to accept all licenses + - set +o pipefail + - yes | android-sdk-linux/tools/bin/sdkmanager --licenses + - set -o pipefail + +stages: + - build + - test + +lintDebug: + stage: build + script: + - ./gradlew -Pci --console=plain lintDebug -PbuildDir=lint + tags: + - labs + +assembleDebug: + stage: build + script: + - ./gradlew assembleDebug + artifacts: + paths: + - build/outputs/ + tags: + - labs + +debugTests: + stage: test + script: + - ./gradlew -Pci --console=plain testDebug + tags: + - labs diff --git a/build.gradle b/build.gradle index b29e9d0..0aabd0c 100644 --- a/build.gradle +++ b/build.gradle @@ -1,3 +1,14 @@ +buildscript { + repositories { + jcenter() + google() + } + dependencies { + classpath 'com.android.tools.build:gradle:3.3.1' + classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' + } +} + apply plugin: 'com.android.library' apply plugin: 'com.github.dcendents.android-maven' @@ -30,7 +41,7 @@ android { } dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') + //implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.android.support:appcompat-v7:28.0.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' @@ -55,3 +66,10 @@ dependencies { // precis for unicode name validation implementation 'rocks.xmpp:precis:1.0.0' } + +allprojects { + repositories { + jcenter() + google() + } +}