fastlane 2.163.0 → 2.168.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/options.rb +1 -1
- data/cert/lib/cert/runner.rb +2 -2
- data/deliver/lib/deliver/app_screenshot.rb +6 -2
- data/deliver/lib/deliver/queue_worker.rb +14 -29
- data/deliver/lib/deliver/upload_metadata.rb +7 -2
- data/deliver/lib/deliver/upload_screenshots.rb +3 -5
- data/fastlane/lib/fastlane/actions/.download_dsyms.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/actions_helper.rb +1 -1
- data/fastlane/lib/fastlane/actions/add_git_tag.rb +9 -2
- data/fastlane/lib/fastlane/actions/appledoc.rb +1 -1
- data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +5 -1
- data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +9 -0
- data/fastlane/lib/fastlane/actions/import_from_git.rb +9 -1
- data/fastlane/lib/fastlane/actions/is_ci.rb +1 -1
- data/fastlane/lib/fastlane/actions/register_devices.rb +4 -1
- data/fastlane/lib/fastlane/actions/set_changelog.rb +31 -3
- data/fastlane/lib/fastlane/actions/slather.rb +2 -2
- data/fastlane/lib/fastlane/actions/spm.rb +6 -0
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +29 -8
- data/fastlane/lib/fastlane/actions/upload_to_app_store.rb +3 -3
- data/fastlane/lib/fastlane/cli_tools_distributor.rb +2 -2
- data/fastlane/lib/fastlane/fast_file.rb +74 -23
- data/fastlane/lib/fastlane/features.rb +1 -1
- data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +2 -0
- data/fastlane/lib/fastlane/swift_fastlane_function.rb +1 -1
- 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/Fastfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +37 -16
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/LaneFileProtocol.swift +2 -2
- data/fastlane/swift/MainProcess.swift +2 -0
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +8 -4
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Runner.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +5 -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/SocketClient.swift +1 -1
- data/fastlane_core/lib/fastlane_core/cert_checker.rb +12 -7
- data/fastlane_core/lib/fastlane_core/device_manager.rb +8 -4
- data/fastlane_core/lib/fastlane_core/helper.rb +11 -3
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +3 -3
- data/fastlane_core/lib/fastlane_core/keychain_importer.rb +1 -1
- data/fastlane_core/lib/fastlane_core/provisioning_profile.rb +3 -1
- data/fastlane_core/lib/fastlane_core/ui/disable_colors.rb +8 -0
- data/gym/lib/gym/code_signing_mapping.rb +1 -1
- data/match/lib/match/importer.rb +33 -21
- data/match/lib/match/module.rb +1 -1
- data/match/lib/match/nuke.rb +9 -5
- data/match/lib/match/options.rb +8 -2
- data/pilot/lib/pilot/build_manager.rb +9 -3
- data/scan/lib/scan/detect_values.rb +8 -9
- data/scan/lib/scan/module.rb +4 -0
- data/scan/lib/scan/options.rb +9 -0
- data/scan/lib/scan/runner.rb +4 -3
- data/sigh/lib/assets/resign.sh +1 -1
- data/sigh/lib/sigh/runner.rb +4 -4
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +2 -1
- data/snapshot/lib/snapshot/test_command_generator.rb +1 -1
- data/snapshot/lib/snapshot/test_command_generator_base.rb +3 -1
- data/snapshot/lib/snapshot/test_command_generator_xcode_8.rb +1 -1
- data/spaceship/lib/spaceship/connect_api.rb +2 -0
- data/spaceship/lib/spaceship/connect_api/client.rb +7 -4
- data/spaceship/lib/spaceship/connect_api/models/.app.rb.swp +0 -0
- data/spaceship/lib/spaceship/connect_api/models/.app_screenshot.rb.swp +0 -0
- data/spaceship/lib/spaceship/connect_api/models/.build.rb.swp +0 -0
- data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/app.rb +127 -51
- data/spaceship/lib/spaceship/connect_api/models/app_info.rb +15 -10
- data/spaceship/lib/spaceship/connect_api/models/app_info_localization.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/app_preview.rb +15 -11
- data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +13 -9
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +9 -7
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +15 -11
- data/spaceship/lib/spaceship/connect_api/models/app_store_review_attachment.rb +7 -5
- data/spaceship/lib/spaceship/connect_api/models/app_store_review_detail.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +54 -36
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +21 -14
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_submission.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/beta_app_review_submission.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/beta_feedback.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +12 -2
- data/spaceship/lib/spaceship/connect_api/models/beta_tester.rb +12 -8
- data/spaceship/lib/spaceship/connect_api/models/build.rb +24 -16
- data/spaceship/lib/spaceship/connect_api/models/build_delivery.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +9 -6
- data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/certificate.rb +12 -8
- data/spaceship/lib/spaceship/connect_api/models/custom_app_organization.rb +43 -0
- data/spaceship/lib/spaceship/connect_api/models/custom_app_user.rb +41 -0
- data/spaceship/lib/spaceship/connect_api/models/device.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/profile.rb +12 -8
- data/spaceship/lib/spaceship/connect_api/models/reset_ratings_request.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/sandbox_tester.rb +9 -6
- data/spaceship/lib/spaceship/connect_api/models/territory.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/user.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/user_invitation.rb +9 -6
- data/spaceship/lib/spaceship/connect_api/spaceship.rb +7 -4
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +12 -0
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +71 -0
- data/spaceship/lib/spaceship/tunes/iap_detail.rb +1 -1
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +2 -2
- data/supply/lib/supply.rb +1 -1
- data/supply/lib/supply/options.rb +1 -1
- data/supply/lib/supply/uploader.rb +4 -3
- metadata +24 -20
- data/fastlane/lib/fastlane/actions/.register_device.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/.register_devices.rb.swp +0 -0
@@ -136,7 +136,7 @@ module Fastlane
|
|
136
136
|
type = "[String]"
|
137
137
|
elsif default_value.kind_of?(Hash)
|
138
138
|
type = "[String : Any]"
|
139
|
-
#
|
139
|
+
# Although we can have a default value of Integer type, if param_type_override overridden that value, respect it.
|
140
140
|
elsif default_value.kind_of?(Integer)
|
141
141
|
if type == "Double" || type == "Float"
|
142
142
|
begin
|
@@ -76,7 +76,7 @@ public func addGitTag(tag: String? = nil,
|
|
76
76
|
grouping: String = "builds",
|
77
77
|
prefix: String = "",
|
78
78
|
postfix: String = "",
|
79
|
-
buildNumber: Any,
|
79
|
+
buildNumber: Any? = nil,
|
80
80
|
message: String? = nil,
|
81
81
|
commit: String? = nil,
|
82
82
|
force: Bool = false,
|
@@ -1861,7 +1861,7 @@ public func carthage(command: String = "bootstrap",
|
|
1861
1861
|
- filename: The filename of certificate to store
|
1862
1862
|
- outputPath: The path to a directory in which all certificates and private keys should be stored
|
1863
1863
|
- keychainPath: Path to a custom keychain
|
1864
|
-
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your account password
|
1864
|
+
- 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
|
1865
1865
|
- skipSetPartitionList: Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
|
1866
1866
|
- platform: Set the provisioning profile's platform (ios, macos)
|
1867
1867
|
|
@@ -3349,7 +3349,7 @@ public func getBuildNumberRepository(useHgRevisionNumber: Bool = false) {
|
|
3349
3349
|
- filename: The filename of certificate to store
|
3350
3350
|
- outputPath: The path to a directory in which all certificates and private keys should be stored
|
3351
3351
|
- keychainPath: Path to a custom keychain
|
3352
|
-
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your account password
|
3352
|
+
- 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
|
3353
3353
|
- skipSetPartitionList: Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
|
3354
3354
|
- platform: Set the provisioning profile's platform (ios, macos)
|
3355
3355
|
|
@@ -4743,12 +4743,12 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
4743
4743
|
Alias for the `sync_code_signing` action
|
4744
4744
|
|
4745
4745
|
- parameters:
|
4746
|
-
- type: Define the profile type, can be appstore, adhoc, development, enterprise, developer_id
|
4746
|
+
- type: Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution
|
4747
4747
|
- additionalCertTypes: Create additional cert types needed for macOS installers (valid values: mac_installer_distribution, developer_id_installer)
|
4748
4748
|
- readonly: Only fetch existing certificates and profiles, don't generate new ones
|
4749
4749
|
- generateAppleCerts: Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
|
4750
4750
|
- skipProvisioningProfiles: Skip syncing provisioning profiles
|
4751
|
-
- appIdentifier: The bundle identifier(s) of your app (comma-separated)
|
4751
|
+
- appIdentifier: The bundle identifier(s) of your app (comma-separated string or array of strings)
|
4752
4752
|
- 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)
|
4753
4753
|
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#use-return-value-and-pass-in-as-an-option)
|
4754
4754
|
- username: Your Apple ID Username
|
@@ -4773,7 +4773,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
4773
4773
|
- s3Bucket: Name of the S3 bucket
|
4774
4774
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
4775
4775
|
- keychainName: Keychain the items should be imported to
|
4776
|
-
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your account password
|
4776
|
+
- 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
|
4777
4777
|
- force: Renew the provisioning profiles every time you run match
|
4778
4778
|
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile type 'appstore'
|
4779
4779
|
- skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
|
@@ -4783,6 +4783,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
4783
4783
|
- templateName: The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
|
4784
4784
|
- profileName: A custom name for the provisioning profile. This will replace the default provisioning profile name if specified
|
4785
4785
|
- failOnNameTaken: Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
|
4786
|
+
- skipCertificateMatching: Set to true if there is no access to Apple developer portal but there are certificates, keys and profiles provided. Only works with match import action
|
4786
4787
|
- outputPath: Path in which to export certificates, key and profile
|
4787
4788
|
- skipSetPartitionList: Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
|
4788
4789
|
- verbose: Print out extra information and all commands
|
@@ -4829,6 +4830,7 @@ public func match(type: Any = matchfile.type,
|
|
4829
4830
|
templateName: Any? = matchfile.templateName,
|
4830
4831
|
profileName: Any? = matchfile.profileName,
|
4831
4832
|
failOnNameTaken: Bool = matchfile.failOnNameTaken,
|
4833
|
+
skipCertificateMatching: Bool = matchfile.skipCertificateMatching,
|
4832
4834
|
outputPath: Any? = matchfile.outputPath,
|
4833
4835
|
skipSetPartitionList: Bool = matchfile.skipSetPartitionList,
|
4834
4836
|
verbose: Bool = matchfile.verbose)
|
@@ -4873,6 +4875,7 @@ public func match(type: Any = matchfile.type,
|
|
4873
4875
|
RubyCommand.Argument(name: "template_name", value: templateName),
|
4874
4876
|
RubyCommand.Argument(name: "profile_name", value: profileName),
|
4875
4877
|
RubyCommand.Argument(name: "fail_on_name_taken", value: failOnNameTaken),
|
4878
|
+
RubyCommand.Argument(name: "skip_certificate_matching", value: skipCertificateMatching),
|
4876
4879
|
RubyCommand.Argument(name: "output_path", value: outputPath),
|
4877
4880
|
RubyCommand.Argument(name: "skip_set_partition_list", value: skipSetPartitionList),
|
4878
4881
|
RubyCommand.Argument(name: "verbose", value: verbose)])
|
@@ -6074,6 +6077,7 @@ public func rubyVersion() {
|
|
6074
6077
|
- skipSlack: Don't publish to slack, even when an URL is given
|
6075
6078
|
- slackOnlyOnFailure: Only post on Slack if the tests fail
|
6076
6079
|
- destination: Use only if you're a pro, use the other options instead
|
6080
|
+
- catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
6077
6081
|
- customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
6078
6082
|
- xcodebuildCommand: Allows for override of the default `xcodebuild` command
|
6079
6083
|
- clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
|
@@ -6140,6 +6144,7 @@ public func runTests(workspace: String? = nil,
|
|
6140
6144
|
skipSlack: Bool = false,
|
6141
6145
|
slackOnlyOnFailure: Bool = false,
|
6142
6146
|
destination: Any? = nil,
|
6147
|
+
catalystPlatform: String? = nil,
|
6143
6148
|
customReportFileName: String? = nil,
|
6144
6149
|
xcodebuildCommand: String = "env NSUnbufferedIO=YES xcodebuild",
|
6145
6150
|
clonedSourcePackagesPath: String? = nil,
|
@@ -6204,6 +6209,7 @@ public func runTests(workspace: String? = nil,
|
|
6204
6209
|
RubyCommand.Argument(name: "skip_slack", value: skipSlack),
|
6205
6210
|
RubyCommand.Argument(name: "slack_only_on_failure", value: slackOnlyOnFailure),
|
6206
6211
|
RubyCommand.Argument(name: "destination", value: destination),
|
6212
|
+
RubyCommand.Argument(name: "catalyst_platform", value: catalystPlatform),
|
6207
6213
|
RubyCommand.Argument(name: "custom_report_file_name", value: customReportFileName),
|
6208
6214
|
RubyCommand.Argument(name: "xcodebuild_command", value: xcodebuildCommand),
|
6209
6215
|
RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
|
@@ -6350,6 +6356,7 @@ public func say(text: Any,
|
|
6350
6356
|
- skipSlack: Don't publish to slack, even when an URL is given
|
6351
6357
|
- slackOnlyOnFailure: Only post on Slack if the tests fail
|
6352
6358
|
- destination: Use only if you're a pro, use the other options instead
|
6359
|
+
- catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
6353
6360
|
- customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
6354
6361
|
- xcodebuildCommand: Allows for override of the default `xcodebuild` command
|
6355
6362
|
- clonedSourcePackagesPath: Sets a custom path for Swift Package Manager dependencies
|
@@ -6416,6 +6423,7 @@ public func scan(workspace: Any? = scanfile.workspace,
|
|
6416
6423
|
skipSlack: Bool = scanfile.skipSlack,
|
6417
6424
|
slackOnlyOnFailure: Bool = scanfile.slackOnlyOnFailure,
|
6418
6425
|
destination: Any? = scanfile.destination,
|
6426
|
+
catalystPlatform: Any? = scanfile.catalystPlatform,
|
6419
6427
|
customReportFileName: Any? = scanfile.customReportFileName,
|
6420
6428
|
xcodebuildCommand: Any = scanfile.xcodebuildCommand,
|
6421
6429
|
clonedSourcePackagesPath: Any? = scanfile.clonedSourcePackagesPath,
|
@@ -6480,6 +6488,7 @@ public func scan(workspace: Any? = scanfile.workspace,
|
|
6480
6488
|
RubyCommand.Argument(name: "skip_slack", value: skipSlack),
|
6481
6489
|
RubyCommand.Argument(name: "slack_only_on_failure", value: slackOnlyOnFailure),
|
6482
6490
|
RubyCommand.Argument(name: "destination", value: destination),
|
6491
|
+
RubyCommand.Argument(name: "catalyst_platform", value: catalystPlatform),
|
6483
6492
|
RubyCommand.Argument(name: "custom_report_file_name", value: customReportFileName),
|
6484
6493
|
RubyCommand.Argument(name: "xcodebuild_command", value: xcodebuildCommand),
|
6485
6494
|
RubyCommand.Argument(name: "cloned_source_packages_path", value: clonedSourcePackagesPath),
|
@@ -6612,6 +6621,8 @@ public func setBuildNumberRepository(useHgRevisionNumber: Bool = false,
|
|
6612
6621
|
Set the changelog for all languages on App Store Connect
|
6613
6622
|
|
6614
6623
|
- parameters:
|
6624
|
+
- 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)
|
6625
|
+
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#use-return-value-and-pass-in-as-an-option)
|
6615
6626
|
- appIdentifier: The bundle identifier of your app
|
6616
6627
|
- username: Your Apple ID Username
|
6617
6628
|
- version: The version number to create/update
|
@@ -6624,15 +6635,19 @@ public func setBuildNumberRepository(useHgRevisionNumber: Bool = false,
|
|
6624
6635
|
You can store the changelog in `./changelog.txt` and it will automatically get loaded from there. This integration is useful if you support e.g. 10 languages and want to use the same "What's new"-text for all languages.
|
6625
6636
|
Defining the version is optional. _fastlane_ will try to automatically detect it if you don't provide one.
|
6626
6637
|
*/
|
6627
|
-
public func setChangelog(
|
6628
|
-
|
6638
|
+
public func setChangelog(apiKeyPath: String? = nil,
|
6639
|
+
apiKey: [String: Any]? = nil,
|
6640
|
+
appIdentifier: String,
|
6641
|
+
username: String? = nil,
|
6629
6642
|
version: String? = nil,
|
6630
6643
|
changelog: String? = nil,
|
6631
6644
|
teamId: Any? = nil,
|
6632
6645
|
teamName: String? = nil,
|
6633
6646
|
platform: String = "ios")
|
6634
6647
|
{
|
6635
|
-
let command = RubyCommand(commandID: "", methodName: "set_changelog", className: nil, args: [RubyCommand.Argument(name: "
|
6648
|
+
let command = RubyCommand(commandID: "", methodName: "set_changelog", className: nil, args: [RubyCommand.Argument(name: "api_key_path", value: apiKeyPath),
|
6649
|
+
RubyCommand.Argument(name: "api_key", value: apiKey),
|
6650
|
+
RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
|
6636
6651
|
RubyCommand.Argument(name: "username", value: username),
|
6637
6652
|
RubyCommand.Argument(name: "version", value: version),
|
6638
6653
|
RubyCommand.Argument(name: "changelog", value: changelog),
|
@@ -7110,7 +7125,7 @@ public func slather(buildDirectory: String? = nil,
|
|
7110
7125
|
ignore: [String]? = nil,
|
7111
7126
|
verbose: Bool? = nil,
|
7112
7127
|
useBundleExec: Bool = false,
|
7113
|
-
binaryBasename:
|
7128
|
+
binaryBasename: [String]? = nil,
|
7114
7129
|
binaryFile: [String]? = nil,
|
7115
7130
|
arch: String? = nil,
|
7116
7131
|
sourceFiles: Bool = false,
|
@@ -7430,6 +7445,7 @@ public func splunkmint(dsym: String? = nil,
|
|
7430
7445
|
|
7431
7446
|
- parameters:
|
7432
7447
|
- command: The swift command (one of: build, test, clean, reset, update, resolve, generate-xcodeproj, init)
|
7448
|
+
- enableCodeCoverage: Enables code coverage for the generated Xcode project when using the generate-xcodeproj command
|
7433
7449
|
- buildPath: Specify build/cache directory [default: ./.build]
|
7434
7450
|
- packagePath: Change working directory before any other operation
|
7435
7451
|
- xcconfig: Use xcconfig file to override swift package generate-xcodeproj defaults
|
@@ -7440,6 +7456,7 @@ public func splunkmint(dsym: String? = nil,
|
|
7440
7456
|
- verbose: Increase verbosity of informational output
|
7441
7457
|
*/
|
7442
7458
|
public func spm(command: String = "build",
|
7459
|
+
enableCodeCoverage: Any? = nil,
|
7443
7460
|
buildPath: String? = nil,
|
7444
7461
|
packagePath: String? = nil,
|
7445
7462
|
xcconfig: String? = nil,
|
@@ -7450,6 +7467,7 @@ public func spm(command: String = "build",
|
|
7450
7467
|
verbose: Bool = false)
|
7451
7468
|
{
|
7452
7469
|
let command = RubyCommand(commandID: "", methodName: "spm", className: nil, args: [RubyCommand.Argument(name: "command", value: command),
|
7470
|
+
RubyCommand.Argument(name: "enable_code_coverage", value: enableCodeCoverage),
|
7453
7471
|
RubyCommand.Argument(name: "build_path", value: buildPath),
|
7454
7472
|
RubyCommand.Argument(name: "package_path", value: packagePath),
|
7455
7473
|
RubyCommand.Argument(name: "xcconfig", value: xcconfig),
|
@@ -7499,7 +7517,7 @@ public func ssh(username: String,
|
|
7499
7517
|
- versionCode: Version code (used when updating rollout or promoting specific versions)
|
7500
7518
|
- releaseStatus: Release status (used when uploading new apks/aabs) - valid values are completed, draft, halted, inProgress
|
7501
7519
|
- track: The track of the application to use. The default available tracks are: production, beta, alpha, internal
|
7502
|
-
- rollout: The percentage of the user fraction when uploading to the rollout track
|
7520
|
+
- rollout: The percentage of the user fraction when uploading to the rollout track (setting to 1 will complete the rollout)
|
7503
7521
|
- metadataPath: Path to the directory containing the metadata files
|
7504
7522
|
- key: **DEPRECATED!** Use `--json_key` instead - The p12 File used to authenticate with Google
|
7505
7523
|
- issuer: **DEPRECATED!** Use `--json_key` instead - The issuer of the p12 file (email address of the service account)
|
@@ -7664,12 +7682,12 @@ public func swiftlint(mode: Any = "lint",
|
|
7664
7682
|
Easily sync your certificates and profiles across your team (via _match_)
|
7665
7683
|
|
7666
7684
|
- parameters:
|
7667
|
-
- type: Define the profile type, can be appstore, adhoc, development, enterprise, developer_id
|
7685
|
+
- type: Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution
|
7668
7686
|
- additionalCertTypes: Create additional cert types needed for macOS installers (valid values: mac_installer_distribution, developer_id_installer)
|
7669
7687
|
- readonly: Only fetch existing certificates and profiles, don't generate new ones
|
7670
7688
|
- generateAppleCerts: Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
|
7671
7689
|
- skipProvisioningProfiles: Skip syncing provisioning profiles
|
7672
|
-
- appIdentifier: The bundle identifier(s) of your app (comma-separated)
|
7690
|
+
- appIdentifier: The bundle identifier(s) of your app (comma-separated string or array of strings)
|
7673
7691
|
- 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)
|
7674
7692
|
- apiKey: Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#use-return-value-and-pass-in-as-an-option)
|
7675
7693
|
- username: Your Apple ID Username
|
@@ -7694,7 +7712,7 @@ public func swiftlint(mode: Any = "lint",
|
|
7694
7712
|
- s3Bucket: Name of the S3 bucket
|
7695
7713
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
7696
7714
|
- keychainName: Keychain the items should be imported to
|
7697
|
-
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your account password
|
7715
|
+
- 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
|
7698
7716
|
- force: Renew the provisioning profiles every time you run match
|
7699
7717
|
- forceForNewDevices: Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile type 'appstore'
|
7700
7718
|
- skipConfirmation: Disables confirmation prompts during nuke, answering them with yes
|
@@ -7704,6 +7722,7 @@ public func swiftlint(mode: Any = "lint",
|
|
7704
7722
|
- templateName: The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
|
7705
7723
|
- profileName: A custom name for the provisioning profile. This will replace the default provisioning profile name if specified
|
7706
7724
|
- failOnNameTaken: Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
|
7725
|
+
- skipCertificateMatching: Set to true if there is no access to Apple developer portal but there are certificates, keys and profiles provided. Only works with match import action
|
7707
7726
|
- outputPath: Path in which to export certificates, key and profile
|
7708
7727
|
- skipSetPartitionList: Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
|
7709
7728
|
- verbose: Print out extra information and all commands
|
@@ -7750,6 +7769,7 @@ public func syncCodeSigning(type: String = "development",
|
|
7750
7769
|
templateName: String? = nil,
|
7751
7770
|
profileName: String? = nil,
|
7752
7771
|
failOnNameTaken: Bool = false,
|
7772
|
+
skipCertificateMatching: Bool = false,
|
7753
7773
|
outputPath: String? = nil,
|
7754
7774
|
skipSetPartitionList: Bool = false,
|
7755
7775
|
verbose: Bool = false)
|
@@ -7794,6 +7814,7 @@ public func syncCodeSigning(type: String = "development",
|
|
7794
7814
|
RubyCommand.Argument(name: "template_name", value: templateName),
|
7795
7815
|
RubyCommand.Argument(name: "profile_name", value: profileName),
|
7796
7816
|
RubyCommand.Argument(name: "fail_on_name_taken", value: failOnNameTaken),
|
7817
|
+
RubyCommand.Argument(name: "skip_certificate_matching", value: skipCertificateMatching),
|
7797
7818
|
RubyCommand.Argument(name: "output_path", value: outputPath),
|
7798
7819
|
RubyCommand.Argument(name: "skip_set_partition_list", value: skipSetPartitionList),
|
7799
7820
|
RubyCommand.Argument(name: "verbose", value: verbose)])
|
@@ -8671,7 +8692,7 @@ public func uploadToAppStore(apiKeyPath: String? = nil,
|
|
8671
8692
|
- versionCode: Version code (used when updating rollout or promoting specific versions)
|
8672
8693
|
- releaseStatus: Release status (used when uploading new apks/aabs) - valid values are completed, draft, halted, inProgress
|
8673
8694
|
- track: The track of the application to use. The default available tracks are: production, beta, alpha, internal
|
8674
|
-
- rollout: The percentage of the user fraction when uploading to the rollout track
|
8695
|
+
- rollout: The percentage of the user fraction when uploading to the rollout track (setting to 1 will complete the rollout)
|
8675
8696
|
- metadataPath: Path to the directory containing the metadata files
|
8676
8697
|
- key: **DEPRECATED!** Use `--json_key` instead - The p12 File used to authenticate with Google
|
8677
8698
|
- issuer: **DEPRECATED!** Use `--json_key` instead - The issuer of the p12 file (email address of the service account)
|
@@ -9387,4 +9408,4 @@ public let snapshotfile = Snapshotfile()
|
|
9387
9408
|
|
9388
9409
|
// Please don't remove the lines below
|
9389
9410
|
// They are used to detect outdated files
|
9390
|
-
// FastlaneRunnerAPIVersion [0.9.
|
9411
|
+
// FastlaneRunnerAPIVersion [0.9.104]
|
@@ -22,8 +22,8 @@ public protocol LaneFileProtocol: class {
|
|
22
22
|
|
23
23
|
public extension LaneFileProtocol {
|
24
24
|
var fastlaneVersion: String { return "" } // Defaults to "" because that means any is fine
|
25
|
-
func beforeAll(with
|
26
|
-
func afterAll(with
|
25
|
+
func beforeAll(with _: String) {} // No-op by default
|
26
|
+
func afterAll(with _: String) {} // No-op by default
|
27
27
|
func onError(currentLane _: String, errorInfo _: String) {} // No-op by default
|
28
28
|
func recordLaneDescriptions() {} // No-op by default
|
29
29
|
}
|
@@ -56,6 +56,8 @@ class MainProcess {
|
|
56
56
|
print(stdout)
|
57
57
|
self.timeBetweenPrints = Int(self.lastPrintDate.timeIntervalSinceNow)
|
58
58
|
}
|
59
|
+
|
60
|
+
// swiftformat:disable:next redundantSelf
|
59
61
|
_ = Runner.waitWithPolling(self.timeBetweenPrints, toEventually: { $0 > 5 }, timeout: 10)
|
60
62
|
thread.start()
|
61
63
|
#endif
|
@@ -2,7 +2,7 @@
|
|
2
2
|
// Copyright (c) 2020 FastlaneTools
|
3
3
|
|
4
4
|
public protocol MatchfileProtocol: class {
|
5
|
-
/// Define the profile type, can be appstore, adhoc, development, enterprise, developer_id
|
5
|
+
/// Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution
|
6
6
|
var type: String { get }
|
7
7
|
|
8
8
|
/// Create additional cert types needed for macOS installers (valid values: mac_installer_distribution, developer_id_installer)
|
@@ -17,7 +17,7 @@ public protocol MatchfileProtocol: class {
|
|
17
17
|
/// Skip syncing provisioning profiles
|
18
18
|
var skipProvisioningProfiles: Bool { get }
|
19
19
|
|
20
|
-
/// The bundle identifier(s) of your app (comma-separated)
|
20
|
+
/// The bundle identifier(s) of your app (comma-separated string or array of strings)
|
21
21
|
var appIdentifier: [String] { get }
|
22
22
|
|
23
23
|
/// Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
|
@@ -92,7 +92,7 @@ public protocol MatchfileProtocol: class {
|
|
92
92
|
/// Keychain the items should be imported to
|
93
93
|
var keychainName: String { get }
|
94
94
|
|
95
|
-
/// This might be required the first time you access certificates on a new mac. For the login/default keychain this is your account password
|
95
|
+
/// 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
|
96
96
|
var keychainPassword: String? { get }
|
97
97
|
|
98
98
|
/// Renew the provisioning profiles every time you run match
|
@@ -122,6 +122,9 @@ public protocol MatchfileProtocol: class {
|
|
122
122
|
/// Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
|
123
123
|
var failOnNameTaken: Bool { get }
|
124
124
|
|
125
|
+
/// Set to true if there is no access to Apple developer portal but there are certificates, keys and profiles provided. Only works with match import action
|
126
|
+
var skipCertificateMatching: Bool { get }
|
127
|
+
|
125
128
|
/// Path in which to export certificates, key and profile
|
126
129
|
var outputPath: String? { get }
|
127
130
|
|
@@ -173,6 +176,7 @@ public extension MatchfileProtocol {
|
|
173
176
|
var templateName: String? { return nil }
|
174
177
|
var profileName: String? { return nil }
|
175
178
|
var failOnNameTaken: Bool { return false }
|
179
|
+
var skipCertificateMatching: Bool { return false }
|
176
180
|
var outputPath: String? { return nil }
|
177
181
|
var skipSetPartitionList: Bool { return false }
|
178
182
|
var verbose: Bool { return false }
|
@@ -180,4 +184,4 @@ public extension MatchfileProtocol {
|
|
180
184
|
|
181
185
|
// Please don't remove the lines below
|
182
186
|
// They are used to detect outdated files
|
183
|
-
// FastlaneRunnerAPIVersion [0.9.
|
187
|
+
// FastlaneRunnerAPIVersion [0.9.48]
|
data/fastlane/swift/Runner.swift
CHANGED
@@ -37,7 +37,7 @@ class Runner {
|
|
37
37
|
socketClient.send(rubyCommand: command)
|
38
38
|
|
39
39
|
let secondsToWait = DispatchTimeInterval.seconds(SocketClient.defaultCommandTimeoutSeconds)
|
40
|
-
//
|
40
|
+
// swiftformat:disable:next redundantSelf
|
41
41
|
let timeoutResult = Self.waitWithPolling(self.executeNext[command.id], toEventually: { $0 == true }, timeout: SocketClient.defaultCommandTimeoutSeconds)
|
42
42
|
executeNext.removeValue(forKey: command.id)
|
43
43
|
let failureMessage = "command didn't execute in: \(SocketClient.defaultCommandTimeoutSeconds) seconds"
|
@@ -179,6 +179,9 @@ public protocol ScanfileProtocol: class {
|
|
179
179
|
/// Use only if you're a pro, use the other options instead
|
180
180
|
var destination: String? { get }
|
181
181
|
|
182
|
+
/// Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
183
|
+
var catalystPlatform: String? { get }
|
184
|
+
|
182
185
|
/// **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
183
186
|
var customReportFileName: String? { get }
|
184
187
|
|
@@ -252,6 +255,7 @@ public extension ScanfileProtocol {
|
|
252
255
|
var skipSlack: Bool { return false }
|
253
256
|
var slackOnlyOnFailure: Bool { return false }
|
254
257
|
var destination: String? { return nil }
|
258
|
+
var catalystPlatform: String? { return nil }
|
255
259
|
var customReportFileName: String? { return nil }
|
256
260
|
var xcodebuildCommand: String { return "env NSUnbufferedIO=YES xcodebuild" }
|
257
261
|
var clonedSourcePackagesPath: String? { return nil }
|
@@ -260,4 +264,4 @@ public extension ScanfileProtocol {
|
|
260
264
|
|
261
265
|
// Please don't remove the lines below
|
262
266
|
// They are used to detect outdated files
|
263
|
-
// FastlaneRunnerAPIVersion [0.9.
|
267
|
+
// FastlaneRunnerAPIVersion [0.9.59]
|