From f4d675e9527dfb9b8319f1ad98419314a5030557 Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Tue, 11 Jul 2017 13:14:21 -0400 Subject: [PATCH] update ci to use latest XCode / fastlane // FREEBIE --- .travis.yml | 11 +-- Gemfile | 5 ++ Gemfile.lock | 189 ++++++++++++++++++++++++++++++++++++++++++++ Makefile | 9 ++- fastlane/.gitignore | 1 + fastlane/Scanfile | 7 ++ 6 files changed, 213 insertions(+), 9 deletions(-) create mode 100644 Gemfile create mode 100644 Gemfile.lock create mode 100644 fastlane/.gitignore create mode 100644 fastlane/Scanfile diff --git a/.travis.yml b/.travis.yml index fe20bf9ce..f0beb4d6c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,7 @@ language: objective-c cache: cocoapods # pod install somtimes takes >20 minutes, so lets cache this -osx_image: xcode8.2 +osx_image: xcode8.3 env: -EARLY_START_SIMULATOR=1 # early starting simulator reduces false negatives due to test timeouts @@ -9,11 +9,8 @@ env: before_install: - brew update # we may not be running the latest version so always update - brew outdated xctool || brew upgrade xctool # only upgrade if outdated (saves 2 minutes) - - gem install cocoapods # get the latest cocoapods - - gem install xcpretty - - travis_wait 20 pod repo update --silent # log output is too long without --silent + - bundle + - bundle exec pod repo update --silent # log output is too long without --silent -install: travis_wait 30 pod install # OpenSSL takes a long time to compile - -script: make ci +script: make ci_scan diff --git a/Gemfile b/Gemfile new file mode 100644 index 000000000..0814db77a --- /dev/null +++ b/Gemfile @@ -0,0 +1,5 @@ +source 'https://rubygems.org' + +gem 'cocoapods' +gem 'fastlane' + diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 000000000..3d0a51079 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,189 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (2.3.5) + activesupport (4.2.9) + i18n (~> 0.7) + minitest (~> 5.1) + thread_safe (~> 0.3, >= 0.3.4) + tzinfo (~> 1.1) + addressable (2.5.1) + public_suffix (~> 2.0, >= 2.0.2) + babosa (1.0.2) + claide (1.0.2) + cocoapods (1.2.1) + activesupport (>= 4.0.2, < 5) + claide (>= 1.0.1, < 2.0) + cocoapods-core (= 1.2.1) + cocoapods-deintegrate (>= 1.0.1, < 2.0) + cocoapods-downloader (>= 1.1.3, < 2.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-stats (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.2.0, < 2.0) + cocoapods-try (>= 1.1.0, < 2.0) + colored2 (~> 3.1) + escape (~> 0.0.4) + fourflusher (~> 2.0.1) + gh_inspector (~> 1.0) + molinillo (~> 0.5.7) + nap (~> 1.0) + ruby-macho (~> 1.1) + xcodeproj (>= 1.4.4, < 2.0) + cocoapods-core (1.2.1) + activesupport (>= 4.0.2, < 5) + fuzzy_match (~> 2.0.4) + nap (~> 1.0) + cocoapods-deintegrate (1.0.1) + cocoapods-downloader (1.1.3) + cocoapods-plugins (1.0.0) + nap + cocoapods-search (1.0.0) + cocoapods-stats (1.0.0) + cocoapods-trunk (1.2.0) + nap (>= 0.8, < 2.0) + netrc (= 0.7.8) + cocoapods-try (1.1.0) + colored (1.2) + colored2 (3.1.2) + commander-fastlane (4.4.5) + highline (~> 1.7.2) + declarative (0.0.9) + declarative-option (0.1.0) + domain_name (0.5.20170404) + unf (>= 0.0.5, < 1.0.0) + dotenv (2.2.1) + escape (0.0.4) + excon (0.57.1) + faraday (0.12.1) + multipart-post (>= 1.2, < 3) + faraday-cookie_jar (0.0.6) + faraday (>= 0.7.4) + http-cookie (~> 1.0.0) + faraday_middleware (0.11.0.1) + faraday (>= 0.7.4, < 1.0) + fastimage (2.1.0) + fastlane (2.46.0) + CFPropertyList (>= 2.3, < 3.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.5, < 5.0.0) + dotenv (>= 2.1.1, < 3.0.0) + 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.0.1, < 2.0.0) + google-api-client (>= 0.12.0, < 0.13.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) + rubyzip (>= 1.1.0, < 2.0.0) + security (= 0.1.3) + slack-notifier (>= 1.3, < 2.0.0) + terminal-notifier (>= 1.6.2, < 2.0.0) + terminal-table (>= 1.4.5, < 2.0.0) + tty-screen (~> 0.5.0) + word_wrap (~> 1.0.0) + xcodeproj (>= 1.4.4, < 2.0.0) + xcpretty (>= 0.2.4, < 1.0.0) + xcpretty-travis-formatter (>= 0.0.3) + fourflusher (2.0.1) + fuzzy_match (2.0.4) + gh_inspector (1.0.3) + google-api-client (0.12.0) + 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.5.1) + faraday (~> 0.9) + jwt (~> 1.4) + logging (~> 2.0) + memoist (~> 0.12) + multi_json (~> 1.11) + os (~> 0.9) + signet (~> 0.7) + highline (1.7.8) + http-cookie (1.0.3) + domain_name (~> 0.5) + httpclient (2.8.3) + i18n (0.8.4) + json (2.1.0) + jwt (1.5.6) + 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) + minitest (5.10.2) + molinillo (0.5.7) + multi_json (1.12.1) + multi_xml (0.6.0) + multipart-post (2.0.0) + nanaimo (0.2.3) + nap (1.1.0) + netrc (0.7.8) + os (0.9.6) + plist (3.3.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.0.2) + rouge (2.0.7) + ruby-macho (1.1.0) + rubyzip (1.2.1) + security (0.1.3) + signet (0.7.3) + addressable (~> 2.3) + faraday (~> 0.9) + jwt (~> 1.5) + multi_json (~> 1.10) + slack-notifier (1.5.1) + terminal-notifier (1.8.0) + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + thread_safe (0.3.6) + tty-screen (0.5.0) + tzinfo (1.2.3) + thread_safe (~> 0.1) + uber (0.1.0) + unf (0.1.4) + unf_ext + unf_ext (0.0.7.4) + unicode-display_width (1.3.0) + word_wrap (1.0.0) + xcodeproj (1.5.0) + CFPropertyList (~> 2.3.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.2.3) + xcpretty (0.2.8) + rouge (~> 2.0.7) + xcpretty-travis-formatter (0.0.4) + xcpretty (~> 0.2, >= 0.0.7) + +PLATFORMS + ruby + +DEPENDENCIES + cocoapods + fastlane + +BUNDLED WITH + 1.14.6 diff --git a/Makefile b/Makefile index a7ee23774..da7cdc3ac 100644 --- a/Makefile +++ b/Makefile @@ -14,20 +14,25 @@ default: test ci: dependencies test +ci_scan: dependencies scan + update_dependencies: - pod update + bundle exec pod update carthage update --platform iOS dependencies: cd $(WORKING_DIR) && \ git submodule update --init - pod install + bundle exec pod install carthage build --platform iOS build: dependencies cd $(WORKING_DIR) && \ $(XCODE_BUILD) build | xcpretty +scan: + bundle exec fastlane scan + test: optional_early_start_simulator cd $(WORKING_DIR) && \ $(XCODE_BUILD) \ diff --git a/fastlane/.gitignore b/fastlane/.gitignore new file mode 100644 index 000000000..007b73ee6 --- /dev/null +++ b/fastlane/.gitignore @@ -0,0 +1 @@ +test_output diff --git a/fastlane/Scanfile b/fastlane/Scanfile new file mode 100644 index 000000000..a58da5440 --- /dev/null +++ b/fastlane/Scanfile @@ -0,0 +1,7 @@ +# For more information about this configuration visit +# https://github.com/fastlane/fastlane/tree/master/scan#scanfile + +workspace "Signal.xcworkspace" +scheme "Signal" +devices ["iPhone SE"] +