From e4a082213d756a5bc125640b2256e0076dc319ec Mon Sep 17 00:00:00 2001 From: Ivan Kupalov Date: Fri, 11 May 2018 02:31:16 +0300 Subject: [PATCH] [CI] Build release apk's (#639) Add separate workflow for building and siigning APKs --- .circleci/config.yml | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0c9a50b3..6d5fd462 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ machine: environment: GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"' jobs: - build: + test: working_directory: ~/code docker: - image: circleci/android:api-27-alpha @@ -31,3 +31,31 @@ jobs: destination: reports - store_test_results: path: app/build/test-results + build: + working_directory: ~/code + docker: + - image: circleci/android:api-27-alpha + environment: + JVM_OPTS: -Xmx3200m + steps: + - checkout + - restore_cache: + key: jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }} + - run: + name: Build apk + command: | + ./gradlew assembleRelease --no-daemon --stacktrace + /opt/android/sdk/build-tools/27.0.3/zipalign -v -p 4 app/build/outputs/apk/release/app-release-unsigned.apk app-release-aligned.apk + keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -dname "C=US, O=Android, CN=Android Debug" + /opt/android/sdk/build-tools/27.0.3/apksigner sign --ks debug.keystore --out app-release.apk --ks-pass pass:android app-release-aligned.apk + - store_artifacts: + path: app-release.apk + destination: app-release.apk +workflows: + version: 2 + test-and-build: + jobs: + - test + - build: + requires: + - test