Merge branch 'housekeeping/custom-build-image' into 'develop'
Custom Build Image See merge request funkwhale/funkwhale-android!121
This commit is contained in:
commit
1fc0f6e8ac
|
@ -1,4 +1,4 @@
|
|||
image: jangrewe/gitlab-ci-android
|
||||
image: dev.funkwhale.audio:5050/funkwhale/funkwhale-android:latest
|
||||
|
||||
variables:
|
||||
COBERTURA_REPORT: '$CI_PROJECT_DIR/app/build/reports/cobertura.xml'
|
||||
|
@ -6,11 +6,33 @@ variables:
|
|||
JACOCO_XML_LOCATION: '$CI_PROJECT_DIR/app/build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml'
|
||||
|
||||
stages:
|
||||
- build_ci_env
|
||||
- test
|
||||
- visualize
|
||||
- build
|
||||
- deploy
|
||||
|
||||
build_ci_image:
|
||||
stage: build_ci_env
|
||||
image: egon0/docker-with-buildx-and-git:bash
|
||||
tags:
|
||||
- dind
|
||||
services:
|
||||
- docker:20-dind
|
||||
before_script:
|
||||
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
|
||||
script:
|
||||
- docker build -t $CI_REGISTRY_IMAGE docker
|
||||
after_script:
|
||||
- docker push $CI_REGISTRY_IMAGE
|
||||
rules:
|
||||
- if: '$BUILD_CI_IMAGE'
|
||||
variables:
|
||||
DOCKER_HOST: tcp://docker:2375/
|
||||
DOCKER_DRIVER: overlay2
|
||||
DOCKER_TLS_CERTDIR: ""
|
||||
|
||||
|
||||
.gradle-default:
|
||||
before_script:
|
||||
- export GRADLE_USER_HOME=$(pwd)/.gradle
|
||||
|
@ -50,7 +72,7 @@ test:
|
|||
except:
|
||||
- tags
|
||||
script:
|
||||
- ./gradlew test jacocoTestReport
|
||||
- ./gradlew --no-daemon --stacktrace test jacocoTestReport
|
||||
- awk -F"," '{ instructions += $4 + $5; covered += $5 } END { print covered, "/", instructions, " instructions covered"; print 100*covered/instructions, "% covered" }' $JACOCO_CSV_LOCATION
|
||||
artifacts:
|
||||
reports:
|
||||
|
@ -77,7 +99,7 @@ build-develop:
|
|||
extends: .build
|
||||
script:
|
||||
- echo -n $PREVIEW_SIGNING_KEY_STORE | base64 -d > app/android.keystore
|
||||
- ./gradlew assembleDebug -Psigning.store=android.keystore -Psigning.store_passphrase=$PREVIEW_SIGNING_KEY_PASS -Psigning.key_passphrase=$PREVIEW_SIGNING_KEY_PASS
|
||||
- ./gradlew --stacktrace --no-daemon assembleDebug -Psigning.store=android.keystore -Psigning.store_passphrase=$PREVIEW_SIGNING_KEY_PASS -Psigning.key_passphrase=$PREVIEW_SIGNING_KEY_PASS
|
||||
only:
|
||||
- develop
|
||||
|
||||
|
@ -90,14 +112,14 @@ build-release:
|
|||
extends: .build
|
||||
script:
|
||||
- echo -n $SIGNING_KEY_STORE | base64 -d > app/android.keystore
|
||||
- ./gradlew assembleRelease -Psigning.store=android.keystore -Psigning.store_passphrase=$SIGNING_KEY_PASS -Psigning.key_passphrase=$SIGNING_KEY_PASS
|
||||
- ./gradlew --stacktrace --no-daemon assembleRelease -Psigning.store=android.keystore -Psigning.store_passphrase=$SIGNING_KEY_PASS -Psigning.key_passphrase=$SIGNING_KEY_PASS
|
||||
only:
|
||||
- tags
|
||||
|
||||
build-bleeding-edge:
|
||||
extends: .build
|
||||
script:
|
||||
- ./gradlew assembleDebug
|
||||
- ./gradlew --stacktrace --no-daemon assembleDebug
|
||||
except:
|
||||
- develop
|
||||
- tags
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
FROM debian:stable-slim
|
||||
|
||||
ENV ANDROID_COMPILE_SDK=30
|
||||
ENV SDK_TOOLS_VERSION=30.0.2
|
||||
ENV ANDROID_CMD_TOOLS=7583922
|
||||
ENV ANDROID_HOME=/opt/android-sdk-linux
|
||||
ENV PATH "/opt/android-sdk-linux/cmdline-tools/bin:${PATH}"
|
||||
|
||||
RUN apt-get update && apt-get install --yes openjdk-11-jdk wget tar unzip lib32stdc++6 lib32z1 git
|
||||
RUN mkdir -p /opt/android-sdk-linux && cd /opt \
|
||||
&& wget -q https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_CMD_TOOLS}_latest.zip -O android-sdk-tools.zip \
|
||||
&& unzip -q android-sdk-tools.zip -d ${ANDROID_HOME} \
|
||||
&& rm -f android-sdk-tools.zip \
|
||||
&& echo y | sdkmanager --sdk_root=${ANDROID_HOME} "platforms;android-${ANDROID_COMPILE_SDK}" \
|
||||
&& echo y | sdkmanager --sdk_root=${ANDROID_HOME} "platform-tools" \
|
||||
&& echo y | sdkmanager --sdk_root=${ANDROID_HOME} "build-tools;${SDK_TOOLS_VERSION}"
|
||||
|
Loading…
Reference in New Issue