version: 2 jobs: build: docker: - image: circleci/android:api-28 working_directory: ~/AntennaPod environment: GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx1536m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError"' _JAVA_OPTIONS: "-Xms256m -Xmx1280m" steps: - checkout - restore_cache: keys: - v1-android-{{ checksum "build.gradle" }} # fallback to using the latest cache if no exact match is found - v1-android- - run: # To build release, we need to create a temporary keystore that can be used to sign the app command: | keytool -noprompt -genkey -v -keystore "app/keystore" -alias alias -storepass password -keypass password -keyalg RSA -validity 10 -dname "CN=antennapod.org, OU=dummy, O=dummy, L=dummy, S=dummy, C=US" ./gradlew assembleRelease :core:testPlayReleaseUnitTest :app:assemblePlayDebugAndroidTest -PdisablePreDex no_output_timeout: 1800 - store_artifacts: path: app/build/outputs/apk destination: apks - save_cache: paths: - ~/.android - ~/.gradle - ~/android key: v1-android-{{ checksum "build.gradle" }}