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 0000000..eff9118 Binary files /dev/null and b/secret.tar.enc differ