From 0ff0d1144e0e367193df22bfdb239b38bb8aa006 Mon Sep 17 00:00:00 2001 From: Aoudia Date: Thu, 26 Apr 2018 00:55:40 +0200 Subject: [PATCH] feat: Add Fastlane (Alpha) --- .gitignore | 6 ++ .travis.yml | 13 +-- Gemfile | 3 + Gemfile.lock | 152 +++++++++++++++++++++++++++++++ app/build.gradle | 8 ++ app/src/main/AndroidManifest.xml | 15 +-- configuration.tar.enc | Bin 6672 -> 10256 bytes fastlane/Appfile | 2 + fastlane/Fastfile | 34 +++++++ keystore.properties | 2 +- scripts/writeEnvVariables.sh | 11 ++- 11 files changed, 223 insertions(+), 23 deletions(-) create mode 100644 Gemfile create mode 100644 Gemfile.lock create mode 100644 fastlane/Appfile create mode 100644 fastlane/Fastfile diff --git a/.gitignore b/.gitignore index 6f4cb14..d976a8b 100644 --- a/.gitignore +++ b/.gitignore @@ -143,3 +143,9 @@ configuration\.tar \.idea/caches/build_file_checksums\.ser \.idea/caches/ + +play_store_credentials\.json + +fastlane/README\.md + +fastlane/report\.xml diff --git a/.travis.yml b/.travis.yml index d2a50f8..e7cfe07 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,12 +19,12 @@ before_install: - mkdir "$ANDROID_HOME/licenses" || true - echo -e "\n8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license" - echo -e "\n84831b9409646a918e30573bab4c9c91346d8abd" > "$ANDROID_HOME/licenses/android-sdk-preview-license" - - openssl aes-256-cbc -K $encrypted_8906d6504312_key -iv $encrypted_8906d6504312_iv -in configuration.tar.enc -out configuration.tar -d + - openssl aes-256-cbc -K $encrypted_3fe6ca7ef0d3_key -iv $encrypted_3fe6ca7ef0d3_iv -in configuration.tar.enc -out configuration.tar -d - tar xvf configuration.tar - mv ${TRAVIS_BUILD_DIR}/google-services.json ${TRAVIS_BUILD_DIR}/app/google-services.json - cp local.properties.ci local.properties - ls -all - - source scripts/writeEnvVariables.sh && copyEnvVarsToManifest && copyEnvVarsToSigningProperties + - source scripts/writeEnvVariables.sh && copyEnvVarsToManifest && copyEnvVarsToSigningProperties && copyEnvVarsToFastlaneConfiguration - docker pull influxdb - docker run --name=influxdb -d -p 127.0.0.1:8086:8086 influxdb - docker ps -a @@ -50,10 +50,11 @@ script: - curl -i -XPOST http://127.0.0.1:8086/query --data-urlencode "q=CREATE DATABASE test" - ./gradlew clean test build before_deploy: + - bundle install && bundle update fastlane - cd app/build/outputs/apk/release - - jarsigner -verbose -tsa http://timestamp.comodoca.com/rfc3161 -sigalg SHA1withRSA -digestalg SHA1 -keystore ${TRAVIS_BUILD_DIR}/ApollineKeystore.jks -storepass $STORE_PASSWORD -keypass $KEY_PASSWORD app-release-unsigned.apk $KEY_ALIAS - - jarsigner -verify app-release-unsigned.apk - - ${ANDROID_HOME}/build-tools/${ANDROID_BUILD_TOOLS}/zipalign -v 4 app-release-unsigned.apk Apolline.apk + - ls -all + - bundle exec fastlane supply --apk Apolline*.apk + - mv Apolline*.apk Apolline.apk deploy: provider: releases skip_cleanup: true @@ -61,4 +62,4 @@ deploy: api_key: $GH_TOKEN on: repo: Apolline-Lille/apolline-android - tags: true + tags: true \ No newline at end of file diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..7a118b4 --- /dev/null +++ b/Gemfile @@ -0,0 +1,3 @@ +source "https://rubygems.org" + +gem "fastlane" diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..54961dc --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,152 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (3.0.0) + addressable (2.5.2) + public_suffix (>= 2.0.2, < 4.0) + atomos (0.1.2) + babosa (1.0.2) + claide (1.0.2) + colored (1.2) + colored2 (3.1.2) + commander-fastlane (4.4.6) + highline (~> 1.7.2) + declarative (0.0.10) + declarative-option (0.1.0) + domain_name (0.5.20180417) + unf (>= 0.0.5, < 1.0.0) + dotenv (2.4.0) + emoji_regex (0.1.1) + excon (0.62.0) + faraday (0.15.0) + multipart-post (>= 1.2, < 3) + faraday-cookie_jar (0.0.6) + faraday (>= 0.7.4) + http-cookie (~> 1.0.0) + faraday_middleware (0.12.2) + faraday (>= 0.7.4, < 1.0) + fastimage (2.1.1) + fastlane (2.93.1) + CFPropertyList (>= 2.3, < 4.0.0) + addressable (>= 2.3, < 3.0.0) + babosa (>= 1.0.2, < 2.0.0) + bundler (>= 1.12.0, < 2.0.0) + colored + commander-fastlane (>= 4.4.6, < 5.0.0) + dotenv (>= 2.1.1, < 3.0.0) + emoji_regex (~> 0.1) + excon (>= 0.45.0, < 1.0.0) + faraday (~> 0.9) + faraday-cookie_jar (~> 0.0.6) + faraday_middleware (~> 0.9) + fastimage (>= 2.1.0, < 3.0.0) + gh_inspector (>= 1.1.2, < 2.0.0) + google-api-client (>= 0.13.1, < 0.14.0) + highline (>= 1.7.2, < 2.0.0) + json (< 3.0.0) + mini_magick (~> 4.5.1) + multi_json + multi_xml (~> 0.5) + multipart-post (~> 2.0.0) + plist (>= 3.1.0, < 4.0.0) + public_suffix (~> 2.0.0) + rubyzip (>= 1.1.0, < 2.0.0) + security (= 0.1.3) + simctl (~> 1.6.3) + slack-notifier (>= 2.0.0, < 3.0.0) + terminal-notifier (>= 1.6.2, < 2.0.0) + terminal-table (>= 1.4.5, < 2.0.0) + tty-screen (>= 0.6.3, < 1.0.0) + tty-spinner (>= 0.8.0, < 1.0.0) + word_wrap (~> 1.0.0) + xcodeproj (>= 1.5.7, < 2.0.0) + xcpretty (>= 0.2.4, < 1.0.0) + xcpretty-travis-formatter (>= 0.0.3) + gh_inspector (1.1.3) + google-api-client (0.13.6) + addressable (~> 2.5, >= 2.5.1) + googleauth (~> 0.5) + httpclient (>= 2.8.1, < 3.0) + mime-types (~> 3.0) + representable (~> 3.0) + retriable (>= 2.0, < 4.0) + googleauth (0.6.2) + faraday (~> 0.12) + jwt (>= 1.4, < 3.0) + logging (~> 2.0) + memoist (~> 0.12) + multi_json (~> 1.11) + os (~> 0.9) + signet (~> 0.7) + highline (1.7.10) + http-cookie (1.0.3) + domain_name (~> 0.5) + httpclient (2.8.3) + json (2.1.0) + jwt (2.1.0) + little-plugger (1.1.4) + logging (2.2.2) + little-plugger (~> 1.1) + multi_json (~> 1.10) + memoist (0.16.0) + mime-types (3.1) + mime-types-data (~> 3.2015) + mime-types-data (3.2016.0521) + mini_magick (4.5.1) + multi_json (1.13.1) + multi_xml (0.6.0) + multipart-post (2.0.0) + nanaimo (0.2.5) + naturally (2.1.0) + os (0.9.6) + plist (3.4.0) + public_suffix (2.0.5) + representable (3.0.4) + declarative (< 0.1.0) + declarative-option (< 0.2.0) + uber (< 0.2.0) + retriable (3.1.1) + rouge (2.0.7) + rubyzip (1.2.1) + security (0.1.3) + signet (0.8.1) + addressable (~> 2.3) + faraday (~> 0.9) + jwt (>= 1.5, < 3.0) + multi_json (~> 1.10) + simctl (1.6.4) + CFPropertyList + naturally + slack-notifier (2.3.2) + terminal-notifier (1.8.0) + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + tty-cursor (0.5.0) + tty-screen (0.6.4) + tty-spinner (0.8.0) + tty-cursor (>= 0.5.0) + uber (0.1.0) + unf (0.1.4) + unf_ext + unf_ext (0.0.7.5) + unicode-display_width (1.3.2) + word_wrap (1.0.0) + xcodeproj (1.5.7) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.2) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.2.4) + xcpretty (0.2.8) + rouge (~> 2.0.7) + xcpretty-travis-formatter (1.0.0) + xcpretty (~> 0.2, >= 0.0.7) + +PLATFORMS + ruby + +DEPENDENCIES + fastlane + +BUNDLED WITH + 1.16.1 diff --git a/app/build.gradle b/app/build.gradle index c927f08..9022e62 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -75,6 +75,14 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release + + android.applicationVariants.all { variant -> + variant.outputs.all { + def date = new Date() + def formattedDate = date.format('dd-MM-yyyy') + outputFileName = "Apolline-${variant.versionName}-${formattedDate}.apk" + } + } } } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c5a3a49..a413ebb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -18,7 +18,6 @@ - @@ -49,26 +48,16 @@ android:hardwareAccelerated="true" android:label="@string/app_name" android:theme="@style/AppTheme.NoActionBar"> - - - - - - - + android:value="${fabric_api_key}"/> - @@ -106,4 +95,4 @@ - + \ No newline at end of file diff --git a/configuration.tar.enc b/configuration.tar.enc index 288cdd006df943f1346192398121b22d8caf6b60..bfb989af42adb2a13035f077e4d7acd041109eba 100644 GIT binary patch literal 10256 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

