fastlane 2.191.0 → 2.194.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +84 -84
- data/cert/lib/cert/options.rb +1 -1
- data/deliver/lib/deliver/options.rb +1 -1
- data/fastlane/lib/assets/completions/completion.bash +4 -1
- data/fastlane/lib/assets/completions/completion.zsh +6 -5
- data/fastlane/lib/fastlane/actions/.notarize.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +1 -1
- data/fastlane/lib/fastlane/actions/create_xcframework.rb +97 -17
- data/fastlane/lib/fastlane/actions/get_provisioning_profile.rb +1 -1
- data/fastlane/lib/fastlane/actions/gradle.rb +1 -1
- data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +1 -1
- data/fastlane/lib/fastlane/actions/notarize.rb +97 -12
- data/fastlane/lib/fastlane/actions/push_git_tags.rb +1 -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/set_changelog.rb +1 -1
- data/fastlane/lib/fastlane/actions/slather.rb +6 -0
- data/fastlane/lib/fastlane/actions/sync_code_signing.rb +1 -1
- data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +3 -1
- data/fastlane/lib/fastlane/actions/zip.rb +5 -5
- data/fastlane/lib/fastlane/documentation/markdown_docs_generator.rb +11 -5
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +2 -2
- data/fastlane/swift/Fastlane.swift +101 -43
- 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 +3 -3
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +2 -2
- 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 +10 -10
- data/fastlane_core/lib/fastlane_core/build_watcher.rb +25 -6
- data/fastlane_core/lib/fastlane_core/pkg_file_analyser.rb +5 -0
- data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +41 -0
- data/match/lib/match/options.rb +2 -2
- data/match/lib/match/runner.rb +10 -9
- data/pilot/lib/pilot/build_manager.rb +14 -4
- data/pilot/lib/pilot/manager.rb +3 -1
- data/pilot/lib/pilot/options.rb +21 -2
- data/precheck/lib/precheck/options.rb +1 -1
- data/produce/lib/produce/service.rb +1 -1
- data/sigh/lib/assets/resign.sh +1 -1
- data/sigh/lib/sigh/options.rb +1 -1
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +2 -1
- data/spaceship/lib/spaceship/connect_api/api_client.rb +15 -1
- data/spaceship/lib/spaceship/connect_api/models/app.rb +2 -1
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/build.rb +4 -0
- data/spaceship/lib/spaceship/connect_api/models/build_beta_detail.rb +4 -0
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +7 -5
- data/spaceship/lib/spaceship/connect_api/token.rb +2 -0
- data/supply/lib/supply/client.rb +38 -5
- data/supply/lib/supply/options.rb +7 -0
- data/supply/lib/supply/uploader.rb +9 -6
- metadata +35 -20
@@ -64,7 +64,7 @@ module Fastlane
|
|
64
64
|
['SIGH_PROFILE_PATHS', 'Paths in which certificates, key and profile are exported'],
|
65
65
|
['SIGH_UUID', 'UUID (Universally Unique IDentifier) of a provisioning profile'],
|
66
66
|
['SIGH_NAME', 'The name of the profile'],
|
67
|
-
['SIGH_PROFILE_TYPE', 'The profile type, can be
|
67
|
+
['SIGH_PROFILE_TYPE', 'The profile type, can be app-store, ad-hoc, development, enterprise, developer-id, can be used in `build_app` as a default value for `export_method`']
|
68
68
|
]
|
69
69
|
end
|
70
70
|
|
@@ -64,7 +64,7 @@ module Fastlane
|
|
64
64
|
print_command_output: params[:print_command_output])
|
65
65
|
|
66
66
|
# If we didn't build, then we return now, as it makes no sense to search for apk's in a non-`assemble` or non-`build` scenario
|
67
|
-
return result unless
|
67
|
+
return result unless gradle_task =~ /\b(assemble)/ || gradle_task =~ /\b(bundle)/
|
68
68
|
|
69
69
|
apk_search_path = File.join(project_dir, '**', 'build', 'outputs', 'apk', '**', '*.apk')
|
70
70
|
aab_search_path = File.join(project_dir, '**', 'build', 'outputs', 'bundle', '**', '*.aab')
|
@@ -47,7 +47,7 @@ module Fastlane
|
|
47
47
|
end),
|
48
48
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
49
49
|
env_names: ["APPSTORE_BUILD_NUMBER_API_KEY", "APP_STORE_CONNECT_API_KEY"],
|
50
|
-
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
50
|
+
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)",
|
51
51
|
type: Hash,
|
52
52
|
optional: true,
|
53
53
|
sensitive: true,
|
@@ -8,7 +8,14 @@ module Fastlane
|
|
8
8
|
try_early_stapling = params[:try_early_stapling]
|
9
9
|
print_log = params[:print_log]
|
10
10
|
verbose = params[:verbose]
|
11
|
-
|
11
|
+
|
12
|
+
# Only set :api_key from SharedValues if :api_key_path isn't set (conflicting options)
|
13
|
+
unless params[:api_key_path]
|
14
|
+
params[:api_key] ||= Actions.lane_context[SharedValues::APP_STORE_CONNECT_API_KEY]
|
15
|
+
end
|
16
|
+
api_key = Spaceship::ConnectAPI::Token.from(hash: params[:api_key], filepath: params[:api_key_path])
|
17
|
+
|
18
|
+
use_notarytool = params[:use_notarytool]
|
12
19
|
|
13
20
|
# Compress and read bundle identifier only for .app bundle.
|
14
21
|
compressed_package_path = nil
|
@@ -30,13 +37,79 @@ module Fastlane
|
|
30
37
|
|
31
38
|
UI.user_error!('Could not read bundle identifier, provide as a parameter') unless bundle_id
|
32
39
|
|
40
|
+
if use_notarytool
|
41
|
+
notarytool(params, package_path, bundle_id, try_early_stapling, print_log, verbose, api_key, compressed_package_path)
|
42
|
+
else
|
43
|
+
altool(params, package_path, bundle_id, try_early_stapling, print_log, verbose, api_key, compressed_package_path)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.notarytool(params, package_path, bundle_id, try_early_stapling, print_log, verbose, api_key, compressed_package_path)
|
48
|
+
temp_file = nil
|
49
|
+
|
50
|
+
# Create authorization part of command with either API Key or Apple ID
|
51
|
+
auth_parts = []
|
52
|
+
if api_key
|
53
|
+
# Writes key contents to temporary file for command
|
54
|
+
require 'tempfile'
|
55
|
+
temp_file = Tempfile.new
|
56
|
+
api_key.write_key_to_file(temp_file.path)
|
57
|
+
|
58
|
+
auth_parts << "--key #{temp_file.path}"
|
59
|
+
auth_parts << "--key-id #{api_key.key_id}"
|
60
|
+
auth_parts << "--issuer #{api_key.issuer_id}"
|
61
|
+
else
|
62
|
+
auth_parts << "--apple-id #{params[:username]}"
|
63
|
+
auth_parts << "--password #{ENV['FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD']}"
|
64
|
+
auth_parts << "--team-id #{params[:asc_provider]}"
|
65
|
+
end
|
66
|
+
|
67
|
+
# Submits package and waits for processing using `xcrun notarytool submit --wait`
|
68
|
+
submit_parts = [
|
69
|
+
"xcrun notarytool submit",
|
70
|
+
(compressed_package_path || package_path).shellescape,
|
71
|
+
"--output-format json",
|
72
|
+
"--wait"
|
73
|
+
] + auth_parts
|
74
|
+
|
75
|
+
submit_command = submit_parts.join(' ')
|
76
|
+
submit_response = Actions.sh(
|
77
|
+
submit_command,
|
78
|
+
log: verbose,
|
79
|
+
error_callback: lambda { |msg|
|
80
|
+
UI.error("Error polling for notarization info: #{msg}")
|
81
|
+
}
|
82
|
+
)
|
83
|
+
|
84
|
+
notarization_info = JSON.parse(submit_response)
|
85
|
+
|
86
|
+
# Staple
|
87
|
+
case notarization_info['status']
|
88
|
+
when 'Accepted'
|
89
|
+
submission_id = notarization_info["id"]
|
90
|
+
UI.success("Successfully uploaded package to notarization service with request identifier #{submission_id}")
|
91
|
+
|
92
|
+
UI.message('Stapling package')
|
93
|
+
self.staple(package_path, verbose)
|
94
|
+
|
95
|
+
UI.success("Successfully notarized and stapled package")
|
96
|
+
when 'Invalid'
|
97
|
+
UI.user_error!("Could not notarize package with message '#{notarization_info['statusSummary']}'")
|
98
|
+
else
|
99
|
+
UI.crash!("Could not notarize package with status '#{notarization_info['status']}'")
|
100
|
+
end
|
101
|
+
ensure
|
102
|
+
temp_file.delete if temp_file
|
103
|
+
end
|
104
|
+
|
105
|
+
def self.altool(params, package_path, bundle_id, try_early_stapling, print_log, verbose, api_key, compressed_package_path)
|
33
106
|
UI.message('Uploading package to notarization service, might take a while')
|
34
107
|
|
35
108
|
notarization_upload_command = "xcrun altool --notarize-app -t osx -f \"#{compressed_package_path || package_path}\" --primary-bundle-id #{bundle_id} --output-format xml"
|
36
109
|
|
37
110
|
notarization_info = {}
|
38
|
-
with_notarize_authenticator(params,
|
39
|
-
notarization_upload_command << " --asc-provider \"#{params[:asc_provider]}\"" if params[:asc_provider] &&
|
111
|
+
with_notarize_authenticator(params, api_key) do |notarize_authenticator|
|
112
|
+
notarization_upload_command << " --asc-provider \"#{params[:asc_provider]}\"" if params[:asc_provider] && api_key.nil?
|
40
113
|
|
41
114
|
notarization_upload_response = Actions.sh(
|
42
115
|
notarize_authenticator.call(notarization_upload_command),
|
@@ -125,16 +198,15 @@ module Fastlane
|
|
125
198
|
|
126
199
|
def self.staple(package_path, verbose)
|
127
200
|
Actions.sh(
|
128
|
-
"xcrun stapler staple
|
201
|
+
"xcrun stapler staple #{package_path.shellescape}",
|
129
202
|
log: verbose
|
130
203
|
)
|
131
204
|
end
|
132
205
|
|
133
|
-
def self.with_notarize_authenticator(params,
|
134
|
-
if
|
206
|
+
def self.with_notarize_authenticator(params, api_key)
|
207
|
+
if api_key
|
135
208
|
# From xcrun altool for --apiKey:
|
136
209
|
# This option will search the following directories in sequence for a private key file with the name of 'AuthKey_<api_key>.p8': './private_keys', '~/private_keys', '~/.private_keys', and '~/.appstoreconnect/private_keys'.
|
137
|
-
api_key = Spaceship::ConnectAPI::Token.from_json_file(api_key_path)
|
138
210
|
api_key_folder_path = File.expand_path('~/.appstoreconnect/private_keys')
|
139
211
|
api_key_file_path = File.join(api_key_folder_path, "AuthKey_#{api_key.key_id}.p8")
|
140
212
|
directory_exists = File.directory?(api_key_folder_path)
|
@@ -180,6 +252,12 @@ module Fastlane
|
|
180
252
|
verify_block: proc do |value|
|
181
253
|
UI.user_error!("Could not find package at '#{value}'") unless File.exist?(value)
|
182
254
|
end),
|
255
|
+
FastlaneCore::ConfigItem.new(key: :use_notarytool,
|
256
|
+
env_name: 'FL_NOTARIZE_USE_NOTARYTOOL',
|
257
|
+
description: 'Whether to `xcrun notarytool` or `xcrun altool`',
|
258
|
+
default_value: Helper.mac? && Helper.xcode_at_least?("13.0"), # Notary tool added in Xcode 13
|
259
|
+
default_value_dynamic: true,
|
260
|
+
type: Boolean),
|
183
261
|
FastlaneCore::ConfigItem.new(key: :try_early_stapling,
|
184
262
|
env_name: 'FL_NOTARIZE_TRY_EARLY_STAPLING',
|
185
263
|
description: 'Whether to try early stapling while the notarization request is in progress',
|
@@ -195,7 +273,7 @@ module Fastlane
|
|
195
273
|
description: 'Apple ID username',
|
196
274
|
default_value: username,
|
197
275
|
optional: true,
|
198
|
-
conflicting_options: [:api_key_path],
|
276
|
+
conflicting_options: [:api_key_path, :api_key],
|
199
277
|
default_value_dynamic: true),
|
200
278
|
FastlaneCore::ConfigItem.new(key: :asc_provider,
|
201
279
|
env_name: 'FL_NOTARIZE_ASC_PROVIDER',
|
@@ -215,13 +293,20 @@ module Fastlane
|
|
215
293
|
default_value: false,
|
216
294
|
type: Boolean),
|
217
295
|
FastlaneCore::ConfigItem.new(key: :api_key_path,
|
218
|
-
|
219
|
-
description:
|
296
|
+
env_names: ['FL_NOTARIZE_API_KEY_PATH', "APP_STORE_CONNECT_API_KEY_PATH"],
|
297
|
+
description: "Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)",
|
220
298
|
optional: true,
|
221
|
-
conflicting_options: [:username],
|
299
|
+
conflicting_options: [:username, :api_key],
|
222
300
|
verify_block: proc do |value|
|
223
301
|
UI.user_error!("API Key not found at '#{value}'") unless File.exist?(value)
|
224
|
-
end)
|
302
|
+
end),
|
303
|
+
FastlaneCore::ConfigItem.new(key: :api_key,
|
304
|
+
env_names: ['FL_NOTARIZE_API_KEY', "APP_STORE_CONNECT_API_KEY"],
|
305
|
+
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)",
|
306
|
+
optional: true,
|
307
|
+
conflicting_options: [:username, :api_key_path],
|
308
|
+
sensitive: true,
|
309
|
+
type: Hash)
|
225
310
|
]
|
226
311
|
end
|
227
312
|
|
@@ -73,7 +73,7 @@ module Fastlane
|
|
73
73
|
end),
|
74
74
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
75
75
|
env_names: ["FL_REGISTER_DEVICE_API_KEY", "APP_STORE_CONNECT_API_KEY"],
|
76
|
-
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
76
|
+
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)",
|
77
77
|
type: Hash,
|
78
78
|
default_value: Fastlane::Actions.lane_context[Fastlane::Actions::SharedValues::APP_STORE_CONNECT_API_KEY],
|
79
79
|
default_value_dynamic: true,
|
@@ -121,7 +121,7 @@ module Fastlane
|
|
121
121
|
end),
|
122
122
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
123
123
|
env_names: ["FL_REGISTER_DEVICES_API_KEY", "APP_STORE_CONNECT_API_KEY"],
|
124
|
-
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
124
|
+
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)",
|
125
125
|
type: Hash,
|
126
126
|
default_value: Fastlane::Actions.lane_context[Fastlane::Actions::SharedValues::APP_STORE_CONNECT_API_KEY],
|
127
127
|
default_value_dynamic: true,
|
@@ -115,7 +115,7 @@ module Fastlane
|
|
115
115
|
end),
|
116
116
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
117
117
|
env_names: ["FL_SET_CHANGELOG_API_KEY", "APP_STORE_CONNECT_API_KEY"],
|
118
|
-
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
118
|
+
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)",
|
119
119
|
type: Hash,
|
120
120
|
default_value: Fastlane::Actions.lane_context[Fastlane::Actions::SharedValues::APP_STORE_CONNECT_API_KEY],
|
121
121
|
default_value_dynamic: true,
|
@@ -9,6 +9,7 @@ module Fastlane
|
|
9
9
|
jenkins: '--jenkins',
|
10
10
|
buildkite: '--buildkite',
|
11
11
|
teamcity: '--teamcity',
|
12
|
+
github: '--github',
|
12
13
|
|
13
14
|
coveralls: '--coveralls',
|
14
15
|
simple_output: '--simple-output',
|
@@ -155,6 +156,11 @@ module Fastlane
|
|
155
156
|
env_name: "FL_SLATHER_INPUT_FORMAT", # The name of the environment variable
|
156
157
|
description: "The input format that slather should look for",
|
157
158
|
optional: true),
|
159
|
+
FastlaneCore::ConfigItem.new(key: :github,
|
160
|
+
env_name: "FL_SLATHER_GITHUB_ENABLED", # The name of the environment variable
|
161
|
+
description: "Tell slather that it is running on Github Actions",
|
162
|
+
type: Boolean,
|
163
|
+
optional: true),
|
158
164
|
FastlaneCore::ConfigItem.new(key: :buildkite,
|
159
165
|
env_name: "FL_SLATHER_BUILDKITE_ENABLED", # The name of the environment variable
|
160
166
|
description: "Tell slather that it is running on Buildkite",
|
@@ -82,7 +82,7 @@ module Fastlane
|
|
82
82
|
def self.output
|
83
83
|
[
|
84
84
|
['MATCH_PROVISIONING_PROFILE_MAPPING', 'The match provisioning profile mapping'],
|
85
|
-
['SIGH_PROFILE_TYPE', 'The profile type, can be
|
85
|
+
['SIGH_PROFILE_TYPE', 'The profile type, can be app-store, ad-hoc, development, enterprise, can be used in `build_app` as a default value for `export_method`']
|
86
86
|
]
|
87
87
|
end
|
88
88
|
|
@@ -13,6 +13,8 @@ module Fastlane
|
|
13
13
|
unless distribute_only
|
14
14
|
values[:ipa] ||= Actions.lane_context[SharedValues::IPA_OUTPUT_PATH]
|
15
15
|
values[:ipa] = File.expand_path(values[:ipa]) if values[:ipa]
|
16
|
+
values[:pkg] ||= Actions.lane_context[SharedValues::PKG_OUTPUT_PATH]
|
17
|
+
values[:pkg] = File.expand_path(values[:pkg]) if values[:pkg]
|
16
18
|
end
|
17
19
|
|
18
20
|
# Only set :api_key from SharedValues if :api_key_path isn't set (conflicting options)
|
@@ -117,7 +119,7 @@ module Fastlane
|
|
117
119
|
end
|
118
120
|
|
119
121
|
def self.is_supported?(platform)
|
120
|
-
[:ios].include?(platform)
|
122
|
+
[:ios, :mac, :tvos].include?(platform)
|
121
123
|
end
|
122
124
|
end
|
123
125
|
end
|
@@ -10,8 +10,8 @@ module Fastlane
|
|
10
10
|
@verbose = params[:verbose]
|
11
11
|
@password = params[:password]
|
12
12
|
@symlinks = params[:symlinks]
|
13
|
-
@include = params[:include]
|
14
|
-
@exclude = params[:exclude]
|
13
|
+
@include = params[:include] || []
|
14
|
+
@exclude = params[:exclude] || []
|
15
15
|
|
16
16
|
@output_path += ".zip" unless @output_path.end_with?(".zip")
|
17
17
|
end
|
@@ -34,7 +34,7 @@ module Fastlane
|
|
34
34
|
def run_zip_command
|
35
35
|
# The 'zip' command archives relative to the working directory, chdir to produce expected results relative to `path`
|
36
36
|
Dir.chdir(File.expand_path("..", path)) do
|
37
|
-
Actions.sh(zip_command)
|
37
|
+
Actions.sh(*zip_command)
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
@@ -52,8 +52,8 @@ module Fastlane
|
|
52
52
|
# The zip command is executed from the paths **parent** directory, as a result we use just the basename, which is the file or folder within
|
53
53
|
basename = File.basename(path)
|
54
54
|
|
55
|
-
command << output_path
|
56
|
-
command << basename
|
55
|
+
command << output_path
|
56
|
+
command << basename
|
57
57
|
|
58
58
|
unless include.empty?
|
59
59
|
command << "-i"
|
@@ -134,15 +134,17 @@ module Fastlane
|
|
134
134
|
require 'yaml'
|
135
135
|
FileUtils.mkdir_p(target_path)
|
136
136
|
docs_dir = File.join(target_path, "docs")
|
137
|
+
generated_actions_dir = File.join("generated", "actions")
|
138
|
+
FileUtils.mkdir_p(File.join(docs_dir, generated_actions_dir))
|
137
139
|
|
138
140
|
# Generate actions.md
|
139
141
|
template = File.join(Fastlane::ROOT, "lib/assets/Actions.md.erb")
|
140
142
|
result = ERB.new(File.read(template), 0, '-').result(binding) # https://web.archive.org/web/20160430190141/www.rrn.dk/rubys-erb-templating-system
|
141
|
-
File.write(File.join(docs_dir, "actions.md"), result)
|
143
|
+
File.write(File.join(docs_dir, "generated", "actions.md"), result)
|
142
144
|
|
143
|
-
# Generate actions sub pages (e.g. actions/slather.md, actions/scan.md)
|
145
|
+
# Generate actions sub pages (e.g. generated/actions/slather.md, generated/actions/scan.md)
|
144
146
|
all_actions_ref_yml = []
|
145
|
-
FileUtils.mkdir_p(File.join(docs_dir,
|
147
|
+
FileUtils.mkdir_p(File.join(docs_dir, generated_actions_dir))
|
146
148
|
ActionsList.all_actions do |action|
|
147
149
|
@action = action # to provide a reference in the .html.erb template
|
148
150
|
@action_filename = filename_for_action(action)
|
@@ -165,10 +167,14 @@ module Fastlane
|
|
165
167
|
template = File.join(Fastlane::ROOT, "lib/assets/ActionDetails.md.erb")
|
166
168
|
result = ERB.new(File.read(template), 0, '-').result(binding) # https://web.archive.org/web/20160430190141/www.rrn.dk/rubys-erb-templating-system
|
167
169
|
|
168
|
-
|
170
|
+
# Actions get placed in "generated/actions" directory
|
171
|
+
file_name = File.join(generated_actions_dir, "#{action.action_name}.md")
|
169
172
|
File.write(File.join(docs_dir, file_name), result)
|
170
173
|
|
171
|
-
|
174
|
+
# The action pages when published get moved to the "actions" directory
|
175
|
+
# The mkdocs.yml file needs to reference the "actions" directory (not the "generated/actions" directory)
|
176
|
+
published_file_name = File.join("actions", "#{action.action_name}.md")
|
177
|
+
all_actions_ref_yml << { action.action_name => published_file_name }
|
172
178
|
end
|
173
179
|
|
174
180
|
# Modify the mkdocs.yml to list all the actions
|
@@ -5,7 +5,7 @@ public protocol DeliverfileProtocol: class {
|
|
5
5
|
/// Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
6
6
|
var apiKeyPath: String? { get }
|
7
7
|
|
8
|
-
/// Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
8
|
+
/// Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
9
9
|
var apiKey: [String: Any]? { get }
|
10
10
|
|
11
11
|
/// Your Apple ID Username
|
@@ -260,4 +260,4 @@ public extension DeliverfileProtocol {
|
|
260
260
|
|
261
261
|
// Please don't remove the lines below
|
262
262
|
// They are used to detect outdated files
|
263
|
-
// FastlaneRunnerAPIVersion [0.9.
|
263
|
+
// FastlaneRunnerAPIVersion [0.9.83]
|
@@ -133,7 +133,7 @@ public func addGitTag(tag: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
133
133
|
|
134
134
|
- parameters:
|
135
135
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
136
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
136
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
137
137
|
- initialBuildNumber: sets the build number to given value if no build is in current train
|
138
138
|
- appIdentifier: The bundle identifier of your app
|
139
139
|
- username: Your Apple ID Username
|
@@ -643,7 +643,7 @@ public func appledoc(input: [String],
|
|
643
643
|
|
644
644
|
- parameters:
|
645
645
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
646
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
646
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
647
647
|
- username: Your Apple ID Username
|
648
648
|
- appIdentifier: The bundle identifier of your app
|
649
649
|
- appVersion: The version that should be edited or created
|
@@ -2588,7 +2588,7 @@ public func carthage(command: String = "bootstrap",
|
|
2588
2588
|
- force: Create a certificate even if an existing certificate exists
|
2589
2589
|
- generateAppleCerts: Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
|
2590
2590
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
2591
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
2591
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
2592
2592
|
- username: Your Apple ID Username
|
2593
2593
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
2594
2594
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -2752,7 +2752,7 @@ public func chatwork(apiToken: String,
|
|
2752
2752
|
|
2753
2753
|
- parameters:
|
2754
2754
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
2755
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
2755
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
2756
2756
|
- appIdentifier: The bundle identifier of your app
|
2757
2757
|
- username: Your Apple ID Username
|
2758
2758
|
- teamId: The ID of your App Store Connect team if you're in multiple teams
|
@@ -3504,37 +3504,63 @@ public func createPullRequest(apiToken: OptionalConfigValue<String?> = .fastlane
|
|
3504
3504
|
Package multiple build configs of a library/framework into a single xcframework
|
3505
3505
|
|
3506
3506
|
- parameters:
|
3507
|
-
- frameworks: Frameworks to add to the target xcframework
|
3508
|
-
-
|
3507
|
+
- frameworks: Frameworks (without dSYMs) to add to the target xcframework
|
3508
|
+
- frameworksWithDsyms: Frameworks (with dSYMs) to add to the target xcframework
|
3509
|
+
- libraries: Libraries (without headers or dSYMs) to add to the target xcframework
|
3510
|
+
- librariesWithHeadersOrDsyms: Libraries (with headers or dSYMs) to add to the target xcframework
|
3509
3511
|
- output: The path to write the xcframework to
|
3510
3512
|
- allowInternalDistribution: Specifies that the created xcframework contains information not suitable for public distribution
|
3511
3513
|
|
3512
3514
|
Utility for packaging multiple build configurations of a given library
|
3513
3515
|
or framework into a single xcframework.
|
3514
3516
|
|
3515
|
-
If you want to package several frameworks just provide
|
3516
|
-
the list of frameworks to be packaged using the :frameworks parameter.
|
3517
|
+
If you want to package several frameworks just provide one of:
|
3517
3518
|
|
3518
|
-
|
3519
|
-
|
3520
|
-
|
3521
|
-
|
3519
|
+
* An array containing the list of frameworks using the :frameworks parameter
|
3520
|
+
(if they have no associated dSYMs):
|
3521
|
+
['FrameworkA.framework', 'FrameworkB.framework']
|
3522
|
+
|
3523
|
+
* A hash containing the list of frameworks with their dSYMs using the
|
3524
|
+
:frameworks_with_dsyms parameter:
|
3525
|
+
{
|
3526
|
+
'FrameworkA.framework' => {},
|
3527
|
+
'FrameworkB.framework' => { dsyms: 'FrameworkB.framework.dSYM' }
|
3528
|
+
}
|
3529
|
+
|
3530
|
+
If you want to package several libraries just provide one of:
|
3531
|
+
|
3532
|
+
* An array containing the list of libraries using the :libraries parameter
|
3533
|
+
(if they have no associated headers or dSYMs):
|
3534
|
+
['LibraryA.so', 'LibraryB.so']
|
3535
|
+
|
3536
|
+
* A hash containing the list of libraries with their headers and dSYMs
|
3537
|
+
using the :libraries_with_headers_or_dsyms parameter:
|
3538
|
+
{
|
3539
|
+
'LibraryA.so' => { dsyms: 'libraryA.so.dSYM' },
|
3540
|
+
'LibraryB.so' => { headers: 'headers' }
|
3541
|
+
}
|
3522
3542
|
|
3523
3543
|
Finally specify the location of the xcframework to be generated using the :output
|
3524
3544
|
parameter.
|
3525
3545
|
|
3526
3546
|
*/
|
3527
3547
|
public func createXcframework(frameworks: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
3528
|
-
|
3548
|
+
frameworksWithDsyms: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
3549
|
+
libraries: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
3550
|
+
librariesWithHeadersOrDsyms: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
3529
3551
|
output: String,
|
3530
3552
|
allowInternalDistribution: OptionalConfigValue<Bool> = .fastlaneDefault(false))
|
3531
3553
|
{
|
3532
3554
|
let frameworksArg = frameworks.asRubyArgument(name: "frameworks", type: nil)
|
3555
|
+
let frameworksWithDsymsArg = frameworksWithDsyms.asRubyArgument(name: "frameworks_with_dsyms", type: nil)
|
3533
3556
|
let librariesArg = libraries.asRubyArgument(name: "libraries", type: nil)
|
3557
|
+
let librariesWithHeadersOrDsymsArg = librariesWithHeadersOrDsyms.asRubyArgument(name: "libraries_with_headers_or_dsyms", type: nil)
|
3534
3558
|
let outputArg = RubyCommand.Argument(name: "output", value: output, type: nil)
|
3535
3559
|
let allowInternalDistributionArg = allowInternalDistribution.asRubyArgument(name: "allow_internal_distribution", type: nil)
|
3536
3560
|
let array: [RubyCommand.Argument?] = [frameworksArg,
|
3561
|
+
frameworksWithDsymsArg,
|
3537
3562
|
librariesArg,
|
3563
|
+
librariesWithHeadersOrDsymsArg,
|
3538
3564
|
outputArg,
|
3539
3565
|
allowInternalDistributionArg]
|
3540
3566
|
let args: [RubyCommand.Argument] = array
|
@@ -3654,7 +3680,7 @@ public func deleteKeychain(name: OptionalConfigValue<String?> = .fastlaneDefault
|
|
3654
3680
|
|
3655
3681
|
- parameters:
|
3656
3682
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
3657
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
3683
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
3658
3684
|
- username: Your Apple ID Username
|
3659
3685
|
- appIdentifier: The bundle identifier of your app
|
3660
3686
|
- appVersion: The version that should be edited or created
|
@@ -4684,7 +4710,7 @@ public func getBuildNumberRepository(useHgRevisionNumber: OptionalConfigValue<Bo
|
|
4684
4710
|
- force: Create a certificate even if an existing certificate exists
|
4685
4711
|
- generateAppleCerts: Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
|
4686
4712
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
4687
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
4713
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
4688
4714
|
- username: Your Apple ID Username
|
4689
4715
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
4690
4716
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -4914,7 +4940,7 @@ public func getManagedPlayStorePublishingRights(jsonKey: OptionalConfigValue<Str
|
|
4914
4940
|
- force: Renew provisioning profiles regardless of its state - to automatically add all devices for ad hoc profiles
|
4915
4941
|
- appIdentifier: The bundle identifier of your app
|
4916
4942
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
4917
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
4943
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
4918
4944
|
- username: Your Apple ID Username
|
4919
4945
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
4920
4946
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -6402,7 +6428,7 @@ public func jazzy(config: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
|
6402
6428
|
|
6403
6429
|
- parameters:
|
6404
6430
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
6405
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
6431
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
6406
6432
|
- live: Query the live version (ready-for-sale)
|
6407
6433
|
- appIdentifier: The bundle identifier of your app
|
6408
6434
|
- username: Your Apple ID Username
|
@@ -6595,7 +6621,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
6595
6621
|
- skipProvisioningProfiles: Skip syncing provisioning profiles
|
6596
6622
|
- appIdentifier: The bundle identifier(s) of your app (comma-separated string or array of strings)
|
6597
6623
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
6598
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
6624
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
6599
6625
|
- username: Your Apple ID Username
|
6600
6626
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
6601
6627
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -6620,7 +6646,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
6620
6646
|
- keychainName: Keychain the items should be imported to
|
6621
6647
|
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
|
6622
6648
|
- force: Renew the provisioning profiles every time you run match
|
6623
|
-
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile
|
6649
|
+
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
|
6624
6650
|
- skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
|
6625
6651
|
- skipDocs: Skip generation of a README.md for the created git repository
|
6626
6652
|
- platform: Set the provisioning profile's platform to work with (i.e. ios, tvos, macos, catalyst)
|
@@ -6786,7 +6812,7 @@ public func match(type: String = matchfile.type,
|
|
6786
6812
|
- skipProvisioningProfiles: Skip syncing provisioning profiles
|
6787
6813
|
- appIdentifier: The bundle identifier(s) of your app (comma-separated string or array of strings)
|
6788
6814
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
6789
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
6815
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
6790
6816
|
- username: Your Apple ID Username
|
6791
6817
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
6792
6818
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -6811,7 +6837,7 @@ public func match(type: String = matchfile.type,
|
|
6811
6837
|
- keychainName: Keychain the items should be imported to
|
6812
6838
|
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
|
6813
6839
|
- force: Renew the provisioning profiles every time you run match
|
6814
|
-
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile
|
6840
|
+
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
|
6815
6841
|
- skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
|
6816
6842
|
- skipDocs: Skip generation of a README.md for the created git repository
|
6817
6843
|
- platform: Set the provisioning profile's platform to work with (i.e. ios, tvos, macos, catalyst)
|
@@ -7103,24 +7129,29 @@ public func nexusUpload(file: String,
|
|
7103
7129
|
|
7104
7130
|
- parameters:
|
7105
7131
|
- package: Path to package to notarize, e.g. .app bundle or disk image
|
7132
|
+
- useNotarytool: Whether to `xcrun notarytool` or `xcrun altool`
|
7106
7133
|
- tryEarlyStapling: Whether to try early stapling while the notarization request is in progress
|
7107
7134
|
- bundleId: Bundle identifier to uniquely identify the package
|
7108
7135
|
- username: Apple ID username
|
7109
7136
|
- ascProvider: Provider short name for accounts associated with multiple providers
|
7110
7137
|
- printLog: Whether to print notarization log file, listing issues on failure and warnings on success
|
7111
7138
|
- verbose: Whether to log requests
|
7112
|
-
- apiKeyPath: Path to
|
7139
|
+
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
7140
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
7113
7141
|
*/
|
7114
7142
|
public func notarize(package: String,
|
7143
|
+
useNotarytool: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
7115
7144
|
tryEarlyStapling: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
7116
7145
|
bundleId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7117
7146
|
username: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7118
7147
|
ascProvider: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7119
7148
|
printLog: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
7120
7149
|
verbose: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
7121
|
-
apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(nil)
|
7150
|
+
apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7151
|
+
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil))
|
7122
7152
|
{
|
7123
7153
|
let packageArg = RubyCommand.Argument(name: "package", value: package, type: nil)
|
7154
|
+
let useNotarytoolArg = useNotarytool.asRubyArgument(name: "use_notarytool", type: nil)
|
7124
7155
|
let tryEarlyStaplingArg = tryEarlyStapling.asRubyArgument(name: "try_early_stapling", type: nil)
|
7125
7156
|
let bundleIdArg = bundleId.asRubyArgument(name: "bundle_id", type: nil)
|
7126
7157
|
let usernameArg = username.asRubyArgument(name: "username", type: nil)
|
@@ -7128,14 +7159,17 @@ public func notarize(package: String,
|
|
7128
7159
|
let printLogArg = printLog.asRubyArgument(name: "print_log", type: nil)
|
7129
7160
|
let verboseArg = verbose.asRubyArgument(name: "verbose", type: nil)
|
7130
7161
|
let apiKeyPathArg = apiKeyPath.asRubyArgument(name: "api_key_path", type: nil)
|
7162
|
+
let apiKeyArg = apiKey.asRubyArgument(name: "api_key", type: nil)
|
7131
7163
|
let array: [RubyCommand.Argument?] = [packageArg,
|
7164
|
+
useNotarytoolArg,
|
7132
7165
|
tryEarlyStaplingArg,
|
7133
7166
|
bundleIdArg,
|
7134
7167
|
usernameArg,
|
7135
7168
|
ascProviderArg,
|
7136
7169
|
printLogArg,
|
7137
7170
|
verboseArg,
|
7138
|
-
apiKeyPathArg
|
7171
|
+
apiKeyPathArg,
|
7172
|
+
apiKeyArg]
|
7139
7173
|
let args: [RubyCommand.Argument] = array
|
7140
7174
|
.filter { $0?.value != nil }
|
7141
7175
|
.compactMap { $0 }
|
@@ -7472,12 +7506,13 @@ public func pem(development: OptionalConfigValue<Bool> = .fastlaneDefault(false)
|
|
7472
7506
|
|
7473
7507
|
- parameters:
|
7474
7508
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
7475
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
7509
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
7476
7510
|
- username: Your Apple ID Username
|
7477
7511
|
- appIdentifier: The bundle identifier of the app to upload or manage testers (optional)
|
7478
7512
|
- appPlatform: The platform to use (optional)
|
7479
7513
|
- appleId: Apple ID property in the App Information section in App Store Connect
|
7480
7514
|
- ipa: Path to the ipa file to upload
|
7515
|
+
- pkg: Path to your pkg file
|
7481
7516
|
- demoAccountRequired: Do you need a demo account when Apple does review?
|
7482
7517
|
- betaAppReviewInfo: Beta app review information for contact info and demo account
|
7483
7518
|
- localizedAppInfo: Localized beta app test info for description, feedback email, marketing url, and privacy policy
|
@@ -7516,9 +7551,10 @@ public func pilot(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(ni
|
|
7516
7551
|
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
7517
7552
|
username: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7518
7553
|
appIdentifier: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7519
|
-
appPlatform: String =
|
7554
|
+
appPlatform: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7520
7555
|
appleId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7521
7556
|
ipa: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7557
|
+
pkg: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
7522
7558
|
demoAccountRequired: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
7523
7559
|
betaAppReviewInfo: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
7524
7560
|
localizedAppInfo: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
@@ -7554,9 +7590,10 @@ public func pilot(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(ni
|
|
7554
7590
|
let apiKeyArg = apiKey.asRubyArgument(name: "api_key", type: nil)
|
7555
7591
|
let usernameArg = username.asRubyArgument(name: "username", type: nil)
|
7556
7592
|
let appIdentifierArg = appIdentifier.asRubyArgument(name: "app_identifier", type: nil)
|
7557
|
-
let appPlatformArg =
|
7593
|
+
let appPlatformArg = appPlatform.asRubyArgument(name: "app_platform", type: nil)
|
7558
7594
|
let appleIdArg = appleId.asRubyArgument(name: "apple_id", type: nil)
|
7559
7595
|
let ipaArg = ipa.asRubyArgument(name: "ipa", type: nil)
|
7596
|
+
let pkgArg = pkg.asRubyArgument(name: "pkg", type: nil)
|
7560
7597
|
let demoAccountRequiredArg = demoAccountRequired.asRubyArgument(name: "demo_account_required", type: nil)
|
7561
7598
|
let betaAppReviewInfoArg = betaAppReviewInfo.asRubyArgument(name: "beta_app_review_info", type: nil)
|
7562
7599
|
let localizedAppInfoArg = localizedAppInfo.asRubyArgument(name: "localized_app_info", type: nil)
|
@@ -7594,6 +7631,7 @@ public func pilot(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefault(ni
|
|
7594
7631
|
appPlatformArg,
|
7595
7632
|
appleIdArg,
|
7596
7633
|
ipaArg,
|
7634
|
+
pkgArg,
|
7597
7635
|
demoAccountRequiredArg,
|
7598
7636
|
betaAppReviewInfoArg,
|
7599
7637
|
localizedAppInfoArg,
|
@@ -7866,7 +7904,7 @@ public func podioItem(clientId: String,
|
|
7866
7904
|
|
7867
7905
|
- parameters:
|
7868
7906
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
7869
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
7907
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
7870
7908
|
- appIdentifier: The bundle identifier of your app
|
7871
7909
|
- username: Your Apple ID Username
|
7872
7910
|
- teamId: The ID of your App Store Connect team if you're in multiple teams
|
@@ -8204,7 +8242,7 @@ public func recreateSchemes(project: String) {
|
|
8204
8242
|
- platform: Provide the platform of the device to register as (ios, mac)
|
8205
8243
|
- udid: Provide the UDID of the device to register as
|
8206
8244
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
8207
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
8245
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
8208
8246
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
8209
8247
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
8210
8248
|
- username: Optional: Your Apple ID
|
@@ -8252,7 +8290,7 @@ public func recreateSchemes(project: String) {
|
|
8252
8290
|
- devices: A hash of devices, with the name as key and the UDID as value
|
8253
8291
|
- devicesFile: Provide a path to a file with the devices to register. For the format of the file see the examples
|
8254
8292
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
8255
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
8293
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
8256
8294
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
8257
8295
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
8258
8296
|
- username: Optional: Your Apple ID
|
@@ -9371,7 +9409,7 @@ public func setBuildNumberRepository(useHgRevisionNumber: OptionalConfigValue<Bo
|
|
9371
9409
|
|
9372
9410
|
- parameters:
|
9373
9411
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
9374
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
9412
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
9375
9413
|
- appIdentifier: The bundle identifier of your app
|
9376
9414
|
- username: Your Apple ID Username
|
9377
9415
|
- version: The version number to create/update
|
@@ -9725,7 +9763,7 @@ public func setupTravis(force: OptionalConfigValue<Bool> = .fastlaneDefault(fals
|
|
9725
9763
|
- force: Renew provisioning profiles regardless of its state - to automatically add all devices for ad hoc profiles
|
9726
9764
|
- appIdentifier: The bundle identifier of your app
|
9727
9765
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
9728
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
9766
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
9729
9767
|
- username: Your Apple ID Username
|
9730
9768
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
9731
9769
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -9960,6 +9998,7 @@ public func slackTrainStart(distance: Int = 5,
|
|
9960
9998
|
- scheme: Scheme to use when calling slather
|
9961
9999
|
- configuration: Configuration to use when calling slather (since slather-2.4.1)
|
9962
10000
|
- inputFormat: The input format that slather should look for
|
10001
|
+
- github: Tell slather that it is running on Github Actions
|
9963
10002
|
- buildkite: Tell slather that it is running on Buildkite
|
9964
10003
|
- teamcity: Tell slather that it is running on TeamCity
|
9965
10004
|
- jenkins: Tell slather that it is running on Jenkins
|
@@ -9995,6 +10034,7 @@ public func slather(buildDirectory: OptionalConfigValue<String?> = .fastlaneDefa
|
|
9995
10034
|
scheme: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
9996
10035
|
configuration: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
9997
10036
|
inputFormat: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
10037
|
+
github: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
9998
10038
|
buildkite: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
9999
10039
|
teamcity: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
10000
10040
|
jenkins: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
@@ -10027,6 +10067,7 @@ public func slather(buildDirectory: OptionalConfigValue<String?> = .fastlaneDefa
|
|
10027
10067
|
let schemeArg = scheme.asRubyArgument(name: "scheme", type: nil)
|
10028
10068
|
let configurationArg = configuration.asRubyArgument(name: "configuration", type: nil)
|
10029
10069
|
let inputFormatArg = inputFormat.asRubyArgument(name: "input_format", type: nil)
|
10070
|
+
let githubArg = github.asRubyArgument(name: "github", type: nil)
|
10030
10071
|
let buildkiteArg = buildkite.asRubyArgument(name: "buildkite", type: nil)
|
10031
10072
|
let teamcityArg = teamcity.asRubyArgument(name: "teamcity", type: nil)
|
10032
10073
|
let jenkinsArg = jenkins.asRubyArgument(name: "jenkins", type: nil)
|
@@ -10058,6 +10099,7 @@ public func slather(buildDirectory: OptionalConfigValue<String?> = .fastlaneDefa
|
|
10058
10099
|
schemeArg,
|
10059
10100
|
configurationArg,
|
10060
10101
|
inputFormatArg,
|
10102
|
+
githubArg,
|
10061
10103
|
buildkiteArg,
|
10062
10104
|
teamcityArg,
|
10063
10105
|
jenkinsArg,
|
@@ -10672,6 +10714,7 @@ public func ssh(username: String,
|
|
10672
10714
|
- deactivateOnPromote: **DEPRECATED!** Google Play does this automatically now - When promoting to a new track, deactivate the binary in the origin track
|
10673
10715
|
- versionCodesToRetain: An array of version codes to retain when publishing a new APK
|
10674
10716
|
- changesNotSentForReview: Indicates that the changes in this edit will not be reviewed until they are explicitly sent for review from the Google Play Console UI
|
10717
|
+
- rescueChangesNotSentForReview: Catches changes_not_sent_for_review errors when an edit is committed and retries with the configuration that the error message recommended
|
10675
10718
|
- inAppUpdatePriority: In-app update priority for all the newly added apks in the release. Can take values between [0,5]
|
10676
10719
|
- obbMainReferencesVersion: References version of 'main' expansion file
|
10677
10720
|
- obbMainFileSize: Size of 'main' expansion file in bytes
|
@@ -10712,6 +10755,7 @@ public func supply(packageName: String,
|
|
10712
10755
|
deactivateOnPromote: OptionalConfigValue<Bool> = .fastlaneDefault(true),
|
10713
10756
|
versionCodesToRetain: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
10714
10757
|
changesNotSentForReview: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
10758
|
+
rescueChangesNotSentForReview: OptionalConfigValue<Bool> = .fastlaneDefault(true),
|
10715
10759
|
inAppUpdatePriority: OptionalConfigValue<Int?> = .fastlaneDefault(nil),
|
10716
10760
|
obbMainReferencesVersion: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
10717
10761
|
obbMainFileSize: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
@@ -10750,6 +10794,7 @@ public func supply(packageName: String,
|
|
10750
10794
|
let deactivateOnPromoteArg = deactivateOnPromote.asRubyArgument(name: "deactivate_on_promote", type: nil)
|
10751
10795
|
let versionCodesToRetainArg = versionCodesToRetain.asRubyArgument(name: "version_codes_to_retain", type: nil)
|
10752
10796
|
let changesNotSentForReviewArg = changesNotSentForReview.asRubyArgument(name: "changes_not_sent_for_review", type: nil)
|
10797
|
+
let rescueChangesNotSentForReviewArg = rescueChangesNotSentForReview.asRubyArgument(name: "rescue_changes_not_sent_for_review", type: nil)
|
10753
10798
|
let inAppUpdatePriorityArg = inAppUpdatePriority.asRubyArgument(name: "in_app_update_priority", type: nil)
|
10754
10799
|
let obbMainReferencesVersionArg = obbMainReferencesVersion.asRubyArgument(name: "obb_main_references_version", type: nil)
|
10755
10800
|
let obbMainFileSizeArg = obbMainFileSize.asRubyArgument(name: "obb_main_file_size", type: nil)
|
@@ -10787,6 +10832,7 @@ public func supply(packageName: String,
|
|
10787
10832
|
deactivateOnPromoteArg,
|
10788
10833
|
versionCodesToRetainArg,
|
10789
10834
|
changesNotSentForReviewArg,
|
10835
|
+
rescueChangesNotSentForReviewArg,
|
10790
10836
|
inAppUpdatePriorityArg,
|
10791
10837
|
obbMainReferencesVersionArg,
|
10792
10838
|
obbMainFileSizeArg,
|
@@ -10880,7 +10926,7 @@ public func swiftlint(mode: String = "lint",
|
|
10880
10926
|
- skipProvisioningProfiles: Skip syncing provisioning profiles
|
10881
10927
|
- appIdentifier: The bundle identifier(s) of your app (comma-separated string or array of strings)
|
10882
10928
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
10883
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
10929
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
10884
10930
|
- username: Your Apple ID Username
|
10885
10931
|
- teamId: The ID of your Developer Portal team if you're in multiple teams
|
10886
10932
|
- teamName: The name of your Developer Portal team if you're in multiple teams
|
@@ -10905,7 +10951,7 @@ public func swiftlint(mode: String = "lint",
|
|
10905
10951
|
- keychainName: Keychain the items should be imported to
|
10906
10952
|
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
|
10907
10953
|
- force: Renew the provisioning profiles every time you run match
|
10908
|
-
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile
|
10954
|
+
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
|
10909
10955
|
- skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
|
10910
10956
|
- skipDocs: Skip generation of a README.md for the created git repository
|
10911
10957
|
- platform: Set the provisioning profile's platform to work with (i.e. ios, tvos, macos, catalyst)
|
@@ -11150,12 +11196,13 @@ public func testfairy(apiKey: String,
|
|
11150
11196
|
|
11151
11197
|
- parameters:
|
11152
11198
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
11153
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
11199
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
11154
11200
|
- username: Your Apple ID Username
|
11155
11201
|
- appIdentifier: The bundle identifier of the app to upload or manage testers (optional)
|
11156
11202
|
- appPlatform: The platform to use (optional)
|
11157
11203
|
- appleId: Apple ID property in the App Information section in App Store Connect
|
11158
11204
|
- ipa: Path to the ipa file to upload
|
11205
|
+
- pkg: Path to your pkg file
|
11159
11206
|
- demoAccountRequired: Do you need a demo account when Apple does review?
|
11160
11207
|
- betaAppReviewInfo: Beta app review information for contact info and demo account
|
11161
11208
|
- localizedAppInfo: Localized beta app test info for description, feedback email, marketing url, and privacy policy
|
@@ -11194,9 +11241,10 @@ public func testflight(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefau
|
|
11194
11241
|
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
11195
11242
|
username: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11196
11243
|
appIdentifier: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11197
|
-
appPlatform: String =
|
11244
|
+
appPlatform: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11198
11245
|
appleId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11199
11246
|
ipa: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11247
|
+
pkg: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11200
11248
|
demoAccountRequired: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
11201
11249
|
betaAppReviewInfo: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
11202
11250
|
localizedAppInfo: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
@@ -11232,9 +11280,10 @@ public func testflight(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefau
|
|
11232
11280
|
let apiKeyArg = apiKey.asRubyArgument(name: "api_key", type: nil)
|
11233
11281
|
let usernameArg = username.asRubyArgument(name: "username", type: nil)
|
11234
11282
|
let appIdentifierArg = appIdentifier.asRubyArgument(name: "app_identifier", type: nil)
|
11235
|
-
let appPlatformArg =
|
11283
|
+
let appPlatformArg = appPlatform.asRubyArgument(name: "app_platform", type: nil)
|
11236
11284
|
let appleIdArg = appleId.asRubyArgument(name: "apple_id", type: nil)
|
11237
11285
|
let ipaArg = ipa.asRubyArgument(name: "ipa", type: nil)
|
11286
|
+
let pkgArg = pkg.asRubyArgument(name: "pkg", type: nil)
|
11238
11287
|
let demoAccountRequiredArg = demoAccountRequired.asRubyArgument(name: "demo_account_required", type: nil)
|
11239
11288
|
let betaAppReviewInfoArg = betaAppReviewInfo.asRubyArgument(name: "beta_app_review_info", type: nil)
|
11240
11289
|
let localizedAppInfoArg = localizedAppInfo.asRubyArgument(name: "localized_app_info", type: nil)
|
@@ -11272,6 +11321,7 @@ public func testflight(apiKeyPath: OptionalConfigValue<String?> = .fastlaneDefau
|
|
11272
11321
|
appPlatformArg,
|
11273
11322
|
appleIdArg,
|
11274
11323
|
ipaArg,
|
11324
|
+
pkgArg,
|
11275
11325
|
demoAccountRequiredArg,
|
11276
11326
|
betaAppReviewInfoArg,
|
11277
11327
|
localizedAppInfoArg,
|
@@ -11994,7 +12044,7 @@ public func uploadSymbolsToSentry(apiHost: String = "https://app.getsentry.com/a
|
|
11994
12044
|
|
11995
12045
|
- parameters:
|
11996
12046
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
11997
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
12047
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
11998
12048
|
- username: Your Apple ID Username
|
11999
12049
|
- appIdentifier: The bundle identifier of your app
|
12000
12050
|
- appVersion: The version that should be edited or created
|
@@ -12296,6 +12346,7 @@ public func uploadToAppStore(apiKeyPath: OptionalConfigValue<String?> = .fastlan
|
|
12296
12346
|
- deactivateOnPromote: **DEPRECATED!** Google Play does this automatically now - When promoting to a new track, deactivate the binary in the origin track
|
12297
12347
|
- versionCodesToRetain: An array of version codes to retain when publishing a new APK
|
12298
12348
|
- changesNotSentForReview: Indicates that the changes in this edit will not be reviewed until they are explicitly sent for review from the Google Play Console UI
|
12349
|
+
- rescueChangesNotSentForReview: Catches changes_not_sent_for_review errors when an edit is committed and retries with the configuration that the error message recommended
|
12299
12350
|
- inAppUpdatePriority: In-app update priority for all the newly added apks in the release. Can take values between [0,5]
|
12300
12351
|
- obbMainReferencesVersion: References version of 'main' expansion file
|
12301
12352
|
- obbMainFileSize: Size of 'main' expansion file in bytes
|
@@ -12336,6 +12387,7 @@ public func uploadToPlayStore(packageName: String,
|
|
12336
12387
|
deactivateOnPromote: OptionalConfigValue<Bool> = .fastlaneDefault(true),
|
12337
12388
|
versionCodesToRetain: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
12338
12389
|
changesNotSentForReview: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
12390
|
+
rescueChangesNotSentForReview: OptionalConfigValue<Bool> = .fastlaneDefault(true),
|
12339
12391
|
inAppUpdatePriority: OptionalConfigValue<Int?> = .fastlaneDefault(nil),
|
12340
12392
|
obbMainReferencesVersion: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12341
12393
|
obbMainFileSize: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
@@ -12374,6 +12426,7 @@ public func uploadToPlayStore(packageName: String,
|
|
12374
12426
|
let deactivateOnPromoteArg = deactivateOnPromote.asRubyArgument(name: "deactivate_on_promote", type: nil)
|
12375
12427
|
let versionCodesToRetainArg = versionCodesToRetain.asRubyArgument(name: "version_codes_to_retain", type: nil)
|
12376
12428
|
let changesNotSentForReviewArg = changesNotSentForReview.asRubyArgument(name: "changes_not_sent_for_review", type: nil)
|
12429
|
+
let rescueChangesNotSentForReviewArg = rescueChangesNotSentForReview.asRubyArgument(name: "rescue_changes_not_sent_for_review", type: nil)
|
12377
12430
|
let inAppUpdatePriorityArg = inAppUpdatePriority.asRubyArgument(name: "in_app_update_priority", type: nil)
|
12378
12431
|
let obbMainReferencesVersionArg = obbMainReferencesVersion.asRubyArgument(name: "obb_main_references_version", type: nil)
|
12379
12432
|
let obbMainFileSizeArg = obbMainFileSize.asRubyArgument(name: "obb_main_file_size", type: nil)
|
@@ -12411,6 +12464,7 @@ public func uploadToPlayStore(packageName: String,
|
|
12411
12464
|
deactivateOnPromoteArg,
|
12412
12465
|
versionCodesToRetainArg,
|
12413
12466
|
changesNotSentForReviewArg,
|
12467
|
+
rescueChangesNotSentForReviewArg,
|
12414
12468
|
inAppUpdatePriorityArg,
|
12415
12469
|
obbMainReferencesVersionArg,
|
12416
12470
|
obbMainFileSizeArg,
|
@@ -12482,12 +12536,13 @@ public func uploadToPlayStoreInternalAppSharing(packageName: String,
|
|
12482
12536
|
|
12483
12537
|
- parameters:
|
12484
12538
|
- apiKeyPath: Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
12485
|
-
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#
|
12539
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
|
12486
12540
|
- username: Your Apple ID Username
|
12487
12541
|
- appIdentifier: The bundle identifier of the app to upload or manage testers (optional)
|
12488
12542
|
- appPlatform: The platform to use (optional)
|
12489
12543
|
- appleId: Apple ID property in the App Information section in App Store Connect
|
12490
12544
|
- ipa: Path to the ipa file to upload
|
12545
|
+
- pkg: Path to your pkg file
|
12491
12546
|
- demoAccountRequired: Do you need a demo account when Apple does review?
|
12492
12547
|
- betaAppReviewInfo: Beta app review information for contact info and demo account
|
12493
12548
|
- localizedAppInfo: Localized beta app test info for description, feedback email, marketing url, and privacy policy
|
@@ -12526,9 +12581,10 @@ public func uploadToTestflight(apiKeyPath: OptionalConfigValue<String?> = .fastl
|
|
12526
12581
|
apiKey: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
12527
12582
|
username: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12528
12583
|
appIdentifier: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12529
|
-
appPlatform: String =
|
12584
|
+
appPlatform: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12530
12585
|
appleId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12531
12586
|
ipa: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12587
|
+
pkg: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
12532
12588
|
demoAccountRequired: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
|
12533
12589
|
betaAppReviewInfo: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
12534
12590
|
localizedAppInfo: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
|
@@ -12564,9 +12620,10 @@ public func uploadToTestflight(apiKeyPath: OptionalConfigValue<String?> = .fastl
|
|
12564
12620
|
let apiKeyArg = apiKey.asRubyArgument(name: "api_key", type: nil)
|
12565
12621
|
let usernameArg = username.asRubyArgument(name: "username", type: nil)
|
12566
12622
|
let appIdentifierArg = appIdentifier.asRubyArgument(name: "app_identifier", type: nil)
|
12567
|
-
let appPlatformArg =
|
12623
|
+
let appPlatformArg = appPlatform.asRubyArgument(name: "app_platform", type: nil)
|
12568
12624
|
let appleIdArg = appleId.asRubyArgument(name: "apple_id", type: nil)
|
12569
12625
|
let ipaArg = ipa.asRubyArgument(name: "ipa", type: nil)
|
12626
|
+
let pkgArg = pkg.asRubyArgument(name: "pkg", type: nil)
|
12570
12627
|
let demoAccountRequiredArg = demoAccountRequired.asRubyArgument(name: "demo_account_required", type: nil)
|
12571
12628
|
let betaAppReviewInfoArg = betaAppReviewInfo.asRubyArgument(name: "beta_app_review_info", type: nil)
|
12572
12629
|
let localizedAppInfoArg = localizedAppInfo.asRubyArgument(name: "localized_app_info", type: nil)
|
@@ -12604,6 +12661,7 @@ public func uploadToTestflight(apiKeyPath: OptionalConfigValue<String?> = .fastl
|
|
12604
12661
|
appPlatformArg,
|
12605
12662
|
appleIdArg,
|
12606
12663
|
ipaArg,
|
12664
|
+
pkgArg,
|
12607
12665
|
demoAccountRequiredArg,
|
12608
12666
|
betaAppReviewInfoArg,
|
12609
12667
|
localizedAppInfoArg,
|
@@ -13011,7 +13069,7 @@ public func xcov(workspace: OptionalConfigValue<String?> = .fastlaneDefault(nil)
|
|
13011
13069
|
coverallsServiceJobId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
13012
13070
|
coverallsRepoToken: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
13013
13071
|
xcconfig: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
13014
|
-
ideFoundationPath: String = "/Applications/Xcode-
|
13072
|
+
ideFoundationPath: String = "/Applications/Xcode-12.5.1.app/Contents/Developer/../Frameworks/IDEFoundation.framework/Versions/A/IDEFoundation",
|
13015
13073
|
legacySupport: OptionalConfigValue<Bool> = .fastlaneDefault(false))
|
13016
13074
|
{
|
13017
13075
|
let workspaceArg = workspace.asRubyArgument(name: "workspace", type: nil)
|
@@ -13213,4 +13271,4 @@ public let snapshotfile = Snapshotfile()
|
|
13213
13271
|
|
13214
13272
|
// Please don't remove the lines below
|
13215
13273
|
// They are used to detect outdated files
|
13216
|
-
// FastlaneRunnerAPIVersion [0.9.
|
13274
|
+
// FastlaneRunnerAPIVersion [0.9.136]
|