Skip to content

Instantly share code, notes, and snippets.

View chan-bo's full-sized avatar

Chanbo chan-bo

View GitHub Profile
create_google_play_key: &create_google_play_key
run:
name: Create Google Play key
command: echo $GOOGLE_PLAY_KEY > google-play-key.json
create_keystore_properties: &create_keystore_properties
run:
name: Create keystore.properties
command: printf 'releaseKeyAlias=%s\nreleaseKeyPassword=%s\nreleaseKeyStore=%s\nreleaseStorePassword=%s' \
$RELEASE_KEY_ALIAS $RELEASE_KEY_PASSWORD $RELEASE_KEYSTORE $RELEASE_STORE_PASSWORD > keystore.properties
decode_android_key: &decode_android_key
run:
name: Decode Android key store
command: echo $KEYSTORE | base64 -d | tee keystore app/keystore > /dev/null
releaseKeyAlias=YourKeyAlias
releaseKeyPassword=YourKeyPassword
releaseKeyStore=YourKeyStorePath
releaseStorePassword=YourKeyStorePassword
def keyStorePropertiesFile = rootProject.file("keystore.properties")
def keyStoreProperties = new Properties()
keyStoreProperties.load(new FileInputStream(keyStorePropertiesFile))
android {
...
signingConfigs {
release {
keyAlias keyStoreProperties['releaseKeyAlias']
version: 2
references:
workspace: &workspace
~/src
android_config: &android_config
working_directory: *workspace
docker:
- image: circleci/android:api-28-alpha
environment:
workflows:
version: 2
workflow:
jobs:
- test_unit
- test_instrumentation:
requires:
- test_unit
- beta_deployment:
gradle_key: &gradle_key
jars-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}-{{checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}
gems_key: &gems_key
gems-{{ checksum "Gemfile.lock" }}
restore_gradle_cache: &restore_gradle_cache
restore_cache:
key: *gradle_key
ruby_dependencies: &ruby_dependencies
run:
name: Download Ruby Dependencies
command: bundle check || bundle install --path vendor/bundle
android_dependencies: &android_dependencies
run:
name: Download Android Dependencies
command: ./gradlew androidDependencies
android_config: &android_config
working_directory: *workspace
docker:
- image: circleci/android:api-28-alpha
environment:
TERM: dumb
_JAVA_OPTIONS: "-Xmx2048m -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap"
GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m"'
workspace: &workspace
~/src