mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-25 21:03:56 +02:00
Automate releases (part 1) (#2111)
* Encrypt keystore * Modify build.gradle to add signing configs for env vars * Fixed keystore name * Remove encrypted file that is causing build errors * Add encrypted keystore again * Remove failed keystore again... * Add keystore encrypted by Nicolas * Modify env var names for key and iv
This commit is contained in:
parent
1d951f5f8a
commit
707c52c768
3 changed files with 45 additions and 37 deletions
67
.travis.yml
67
.travis.yml
|
|
@ -1,54 +1,47 @@
|
|||
language: android
|
||||
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- w3m
|
||||
|
||||
- w3m
|
||||
env:
|
||||
global:
|
||||
- ANDROID_TARGET=android-22
|
||||
- ANDROID_ABI=armeabi-v7a
|
||||
- ADB_INSTALL_TIMEOUT=12 # in minutes
|
||||
|
||||
- ANDROID_TARGET=android-22
|
||||
- ANDROID_ABI=armeabi-v7a
|
||||
- ADB_INSTALL_TIMEOUT=12
|
||||
jdk:
|
||||
- oraclejdk8
|
||||
|
||||
- oraclejdk8
|
||||
android:
|
||||
components:
|
||||
- tools
|
||||
- platform-tools
|
||||
- build-tools-27.0.3
|
||||
- extra-google-m2repository
|
||||
- extra-android-m2repository
|
||||
- android-22
|
||||
- android-27
|
||||
- sys-img-${ANDROID_ABI}-${ANDROID_TARGET}
|
||||
- tools
|
||||
- platform-tools
|
||||
- build-tools-27.0.3
|
||||
- extra-google-m2repository
|
||||
- extra-android-m2repository
|
||||
- android-22
|
||||
- android-27
|
||||
- sys-img-${ANDROID_ABI}-${ANDROID_TARGET}
|
||||
licenses:
|
||||
- 'android-sdk-license-.+'
|
||||
|
||||
- android-sdk-license-.+
|
||||
before_script:
|
||||
- echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI
|
||||
- emulator -avd test -no-audio -no-window -no-boot-anim &
|
||||
- android-wait-for-emulator
|
||||
|
||||
- echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI
|
||||
- emulator -avd test -no-audio -no-window -no-boot-anim &
|
||||
- android-wait-for-emulator
|
||||
script:
|
||||
- ./gradlew clean check connectedCheck jacocoTestReport
|
||||
|
||||
- "./gradlew clean check connectedCheck jacocoTestReport"
|
||||
after_success:
|
||||
- bash <(curl -s https://codecov.io/bash)
|
||||
|
||||
- bash <(curl -s https://codecov.io/bash)
|
||||
after_failure:
|
||||
- echo '*** Debug Unit Test Results ***'
|
||||
- w3m -dump ${TRAVIS_BUILD_DIR}/app/build/reports/tests/*/classes/*Test.html
|
||||
- echo '*** Connected Test Results ***'
|
||||
- w3m -dump ${TRAVIS_BUILD_DIR}/app/build/reports/androidTests/connected/flavors/*/*Test.html
|
||||
|
||||
- echo '*** Debug Unit Test Results ***'
|
||||
- w3m -dump ${TRAVIS_BUILD_DIR}/app/build/reports/tests/*/classes/*Test.html
|
||||
- echo '*** Connected Test Results ***'
|
||||
- w3m -dump ${TRAVIS_BUILD_DIR}/app/build/reports/androidTests/connected/flavors/*/*Test.html
|
||||
before_cache:
|
||||
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
|
||||
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
|
||||
|
||||
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
|
||||
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.gradle/caches/
|
||||
- $HOME/.gradle/wrapper/
|
||||
- "$HOME/.gradle/caches/"
|
||||
- "$HOME/.gradle/wrapper/"
|
||||
before_install:
|
||||
- openssl aes-256-cbc -K $encrypted_7b5c925cc32c_key -iv $encrypted_7b5c925cc32c_iv
|
||||
-in nr-commons.keystore.enc -out nr-commons.keystore -d
|
||||
|
|
|
|||
|
|
@ -117,12 +117,17 @@ android {
|
|||
test.assets.srcDirs += 'src/main/assets'
|
||||
test.resources.srcDirs += 'src/main/resoures'
|
||||
}
|
||||
|
||||
signingConfigs {
|
||||
release
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled true
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
|
||||
testProguardFile 'test-proguard-rules.txt'
|
||||
signingConfig signingConfigs.release
|
||||
}
|
||||
debug {
|
||||
minifyEnabled true
|
||||
|
|
@ -132,6 +137,16 @@ android {
|
|||
versionNameSuffix "-debug-" + getBranchName() + "~" + getBuildVersion()
|
||||
}
|
||||
}
|
||||
|
||||
def isRunningOnTravis = System.getenv("CI") == "true"
|
||||
|
||||
if (isRunningOnTravis) {
|
||||
// configure keystore based on env vars in Travis for automated alpha builds
|
||||
signingConfigs.release.storeFile = file("../nr-commons.keystore")
|
||||
signingConfigs.release.storePassword = System.getenv("keystore_password")
|
||||
signingConfigs.release.keyAlias = System.getenv("key_alias")
|
||||
signingConfigs.release.keyPassword = System.getenv("key_password")
|
||||
}
|
||||
|
||||
flavorDimensions 'tier'
|
||||
productFlavors {
|
||||
|
|
|
|||
BIN
nr-commons.keystore.enc
Normal file
BIN
nr-commons.keystore.enc
Normal file
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue