From 5cc4153a1a107fb6ba878b842da9a08b6d9d2294 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=A4rkl?= Date: Fri, 1 Nov 2019 18:27:31 +0100 Subject: [PATCH] Android Signing on Travis --- .gitignore | 3 +++ .travis.yml | 14 +++++++++++++- android/app/build.gradle | 13 +++++++++++++ android/app/proguard-rules.pro | 3 ++- secret.tar.enc | Bin 0 -> 10256 bytes 5 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 secret.tar.enc diff --git a/.gitignore b/.gitignore index 1eeb346..43359e6 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,6 @@ appdir .vs CMakeSettings.json chiaki.rb +*.jks +secret.tar +keystore-env.sh diff --git a/.travis.yml b/.travis.yml index a6d12fd..c5b0af5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -103,6 +103,8 @@ matrix: language: android os: linux dist: trusty + env: + - DEPLOY=1 android: components: - build-tools-29.0.2 @@ -119,7 +121,12 @@ matrix: - export PATH="$TRAVIS_BUILD_DIR/protoc/bin:$PATH" script: - 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" os: linux @@ -133,6 +140,10 @@ matrix: - export DEPLOY_FILE="chiaki-$CHIAKI_VERSION-src.tar.gz" - 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: - 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 api_key: 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 on: tags: true diff --git a/android/app/build.gradle b/android/app/build.gradle index 189438b..7f2948b 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -43,12 +43,25 @@ android { path rootCMakeLists } } + signingConfigs { + release + } buildTypes { release { minifyEnabled true 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 { diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro index f5fb65b..8af7f58 100644 --- a/android/app/proguard-rules.pro +++ b/android/app/proguard-rules.pro @@ -20,4 +20,5 @@ # hide the original source file name. #-renamesourcefileattribute SourceFile --dontobfuscate \ No newline at end of file +-dontobfuscate +-keep class com.metallic.chiaki.** { *; } \ No newline at end of file diff --git a/secret.tar.enc b/secret.tar.enc new file mode 100644 index 0000000000000000000000000000000000000000..eff91182418b0be2b55507a365f45cef47be33df GIT binary patch literal 10256 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
4Ell6xkACiQG~l+}sAlwg<`t z!8s{t=qMI)crM{noKb=w-GYIv_+)mEJ+>OU^RU#lbF6mlZWEeyA7or>M?WRe!Vl#pi8N2c z^wHlR@;Trkeejor1p>zrT`yPXC%Cx;&W0Yn>U=qqPc+84Y8H0R&Vy!yT+)wBtOAMV zS|F&+5uh>o{ zxLO2hB3FH!T^q|oa0+K)QkP2`9}(46+YMGBlYSj}dH;rGFH;a7LW5dp6qk~tAJJ!f zVMh1xeETUm+*i7xY3F)xLR$TX)S^t_3=wZ6{NM#6@r!3R?79*q$Q?@?Nbde-FPQGd z;8?8ef(lD<^xEo;i;qcKP=35W*cD(=g8%%sd>Jd`8r=0<0v;#z_bgA)w&y?B zgA#