image: "k8r.eu/justjanne/android-sdk:be7526df" cache: key: "$CI_PROJECT_NAME" paths: - ".gradle/caches" before_script: - "mkdir -p $(pwd)/.gradle" - "export GRADLE_USER_HOME=$(pwd)/.gradle" - "echo $SIGNING_KEYSTORE | base64 -d > /root/signing.keystore" - "echo $SIGNING_PROPERTIES | base64 -d > signing.properties" - "chmod +x ./gradlew" stages: - "test" - "release" test: stage: "test" script: - "./gradlew assembleRelease -x lintRelease -x lintVitalRelease" - "cp app/build/outputs/apk/release/*.apk ." - "./gradlew check -x connectedCheck --stacktrace" artifacts: paths: - "*.apk" - "*/build/test-results/**/TEST-*.xml" - "*/build/reports/*.xml" reports: junit: - "*/build/test-results/**/TEST-*.xml" - "*/build/reports/*.xml" version: stage: "test" script: - "export VERSION_NAME=$(git describe --abbrev=0 --tags HEAD)" - "export VERSION_CODE=$(git rev-list --count $VERSION_NAME)" - "echo \"{\\\"name\\\":\\\"$VERSION_NAME\\\",\\\"code\\\":$VERSION_CODE}\" > version.json" artifacts: paths: - "version.json" deploy-local: stage: "release" image: "k8r.eu/justjanne/docker-s3cmd:latest" cache: { } dependencies: - "test" - "version" script: - "echo $S3_CONFIG | base64 -d > $HOME/.s3cfg" - "export VERSION=$(ls *.apk)" - "s3cmd put $VERSION s3://releases/quasseldroid-ng/$VERSION" - "s3cmd put version.json s3://releases/quasseldroid-ng/version.json" - "s3cmd cp s3://releases/quasseldroid-ng/$VERSION s3://releases/quasseldroid-ng/Quasseldroid-latest.apk" rules: - if: "$S3_CONFIG != ''" when: on_success deploy-beta: stage: "release" image: "k8r.eu/justjanne/docker-fastlane:latest" cache: { } dependencies: - "test" script: - "echo $FASTLANE_CONFIG | base64 -d > $HOME/key.json" - "export VERSION=$(ls *.apk)" - "fastlane supply --apk $VERSION --track beta --json_key $HOME/key.json --package_name com.iskrembilen.quasseldroid --skip_upload_metadata=true --skip_upload_images=true --skip_upload_screenshots=true" rules: - if: "$FASTLANE_CONFIG != ''" when: on_success