h3)=1b!Ho(u}8XbkX0SINrEi3LU6Mz9pAoRe$ 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 literal 6672 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 diff --git a/fastlane/Appfile b/fastlane/Appfile new file mode 100644 index 0000000..22c0647 --- /dev/null +++ b/fastlane/Appfile @@ -0,0 +1,2 @@ +json_key_file("${secret_credentials}") +package_name("science.apolline") diff --git a/fastlane/Fastfile b/fastlane/Fastfile new file mode 100644 index 0000000..3556333 --- /dev/null +++ b/fastlane/Fastfile @@ -0,0 +1,34 @@ +# This file contains the fastlane.tools configuration +# You can find the documentation at https://docs.fastlane.tools +# +# For a list of all available actions, check out +# +# https://docs.fastlane.tools/actions +# + +# Uncomment the line if you want fastlane to automatically update itself +# update_fastlane + +default_platform(:android) + +platform :android do + desc "Runs all the tests" + lane :test do + gradle(task: "test") + end + + desc "Submit a new Beta Build to Crashlytics Beta" + lane :beta do + gradle(task: "clean assembleRelease") + crashlytics + + # sh "your_script.sh" + # You can also use other beta testing services here + end + + desc "Deploy a new version to the Google Play" + lane :deploy do + gradle(task: "clean assembleRelease") + upload_to_play_store + end +end diff --git a/keystore.properties b/keystore.properties index 54a1ab7..433eab9 100644 --- a/keystore.properties +++ b/keystore.properties @@ -1,4 +1,4 @@ storePassword=myStorePassword -keyPassword=mykeyPassword +keyPassword=myKeyPassword keyAlias=myKeyAlias storeFile=myStoreFile \ No newline at end of file diff --git a/scripts/writeEnvVariables.sh b/scripts/writeEnvVariables.sh index 5f1d623..2a1537c 100644 --- a/scripts/writeEnvVariables.sh +++ b/scripts/writeEnvVariables.sh @@ -2,7 +2,6 @@ function copyEnvVarsToManifest { ANDROID_MANIFEST=${TRAVIS_BUILD_DIR}"/app/src/main/AndroidManifest.xml" - export ANDROID_MANIFEST echo "AndroidManifest should exist at $ANDROID_MANIFEST" sed -i -e "s/\"\${google_map_api_key}\"/"\"$GOOGLE_MAP_API_KEY\""/g" $ANDROID_MANIFEST @@ -11,11 +10,17 @@ function copyEnvVarsToManifest { function copyEnvVarsToSigningProperties { KEYSTORE_AUTH=${TRAVIS_BUILD_DIR}"/keystore.properties" - export KEYSTORE_AUTH echo "keystore.properties should exist at $KEYSTORE_AUTH" sed -i -e "s/myStorePassword/"$STORE_PASSWORD"/g" $KEYSTORE_AUTH - sed -i -e "s/mykeyPassword/"$KEY_PASSWORD"/g" $KEYSTORE_AUTH + sed -i -e "s/myKeyPassword/"$KEY_PASSWORD"/g" $KEYSTORE_AUTH sed -i -e "s/myKeyAlias/"$KEY_ALIAS"/g" $KEYSTORE_AUTH sed -i -e "s_myStoreFile_"${TRAVIS_BUILD_DIR}/${STORE_FILE}"_g" $KEYSTORE_AUTH +} + +function copyEnvVarsToFastlaneConfiguration { + FASTLANE_CREDENTIAL=${TRAVIS_BUILD_DIR}"/fastlane/Appfile" + export FASTLANE_CREDENTIAL + echo "Appfile should exist at $FASTLANE_CREDENTIAL" + sed -i -e "s/\"\${secret_credentials}\"/"\"$FASTLANE_FILE\""/g" $FASTLANE_CREDENTIAL } \ No newline at end of file