Android Signing on Travis

This commit is contained in:
Florian Märkl 2019-11-01 18:27:31 +01:00
commit 5cc4153a1a
No known key found for this signature in database
GPG key ID: 125BC8A5A6A1E857
5 changed files with 31 additions and 2 deletions

3
.gitignore vendored
View file

@ -17,3 +17,6 @@ appdir
.vs .vs
CMakeSettings.json CMakeSettings.json
chiaki.rb chiaki.rb
*.jks
secret.tar
keystore-env.sh

View file

@ -103,6 +103,8 @@ matrix:
language: android language: android
os: linux os: linux
dist: trusty dist: trusty
env:
- DEPLOY=1
android: android:
components: components:
- build-tools-29.0.2 - build-tools-29.0.2
@ -119,7 +121,12 @@ matrix:
- export PATH="$TRAVIS_BUILD_DIR/protoc/bin:$PATH" - export PATH="$TRAVIS_BUILD_DIR/protoc/bin:$PATH"
script: script:
- cd android - cd android
- ./gradlew assembleRelease - ./gradlew assembleRelease bundleRelease
- export DEPLOY_FILE_BASE="Chiaki-$CHIAKI_VERSION-Android"
- export DEPLOY_FILE="$DEPLOY_FILE_BASE.a[pa][kb]"
- cp app/build/outputs/apk/release/app-release.apk "../$DEPLOY_FILE_BASE.apk"
- cp app/build/outputs/bundle/release/app-release.aab "../$DEPLOY_FILE_BASE.aab"
- cd ..
- name: "Source Package" - name: "Source Package"
os: linux os: linux
@ -133,6 +140,10 @@ matrix:
- export DEPLOY_FILE="chiaki-$CHIAKI_VERSION-src.tar.gz" - export DEPLOY_FILE="chiaki-$CHIAKI_VERSION-src.tar.gz"
- tar -czvf "$DEPLOY_FILE" chiaki - tar -czvf "$DEPLOY_FILE" chiaki
before_install:
- openssl aes-256-cbc -K $encrypted_31d5e6477a29_key -iv $encrypted_31d5e6477a29_iv -in secret.tar.enc -out secret.tar -d
- tar -xf secret.tar
after_success: after_success:
- if [ ! -z "$DEPLOY_FILE" ]; then curl -m 300 --upload-file "$DEPLOY_FILE" "https://transfer.sh/$DEPLOY_FILE"; echo; fi - if [ ! -z "$DEPLOY_FILE" ]; then curl -m 300 --upload-file "$DEPLOY_FILE" "https://transfer.sh/$DEPLOY_FILE"; echo; fi
@ -142,6 +153,7 @@ deploy:
draft: true draft: true
api_key: api_key:
secure: R7RjLOuGFda05EJeNX2lNG135xKU2w9IQn7p1H1P2zw4zlQMgSBpNRaW8hE408x5KJUjptJTF6QaYYmPWbHlf9VEPFVIcVzSp8YSd2Cdr+GKhmFgWF+fJPBj5y9NNqohwxvK3Nrugh0v6yVQiEYEGF7WArU6dvymSNNTw/EqXtfrOvwUgSf1bDAzQAsXn3E6Ptzf9DrQU8+mOgMSqT/3Wy5207KLmWTtwBWDgkskKwS9OEXk3tDd6U4uT7NFHHmcw+ZjQXRD+yHSHUWYs1oKR4IfgPFxQfEK0Txhkxdf3yj1aNweuk7GGC3cfRaarUfRQpoYqYYCxhTfGZ2b4rVgX3XpssMY7ZmSZHRi/SX08ETXF/c7PZGzr0RPFXZLgAGjgN6O2Dbb9agc3tOUGDUuqKEWX9sALm82WS0FRAFrFLENgMFsj5hu+DKIIkAU2yEsadYKjjhC+q+mTAEkxKKknvM50Xpx3tE1TlP/31Z53v4/NydHIHXPJ72V3mnuoTacwhG2SkGtjMbLCnEZDCtu9C4556oa7Z29cqafv90ZD7lTQMV+ijKvjxgOC9u1GeemmZLofRGDFyYSqKxOpYxxxXGOhs+7FMAdKP00h++MTLwRwIebKQs0fW0XiNKmwushWOUU8sXI1jxTbwe9dPQsspxHRv/mVo6l2vUcBjC19K0= secure: R7RjLOuGFda05EJeNX2lNG135xKU2w9IQn7p1H1P2zw4zlQMgSBpNRaW8hE408x5KJUjptJTF6QaYYmPWbHlf9VEPFVIcVzSp8YSd2Cdr+GKhmFgWF+fJPBj5y9NNqohwxvK3Nrugh0v6yVQiEYEGF7WArU6dvymSNNTw/EqXtfrOvwUgSf1bDAzQAsXn3E6Ptzf9DrQU8+mOgMSqT/3Wy5207KLmWTtwBWDgkskKwS9OEXk3tDd6U4uT7NFHHmcw+ZjQXRD+yHSHUWYs1oKR4IfgPFxQfEK0Txhkxdf3yj1aNweuk7GGC3cfRaarUfRQpoYqYYCxhTfGZ2b4rVgX3XpssMY7ZmSZHRi/SX08ETXF/c7PZGzr0RPFXZLgAGjgN6O2Dbb9agc3tOUGDUuqKEWX9sALm82WS0FRAFrFLENgMFsj5hu+DKIIkAU2yEsadYKjjhC+q+mTAEkxKKknvM50Xpx3tE1TlP/31Z53v4/NydHIHXPJ72V3mnuoTacwhG2SkGtjMbLCnEZDCtu9C4556oa7Z29cqafv90ZD7lTQMV+ijKvjxgOC9u1GeemmZLofRGDFyYSqKxOpYxxxXGOhs+7FMAdKP00h++MTLwRwIebKQs0fW0XiNKmwushWOUU8sXI1jxTbwe9dPQsspxHRv/mVo6l2vUcBjC19K0=
file_glob: true
file: $DEPLOY_FILE file: $DEPLOY_FILE
on: on:
tags: true tags: true

View file

@ -43,12 +43,25 @@ android {
path rootCMakeLists path rootCMakeLists
} }
} }
signingConfigs {
release
}
buildTypes { buildTypes {
release { release {
minifyEnabled true minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
} }
} }
def keystoreFile = file("../../keystore.jks")
if (System.getenv("TRAVIS") == "true" && keystoreFile.exists()) {
println("Enabling Signing on Travis")
buildTypes.release.signingConfig = signingConfigs.release
signingConfigs.release.storeFile = keystoreFile
signingConfigs.release.storePassword = System.getenv("android_keystore_pw")
signingConfigs.release.keyAlias = System.getenv("android_keystore_alias")
signingConfigs.release.keyPassword = System.getenv("android_keystore_alias_pw")
}
} }
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {

View file

@ -20,4 +20,5 @@
# hide the original source file name. # hide the original source file name.
#-renamesourcefileattribute SourceFile #-renamesourcefileattribute SourceFile
-dontobfuscate -dontobfuscate
-keep class com.metallic.chiaki.** { *; }

BIN
secret.tar.enc Normal file

Binary file not shown.