fastlane 2.131.0.beta.20190830200038 → 2.131.0.beta.20190904200040
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +8 -3
- data/fastlane/lib/fastlane/actions/gradle.rb +11 -1
- data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +1 -1
- data/fastlane/lib/fastlane/swift_fastlane_api_generator.rb +0 -1
- data/fastlane/lib/fastlane/swift_runner_upgrader.rb +4 -0
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Actions.swift +4 -0
- data/fastlane/swift/Plugins.swift +4 -0
- data/fastlane_core/lib/fastlane_core/helper.rb +1 -1
- data/match/lib/match/importer.rb +1 -1
- data/match/lib/match/options.rb +5 -0
- data/match/lib/match/runner.rb +8 -6
- metadata +12 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e379a074856a302143fe53a10f8993cb2011588f
|
4
|
+
data.tar.gz: aec016827a3ccc0d959930fd325979bac065d850
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6bdc88b29e4d8c2571c594b13d37e53be6e8e1f58f1046e4fda5f73e669fba187a26fbc9250f864d6be91a17750ff469a822eb23b593147aac166991c0801295
|
7
|
+
data.tar.gz: 7fb5752094671f027ab3908fe44d7e517dcb48739202e90454cfb4a1b6234fa6a88cf7ba2b1f3fb2d3c3a2d5dff56f36470f496d38a8ea39bdfd0e39d951027b
|
@@ -102,7 +102,8 @@ module Fastlane
|
|
102
102
|
|
103
103
|
unless download_url
|
104
104
|
if !wait_for_dsym_processing || (Time.now - start) > (60 * 5)
|
105
|
-
|
105
|
+
# In some cases, AppStoreConnect does not process the dSYMs, thus no error should be thrown.
|
106
|
+
UI.message("Could not find any dSYM for #{build.build_version} (#{train.version_string})")
|
106
107
|
else
|
107
108
|
UI.message("Waiting for dSYM file to appear...")
|
108
109
|
sleep(30)
|
@@ -113,8 +114,12 @@ module Fastlane
|
|
113
114
|
break
|
114
115
|
end
|
115
116
|
|
116
|
-
|
117
|
-
|
117
|
+
if download_url
|
118
|
+
self.download(download_url, app.bundle_id, train.version_string, build.build_version, output_directory)
|
119
|
+
break if build_number
|
120
|
+
else
|
121
|
+
UI.message("No dSYM URL for #{build.build_version} (#{train.version_string})")
|
122
|
+
end
|
118
123
|
end
|
119
124
|
end
|
120
125
|
|
@@ -8,6 +8,8 @@ module Fastlane
|
|
8
8
|
GRADLE_ALL_APK_OUTPUT_PATHS = :GRADLE_ALL_APK_OUTPUT_PATHS
|
9
9
|
GRADLE_AAB_OUTPUT_PATH = :GRADLE_AAB_OUTPUT_PATH
|
10
10
|
GRADLE_ALL_AAB_OUTPUT_PATHS = :GRADLE_ALL_AAB_OUTPUT_PATHS
|
11
|
+
GRADLE_OUTPUT_JSON_OUTPUT_PATH = :GRADLE_OUTPUT_JSON_OUTPUT_PATH
|
12
|
+
GRADLE_ALL_OUTPUT_JSON_OUTPUT_PATHS = :GRADLE_ALL_OUTPUT_JSON_OUTPUT_PATHS
|
11
13
|
GRADLE_FLAVOR = :GRADLE_FLAVOR
|
12
14
|
GRADLE_BUILD_TYPE = :GRADLE_BUILD_TYPE
|
13
15
|
end
|
@@ -60,6 +62,7 @@ module Fastlane
|
|
60
62
|
|
61
63
|
apk_search_path = File.join(project_dir, '**', 'build', 'outputs', 'apk', '**', '*.apk')
|
62
64
|
aab_search_path = File.join(project_dir, '**', 'build', 'outputs', 'bundle', '**', '*.aab')
|
65
|
+
output_json_search_path = File.join(project_dir, '**', 'build', 'outputs', 'apk', '**', 'output.json')
|
63
66
|
|
64
67
|
# Our apk/aab is now built, but there might actually be multiple ones that were built if a flavor was not specified in a multi-flavor project (e.g. `assembleRelease`)
|
65
68
|
# However, we're not interested in unaligned apk's...
|
@@ -67,18 +70,23 @@ module Fastlane
|
|
67
70
|
new_apks = new_apks.map { |path| File.expand_path(path) }
|
68
71
|
new_aabs = Dir[aab_search_path]
|
69
72
|
new_aabs = new_aabs.map { |path| File.expand_path(path) }
|
73
|
+
new_output_jsons = Dir[output_json_search_path]
|
74
|
+
new_output_jsons = new_output_jsons.map { |path| File.expand_path(path) }
|
70
75
|
|
71
76
|
# We expose all of these new apks and aabs
|
72
77
|
Actions.lane_context[SharedValues::GRADLE_ALL_APK_OUTPUT_PATHS] = new_apks
|
73
78
|
Actions.lane_context[SharedValues::GRADLE_ALL_AAB_OUTPUT_PATHS] = new_aabs
|
79
|
+
Actions.lane_context[SharedValues::GRADLE_ALL_OUTPUT_JSON_OUTPUT_PATHS] = new_output_jsons
|
74
80
|
|
75
81
|
# We also take the most recent apk and aab to return as SharedValues::GRADLE_APK_OUTPUT_PATH and SharedValues::GRADLE_AAB_OUTPUT_PATH
|
76
82
|
# This is the one that will be relevant for most projects that just build a single build variant (flavor + build type combo).
|
77
83
|
# In multi build variants this value is undefined
|
78
84
|
last_apk_path = new_apks.sort_by(&File.method(:mtime)).last
|
79
85
|
last_aab_path = new_aabs.sort_by(&File.method(:mtime)).last
|
86
|
+
last_output_json_path = new_output_jsons.sort_by(&File.method(:mtime)).last
|
80
87
|
Actions.lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH] = File.expand_path(last_apk_path) if last_apk_path
|
81
88
|
Actions.lane_context[SharedValues::GRADLE_AAB_OUTPUT_PATH] = File.expand_path(last_aab_path) if last_aab_path
|
89
|
+
Actions.lane_context[SharedValues::GRADLE_OUTPUT_JSON_OUTPUT_PATH] = File.expand_path(last_output_json_path) if last_output_json_path
|
82
90
|
|
83
91
|
# Give a helpful message in case there were no new apks or aabs. Remember we're only running this code when assembling, in which case we certainly expect there to be an apk or aab
|
84
92
|
UI.message('Couldn\'t find any new signed apk files...') if new_apks.empty? && new_aabs.empty?
|
@@ -165,7 +173,9 @@ module Fastlane
|
|
165
173
|
['GRADLE_FLAVOR', 'The flavor, e.g. `MyFlavor`'],
|
166
174
|
['GRADLE_BUILD_TYPE', 'The build type, e.g. `Release`'],
|
167
175
|
['GRADLE_AAB_OUTPUT_PATH', 'The path to the most recent Android app bundle'],
|
168
|
-
['GRADLE_ALL_AAB_OUTPUT_PATHS', 'The paths to the most recent Android app bundles']
|
176
|
+
['GRADLE_ALL_AAB_OUTPUT_PATHS', 'The paths to the most recent Android app bundles'],
|
177
|
+
['GRADLE_OUTPUT_JSON_OUTPUT_PATH', 'The path to the most recent output.json file'],
|
178
|
+
['GRADLE_ALL_OUTPUT_JSON_OUTPUT_PATHS', 'The path to the newly generated output.json files']
|
169
179
|
]
|
170
180
|
end
|
171
181
|
|
@@ -108,7 +108,7 @@ module Fastlane
|
|
108
108
|
|
109
109
|
UI.important("Downloading Crashlytics Support Library - this might take a minute...")
|
110
110
|
result = http_conn.request_get(uri.path)
|
111
|
-
UI.error
|
111
|
+
UI.error("#{result.message} (#{result.code})") unless result.kind_of?(Net::HTTPSuccess)
|
112
112
|
File.write(zip_path, result.body)
|
113
113
|
|
114
114
|
# Now unzip the file
|
@@ -57,7 +57,6 @@ module Fastlane
|
|
57
57
|
old_api_version = find_api_version_string(content: old_file_content)
|
58
58
|
|
59
59
|
# if there is a change, we need to write out the new file
|
60
|
-
puts("#{api_version} vs #{old_api_version}")
|
61
60
|
if api_version != old_api_version
|
62
61
|
file_content << autogen_version_warning_text(api_version: api_version)
|
63
62
|
else
|
@@ -90,6 +90,10 @@ module Fastlane
|
|
90
90
|
source_file_content = File.read(source)
|
91
91
|
target_file_content = File.read(target)
|
92
92
|
|
93
|
+
# ignore if files don't contain FastlaneRunnerAPIVersion
|
94
|
+
return false unless source_file_content.include?("FastlaneRunnerAPIVersion")
|
95
|
+
return false unless target_file_content.include?("FastlaneRunnerAPIVersion")
|
96
|
+
|
93
97
|
bundled_version = source_file_content.match(regex_to_use)[1]
|
94
98
|
target_version = target_file_content.match(regex_to_use)[1]
|
95
99
|
file_versions_are_different = bundled_version != target_version
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module Fastlane
|
2
|
-
VERSION = '2.131.0.beta.
|
2
|
+
VERSION = '2.131.0.beta.20190904200040'.freeze
|
3
3
|
DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
|
4
4
|
MINIMUM_XCODE_RELEASE = "7.0".freeze
|
5
5
|
RUBOCOP_REQUIREMENT = '0.49.1'.freeze
|
@@ -72,7 +72,7 @@ module FastlaneCore
|
|
72
72
|
# @return [boolean] true if building in a known CI environment
|
73
73
|
def self.ci?
|
74
74
|
# Check for Jenkins, Travis CI, ... environment variables
|
75
|
-
['JENKINS_HOME', 'JENKINS_URL', 'TRAVIS', 'CIRCLECI', 'CI', 'APPCENTER_BUILD_ID', 'TEAMCITY_VERSION', 'GO_PIPELINE_NAME', 'bamboo_buildKey', 'GITLAB_CI', 'XCS', 'TF_BUILD', 'GITHUB_ACTION'].each do |current|
|
75
|
+
['JENKINS_HOME', 'JENKINS_URL', 'TRAVIS', 'CIRCLECI', 'CI', 'APPCENTER_BUILD_ID', 'TEAMCITY_VERSION', 'GO_PIPELINE_NAME', 'bamboo_buildKey', 'GITLAB_CI', 'XCS', 'TF_BUILD', 'GITHUB_ACTION', 'GITHUB_ACTIONS'].each do |current|
|
76
76
|
return true if ENV.key?(current)
|
77
77
|
end
|
78
78
|
return false
|
data/match/lib/match/importer.rb
CHANGED
@@ -72,7 +72,7 @@ module Match
|
|
72
72
|
cert.certificate_content == cert_contents_base_64
|
73
73
|
end
|
74
74
|
|
75
|
-
UI.
|
75
|
+
UI.user_error!("This certificate cannot be imported - the certificate contents did not match with any available on the Developer Portal") if matching_cert.nil?
|
76
76
|
|
77
77
|
# Make dir if doesn't exist
|
78
78
|
FileUtils.mkdir_p(output_dir)
|
data/match/lib/match/options.rb
CHANGED
@@ -32,6 +32,11 @@ module Match
|
|
32
32
|
description: "Only fetch existing certificates and profiles, don't generate new ones",
|
33
33
|
is_string: false,
|
34
34
|
default_value: false),
|
35
|
+
FastlaneCore::ConfigItem.new(key: :skip_provisioning_profiles,
|
36
|
+
env_name: "MATCH_SKIP_PROVISIONING_PROFILES",
|
37
|
+
description: "Skip syncing provisioning profiles",
|
38
|
+
is_string: false,
|
39
|
+
default_value: false),
|
35
40
|
|
36
41
|
# app
|
37
42
|
FastlaneCore::ConfigItem.new(key: :app_identifier,
|
data/match/lib/match/runner.rb
CHANGED
@@ -85,12 +85,14 @@ module Match
|
|
85
85
|
spaceship.certificate_exists(username: params[:username], certificate_id: cert_id) if spaceship
|
86
86
|
|
87
87
|
# Provisioning Profiles
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
88
|
+
unless params[:skip_provisioning_profiles]
|
89
|
+
app_identifiers.each do |app_identifier|
|
90
|
+
loop do
|
91
|
+
break if fetch_provisioning_profile(params: params,
|
92
|
+
certificate_id: cert_id,
|
93
|
+
app_identifier: app_identifier,
|
94
|
+
working_directory: storage.working_directory)
|
95
|
+
end
|
94
96
|
end
|
95
97
|
end
|
96
98
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.131.0.beta.
|
4
|
+
version: 2.131.0.beta.20190904200040
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Felix Krause
|
@@ -27,7 +27,7 @@ authors:
|
|
27
27
|
autorequire:
|
28
28
|
bindir: bin
|
29
29
|
cert_chain: []
|
30
|
-
date: 2019-
|
30
|
+
date: 2019-09-04 00:00:00.000000000 Z
|
31
31
|
dependencies:
|
32
32
|
- !ruby/object:Gem::Dependency
|
33
33
|
name: slack-notifier
|
@@ -1746,24 +1746,24 @@ metadata:
|
|
1746
1746
|
post_install_message:
|
1747
1747
|
rdoc_options: []
|
1748
1748
|
require_paths:
|
1749
|
-
-
|
1749
|
+
- screengrab/lib
|
1750
1750
|
- produce/lib
|
1751
|
+
- cert/lib
|
1751
1752
|
- precheck/lib
|
1752
|
-
-
|
1753
|
+
- credentials_manager/lib
|
1754
|
+
- snapshot/lib
|
1753
1755
|
- supply/lib
|
1754
1756
|
- fastlane_core/lib
|
1755
|
-
-
|
1756
|
-
-
|
1757
|
-
-
|
1757
|
+
- gym/lib
|
1758
|
+
- pem/lib
|
1759
|
+
- deliver/lib
|
1760
|
+
- frameit/lib
|
1761
|
+
- fastlane/lib
|
1758
1762
|
- sigh/lib
|
1759
1763
|
- scan/lib
|
1760
|
-
- credentials_manager/lib
|
1761
|
-
- gym/lib
|
1762
1764
|
- spaceship/lib
|
1763
|
-
-
|
1765
|
+
- pilot/lib
|
1764
1766
|
- match/lib
|
1765
|
-
- fastlane/lib
|
1766
|
-
- pem/lib
|
1767
1767
|
required_ruby_version: !ruby/object:Gem::Requirement
|
1768
1768
|
requirements:
|
1769
1769
|
- - ">="
|