fastlane 2.177.0 → 2.178.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +80 -80
- data/cert/lib/cert/runner.rb +1 -1
- data/deliver/lib/deliver/runner.rb +6 -2
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +1 -1
- data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +4 -1
- data/fastlane/lib/fastlane/actions/backup_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/commit_github_file.rb +11 -1
- data/fastlane/lib/fastlane/actions/create_xcframework.rb +5 -0
- data/fastlane/lib/fastlane/actions/get_github_release.rb +11 -1
- data/fastlane/lib/fastlane/actions/github_api.rb +2 -1
- data/fastlane/lib/fastlane/actions/increment_build_number.rb +8 -1
- data/fastlane/lib/fastlane/actions/register_device.rb +1 -1
- data/fastlane/lib/fastlane/actions/register_devices.rb +1 -1
- data/fastlane/lib/fastlane/actions/restore_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_changelog.rb +1 -1
- data/fastlane/lib/fastlane/erb_template_helper.rb +7 -1
- data/fastlane/lib/fastlane/fast_file.rb +9 -5
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +1 -1
- data/fastlane/swift/Fastlane.swift +20 -11
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
- data/fastlane/swift/formatting/Brewfile.lock.json +3 -3
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +10 -6
- data/fastlane_core/lib/fastlane_core/project.rb +3 -14
- data/fastlane_core/lib/fastlane_core/ui/interface.rb +1 -1
- data/match/lib/match/importer.rb +1 -1
- data/match/lib/match/migrate.rb +1 -1
- data/match/lib/match/nuke.rb +1 -1
- data/match/lib/match/runner.rb +1 -1
- data/match/lib/match/storage/google_cloud_storage.rb +1 -1
- data/match/lib/match/storage/s3_storage.rb +1 -1
- data/pilot/lib/pilot/build_manager.rb +9 -4
- data/pilot/lib/pilot/manager.rb +1 -1
- data/pilot/lib/pilot/options.rb +2 -2
- data/precheck/lib/precheck/runner.rb +1 -1
- data/sigh/lib/sigh/download_all.rb +1 -1
- data/sigh/lib/sigh/runner.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +13 -0
- data/spaceship/lib/spaceship/connect_api/token.rb +1 -1
- metadata +21 -21
@@ -123,7 +123,7 @@ module Match
|
|
123
123
|
end
|
124
124
|
|
125
125
|
def api_token
|
126
|
-
api_token ||= Spaceship::ConnectAPI::Token.create(self.api_key) if self.api_key
|
126
|
+
api_token ||= Spaceship::ConnectAPI::Token.create(**self.api_key) if self.api_key
|
127
127
|
api_token ||= Spaceship::ConnectAPI::Token.from_json_file(self.api_key_path) if self.api_key_path
|
128
128
|
return api_token
|
129
129
|
end
|
@@ -196,7 +196,7 @@ module Match
|
|
196
196
|
end
|
197
197
|
|
198
198
|
def api_token
|
199
|
-
api_token ||= Spaceship::ConnectAPI::Token.create(self.api_key) if self.api_key
|
199
|
+
api_token ||= Spaceship::ConnectAPI::Token.create(**self.api_key) if self.api_key
|
200
200
|
api_token ||= Spaceship::ConnectAPI::Token.from_json_file(self.api_key_path) if self.api_key_path
|
201
201
|
return api_token
|
202
202
|
end
|
@@ -34,7 +34,8 @@ module Pilot
|
|
34
34
|
result = transporter.upload(package_path: package_path)
|
35
35
|
|
36
36
|
unless result
|
37
|
-
|
37
|
+
transporter_errors = transporter.displayable_errors
|
38
|
+
UI.user_error!("Error uploading ipa file: \n #{transporter_errors}")
|
38
39
|
end
|
39
40
|
|
40
41
|
UI.success("Successfully uploaded the new binary to App Store Connect")
|
@@ -253,9 +254,13 @@ module Pilot
|
|
253
254
|
end
|
254
255
|
end
|
255
256
|
|
256
|
-
|
257
|
-
|
258
|
-
|
257
|
+
if options[:notify_external_testers].nil?
|
258
|
+
UI.important("Using App Store Connect's default for notifying external testers (which is true) - set `notify_external_testers` for full control")
|
259
|
+
else
|
260
|
+
update_build_beta_details(build, {
|
261
|
+
auto_notify_enabled: options[:notify_external_testers]
|
262
|
+
})
|
263
|
+
end
|
259
264
|
end
|
260
265
|
|
261
266
|
def self.truncate_changelog(changelog)
|
data/pilot/lib/pilot/manager.rb
CHANGED
@@ -30,7 +30,7 @@ module Pilot
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def api_token
|
33
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(config[:api_key]) if config[:api_key]
|
33
|
+
@api_token ||= Spaceship::ConnectAPI::Token.create(**config[:api_key]) if config[:api_key]
|
34
34
|
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(config[:api_key_path]) if config[:api_key_path]
|
35
35
|
return @api_token
|
36
36
|
end
|
data/pilot/lib/pilot/options.rb
CHANGED
@@ -182,8 +182,8 @@ module Pilot
|
|
182
182
|
FastlaneCore::ConfigItem.new(key: :notify_external_testers,
|
183
183
|
is_string: false,
|
184
184
|
env_name: "PILOT_NOTIFY_EXTERNAL_TESTERS",
|
185
|
-
description: "Should notify external testers?",
|
186
|
-
|
185
|
+
description: "Should notify external testers? (Not setting a value will use App Store Connect's default which is to notify)",
|
186
|
+
optional: true),
|
187
187
|
FastlaneCore::ConfigItem.new(key: :app_version,
|
188
188
|
env_name: "PILOT_APP_VERSION",
|
189
189
|
description: "The version number of the application build to distribute. If the version number is not specified, then the most recent build uploaded to TestFlight will be distributed. If specified, the most recent build for the version number will be distributed",
|
@@ -72,7 +72,7 @@ module Precheck
|
|
72
72
|
end
|
73
73
|
|
74
74
|
def api_token
|
75
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(Precheck.config[:api_key]) if Precheck.config[:api_key]
|
75
|
+
@api_token ||= Spaceship::ConnectAPI::Token.create(**Precheck.config[:api_key]) if Precheck.config[:api_key]
|
76
76
|
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(Precheck.config[:api_key_path]) if Precheck.config[:api_key_path]
|
77
77
|
return @api_token
|
78
78
|
end
|
@@ -60,7 +60,7 @@ module Sigh
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def api_token
|
63
|
-
api_token ||= Spaceship::ConnectAPI::Token.create(Sigh.config[:api_key]) if Sigh.config[:api_key]
|
63
|
+
api_token ||= Spaceship::ConnectAPI::Token.create(**Sigh.config[:api_key]) if Sigh.config[:api_key]
|
64
64
|
api_token ||= Spaceship::ConnectAPI::Token.from_json_file(Sigh.config[:api_key_path]) if Sigh.config[:api_key_path]
|
65
65
|
return api_token
|
66
66
|
end
|
data/sigh/lib/sigh/runner.rb
CHANGED
@@ -60,7 +60,7 @@ module Sigh
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def api_token
|
63
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(Sigh.config[:api_key]) if Sigh.config[:api_key]
|
63
|
+
@api_token ||= Spaceship::ConnectAPI::Token.create(**Sigh.config[:api_key]) if Sigh.config[:api_key]
|
64
64
|
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(Sigh.config[:api_key_path]) if Sigh.config[:api_key_path]
|
65
65
|
return @api_token
|
66
66
|
end
|
@@ -38,6 +38,11 @@ module Spaceship
|
|
38
38
|
return client.post_bulk_beta_tester_assignments(beta_group_id: id, beta_testers: beta_testers)
|
39
39
|
end
|
40
40
|
|
41
|
+
def add_beta_testers(client: nil, beta_tester_ids:)
|
42
|
+
client ||= Spaceship::ConnectAPI
|
43
|
+
return client.add_beta_tester_to_group(beta_group_id: id, beta_tester_ids: beta_tester_ids)
|
44
|
+
end
|
45
|
+
|
41
46
|
def update(client: nil, attributes: nil)
|
42
47
|
return if attributes.empty?
|
43
48
|
|
@@ -275,6 +275,19 @@ module Spaceship
|
|
275
275
|
test_flight_request_client.post("bulkBetaTesterAssignments", body)
|
276
276
|
end
|
277
277
|
|
278
|
+
def add_beta_tester_to_group(beta_group_id: nil, beta_tester_ids: nil)
|
279
|
+
beta_tester_ids || []
|
280
|
+
body = {
|
281
|
+
data: beta_tester_ids.map do |id|
|
282
|
+
{
|
283
|
+
type: "betaTesters",
|
284
|
+
id: id
|
285
|
+
}
|
286
|
+
end
|
287
|
+
}
|
288
|
+
test_flight_request_client.post("betaGroups/#{beta_group_id}/relationships/betaTesters", body)
|
289
|
+
end
|
290
|
+
|
278
291
|
def delete_beta_tester_from_apps(beta_tester_id: nil, app_ids: [])
|
279
292
|
body = {
|
280
293
|
data: app_ids.map do |id|
|
@@ -37,7 +37,7 @@ module Spaceship
|
|
37
37
|
raise "App Store Connect API key JSON is missing field(s): #{missing_keys.join(', ')}"
|
38
38
|
end
|
39
39
|
|
40
|
-
self.create(json)
|
40
|
+
self.create(**json)
|
41
41
|
end
|
42
42
|
|
43
43
|
def self.create(key_id: nil, issuer_id: nil, filepath: nil, key: nil, is_key_content_base64: false, duration: nil, in_house: nil, **)
|
metadata
CHANGED
@@ -1,35 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.178.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
+
- Joshua Liebowitz
|
8
|
+
- Jorge Revuelta H
|
9
|
+
- Iulian Onofrei
|
7
10
|
- Kohki Miki
|
8
|
-
-
|
9
|
-
-
|
10
|
-
-
|
11
|
+
- Fumiya Nakamura
|
12
|
+
- Manu Wallner
|
13
|
+
- Stefan Natchev
|
14
|
+
- Olivier Halligon
|
11
15
|
- Daniel Jankowski
|
12
|
-
- Luka Mirosevic
|
13
|
-
- Iulian Onofrei
|
14
16
|
- Helmut Januschka
|
17
|
+
- Jan Piotrowski
|
18
|
+
- Felix Krause
|
19
|
+
- Jimmy Dee
|
15
20
|
- Maksym Grebenets
|
16
|
-
-
|
21
|
+
- Andrew McBurney
|
17
22
|
- Max Ott
|
18
|
-
-
|
23
|
+
- Matthew Ellis
|
19
24
|
- Aaron Brager
|
20
|
-
- Josh Holtz
|
21
|
-
- Fumiya Nakamura
|
22
|
-
- Olivier Halligon
|
23
25
|
- Jérôme Lacoste
|
24
|
-
-
|
25
|
-
-
|
26
|
-
-
|
27
|
-
- Jorge Revuelta H
|
28
|
-
- Manu Wallner
|
26
|
+
- Luka Mirosevic
|
27
|
+
- Danielle Tomlinson
|
28
|
+
- Josh Holtz
|
29
29
|
autorequire:
|
30
30
|
bindir: bin
|
31
31
|
cert_chain: []
|
32
|
-
date: 2021-03-
|
32
|
+
date: 2021-03-12 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: slack-notifier
|
@@ -707,14 +707,14 @@ dependencies:
|
|
707
707
|
requirements:
|
708
708
|
- - "~>"
|
709
709
|
- !ruby/object:Gem::Version
|
710
|
-
version: 3.10
|
710
|
+
version: '3.10'
|
711
711
|
type: :development
|
712
712
|
prerelease: false
|
713
713
|
version_requirements: !ruby/object:Gem::Requirement
|
714
714
|
requirements:
|
715
715
|
- - "~>"
|
716
716
|
- !ruby/object:Gem::Version
|
717
|
-
version: 3.10
|
717
|
+
version: '3.10'
|
718
718
|
- !ruby/object:Gem::Dependency
|
719
719
|
name: rspec_junit_formatter
|
720
720
|
requirement: !ruby/object:Gem::Requirement
|
@@ -889,14 +889,14 @@ dependencies:
|
|
889
889
|
requirements:
|
890
890
|
- - "~>"
|
891
891
|
- !ruby/object:Gem::Version
|
892
|
-
version: 1.2
|
892
|
+
version: '1.2'
|
893
893
|
type: :development
|
894
894
|
prerelease: false
|
895
895
|
version_requirements: !ruby/object:Gem::Requirement
|
896
896
|
requirements:
|
897
897
|
- - "~>"
|
898
898
|
- !ruby/object:Gem::Version
|
899
|
-
version: 1.2
|
899
|
+
version: '1.2'
|
900
900
|
- !ruby/object:Gem::Dependency
|
901
901
|
name: sinatra
|
902
902
|
requirement: !ruby/object:Gem::Requirement
|