fastlane 2.170.0 → 2.171.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 +74 -74
- data/deliver/lib/deliver/app_screenshot.rb +5 -7
- data/deliver/lib/deliver/app_screenshot_validator.rb +108 -0
- data/deliver/lib/deliver/loader.rb +13 -29
- data/deliver/lib/deliver/upload_metadata.rb +2 -0
- data/{spaceship/lib/spaceship/connect_api/models/.app_data_usage_data_protection.rb.swp → fastlane/lib/fastlane/actions/.github_api.rb.swp} +0 -0
- data/fastlane/lib/fastlane/actions/.set_github_release.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/add_git_tag.rb +12 -3
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +5 -1
- data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +142 -0
- data/fastlane/lib/fastlane/actions/git_commit.rb +3 -3
- data/fastlane/lib/fastlane/actions/github_api.rb +14 -3
- data/fastlane/lib/fastlane/actions/nexus_upload.rb +1 -0
- data/fastlane/lib/fastlane/actions/pod_push.rb +9 -0
- data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +9 -1
- data/fastlane/lib/fastlane/actions/set_github_release.rb +21 -8
- data/fastlane/lib/fastlane/actions/slack.rb +4 -5
- data/fastlane/lib/fastlane/actions/spm.rb +2 -2
- data/fastlane/lib/fastlane/actions/upload_app_privacy_details_to_app_store.rb +4 -2
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +1 -1
- data/fastlane/swift/Fastlane.swift +66 -13
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +5 -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 +2 -2
- data/fastlane_core/lib/fastlane_core/helper.rb +1 -1
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +3 -4
- data/match/lib/match/encryption/openssl.rb +4 -2
- data/match/lib/match/storage/git_storage.rb +14 -10
- data/precheck/lib/precheck/options.rb +6 -1
- data/precheck/lib/precheck/rule_processor.rb +1 -1
- data/precheck/lib/precheck/runner.rb +1 -1
- data/scan/lib/scan/options.rb +5 -0
- data/scan/lib/scan/slack_poster.rb +1 -0
- data/screengrab/lib/screengrab/runner.rb +2 -0
- data/sigh/lib/sigh/runner.rb +1 -1
- data/snapshot/lib/snapshot/options.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/api_client.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/app.rb +6 -0
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +5 -1
- data/spaceship/lib/spaceship/connect_api/response.rb +3 -1
- metadata +21 -18
@@ -11,7 +11,7 @@ module Fastlane
|
|
11
11
|
cmd << "--disable-sandbox" if params[:disable_sandbox]
|
12
12
|
cmd << "--verbose" if params[:verbose]
|
13
13
|
cmd << params[:command] if package_commands.include?(params[:command])
|
14
|
-
cmd << "--enable-code-coverage" if params[:enable_code_coverage] && params[:command] == 'generate-xcodeproj'
|
14
|
+
cmd << "--enable-code-coverage" if params[:enable_code_coverage] && (params[:command] == 'generate-xcodeproj' || params[:command] == 'test')
|
15
15
|
if params[:xcconfig]
|
16
16
|
cmd << "--xcconfig-overrides #{params[:xcconfig]}"
|
17
17
|
end
|
@@ -47,7 +47,7 @@ module Fastlane
|
|
47
47
|
end),
|
48
48
|
FastlaneCore::ConfigItem.new(key: :enable_code_coverage,
|
49
49
|
env_name: "FL_SPM_ENABLE_CODE_COVERAGE",
|
50
|
-
description: "Enables code coverage for the generated Xcode project when using the generate-xcodeproj command",
|
50
|
+
description: "Enables code coverage for the generated Xcode project when using the 'generate-xcodeproj' and the 'test' command",
|
51
51
|
is_string: false,
|
52
52
|
optional: true),
|
53
53
|
FastlaneCore::ConfigItem.new(key: :build_path,
|
@@ -112,13 +112,15 @@ module Fastlane
|
|
112
112
|
|
113
113
|
json << {
|
114
114
|
"category" => category.id,
|
115
|
-
"purposes" => selected_purposes.map(&:id),
|
115
|
+
"purposes" => selected_purposes.map(&:id).sort.uniq,
|
116
116
|
"data_protections" => [
|
117
117
|
protection_id, tracking_id
|
118
|
-
].compact
|
118
|
+
].compact.sort.uniq
|
119
119
|
}
|
120
120
|
end
|
121
121
|
|
122
|
+
json.sort_by! { |c| c["category"] }
|
123
|
+
|
122
124
|
# Recursively call this method if no categories were selected for data collection
|
123
125
|
if json.empty?
|
124
126
|
UI.error("No categories were selected for data collection.")
|
@@ -54,6 +54,7 @@ public func addExtraPlatforms(platforms: [String] = []) {
|
|
54
54
|
- parameters:
|
55
55
|
- tag: Define your own tag text. This will replace all other parameters
|
56
56
|
- grouping: Is used to keep your tags organised under one 'folder'
|
57
|
+
- includesLane: Whether the current lane should be included in the tag and message composition, e.g. '<grouping>/<lane>/<prefix><build_number><postfix>'
|
57
58
|
- prefix: Anything you want to put in front of the version number (e.g. 'v')
|
58
59
|
- postfix: Anything you want to put at the end of the version number (e.g. '-RC1')
|
59
60
|
- buildNumber: The build number. Defaults to the result of increment_build_number if you're using it
|
@@ -62,10 +63,10 @@ public func addExtraPlatforms(platforms: [String] = []) {
|
|
62
63
|
- force: Force adding the tag
|
63
64
|
- sign: Make a GPG-signed tag, using the default e-mail address's key
|
64
65
|
|
65
|
-
This will automatically tag your build with the following format: `<grouping>/<lane>/<prefix><build_number>`, where:|
|
66
|
+
This will automatically tag your build with the following format: `<grouping>/<lane>/<prefix><build_number><postfix>`, where:|
|
66
67
|
|
|
67
68
|
>- `grouping` is just to keep your tags organised under one 'folder', defaults to 'builds'|
|
68
|
-
- `lane` is the name of the current fastlane lane|
|
69
|
+
- `lane` is the name of the current fastlane lane, if chosen to be included via 'includes_lane' option, which defaults to 'true'|
|
69
70
|
- `prefix` is anything you want to stick in front of the version number, e.g. 'v'|
|
70
71
|
- `postfix` is anything you want to stick at the end of the version number, e.g. '-RC1'|
|
71
72
|
- `build_number` is the build number, which defaults to the value emitted by the `increment_build_number` action|
|
@@ -74,6 +75,7 @@ public func addExtraPlatforms(platforms: [String] = []) {
|
|
74
75
|
*/
|
75
76
|
public func addGitTag(tag: String? = nil,
|
76
77
|
grouping: String = "builds",
|
78
|
+
includesLane: Bool = true,
|
77
79
|
prefix: String = "",
|
78
80
|
postfix: String = "",
|
79
81
|
buildNumber: Any? = nil,
|
@@ -84,6 +86,7 @@ public func addGitTag(tag: String? = nil,
|
|
84
86
|
{
|
85
87
|
let command = RubyCommand(commandID: "", methodName: "add_git_tag", className: nil, args: [RubyCommand.Argument(name: "tag", value: tag),
|
86
88
|
RubyCommand.Argument(name: "grouping", value: grouping),
|
89
|
+
RubyCommand.Argument(name: "includes_lane", value: includesLane),
|
87
90
|
RubyCommand.Argument(name: "prefix", value: prefix),
|
88
91
|
RubyCommand.Argument(name: "postfix", value: postfix),
|
89
92
|
RubyCommand.Argument(name: "build_number", value: buildNumber),
|
@@ -1520,7 +1523,7 @@ public func captureAndroidScreenshots(androidHome: String? = nil,
|
|
1520
1523
|
- reinstallApp: Enabling this option will automatically uninstall the application before running it
|
1521
1524
|
- eraseSimulator: Enabling this option will automatically erase the simulator before running the application
|
1522
1525
|
- headless: Enabling this option will prevent displaying the simulator window
|
1523
|
-
- overrideStatusBar: Enabling this option
|
1526
|
+
- overrideStatusBar: Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception
|
1524
1527
|
- localizeSimulator: Enabling this option will configure the Simulator's system language
|
1525
1528
|
- darkMode: Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
|
1526
1529
|
- appIdentifier: The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
|
@@ -1661,7 +1664,7 @@ public func captureIosScreenshots(workspace: String? = nil,
|
|
1661
1664
|
- reinstallApp: Enabling this option will automatically uninstall the application before running it
|
1662
1665
|
- eraseSimulator: Enabling this option will automatically erase the simulator before running the application
|
1663
1666
|
- headless: Enabling this option will prevent displaying the simulator window
|
1664
|
-
- overrideStatusBar: Enabling this option
|
1667
|
+
- overrideStatusBar: Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception
|
1665
1668
|
- localizeSimulator: Enabling this option will configure the Simulator's system language
|
1666
1669
|
- darkMode: Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
|
1667
1670
|
- appIdentifier: The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
|
@@ -1993,6 +1996,7 @@ public func chatwork(apiToken: String,
|
|
1993
1996
|
- platform: The platform to use (optional)
|
1994
1997
|
- defaultRuleLevel: The default rule level unless otherwise configured
|
1995
1998
|
- includeInAppPurchases: Should check in-app purchases?
|
1999
|
+
- useLive: Should force check live app?
|
1996
2000
|
- negativeAppleSentiment: mentioning in a way that could be considered negative
|
1997
2001
|
- placeholderText: using placeholder text (e.g.:"lorem ipsum", "text here", etc...)
|
1998
2002
|
- otherPlatforms: mentioning other platforms, like Android or Blackberry
|
@@ -2017,6 +2021,7 @@ public func checkAppStoreMetadata(apiKeyPath: String? = nil,
|
|
2017
2021
|
platform: String = "ios",
|
2018
2022
|
defaultRuleLevel: Any = "error",
|
2019
2023
|
includeInAppPurchases: Bool = true,
|
2024
|
+
useLive: Bool = false,
|
2020
2025
|
negativeAppleSentiment: Any? = nil,
|
2021
2026
|
placeholderText: Any? = nil,
|
2022
2027
|
otherPlatforms: Any? = nil,
|
@@ -2037,6 +2042,7 @@ public func checkAppStoreMetadata(apiKeyPath: String? = nil,
|
|
2037
2042
|
RubyCommand.Argument(name: "platform", value: platform),
|
2038
2043
|
RubyCommand.Argument(name: "default_rule_level", value: defaultRuleLevel),
|
2039
2044
|
RubyCommand.Argument(name: "include_in_app_purchases", value: includeInAppPurchases),
|
2045
|
+
RubyCommand.Argument(name: "use_live", value: useLive),
|
2040
2046
|
RubyCommand.Argument(name: "negative_apple_sentiment", value: negativeAppleSentiment),
|
2041
2047
|
RubyCommand.Argument(name: "placeholder_text", value: placeholderText),
|
2042
2048
|
RubyCommand.Argument(name: "other_platforms", value: otherPlatforms),
|
@@ -2864,6 +2870,32 @@ public func download(url: String) {
|
|
2864
2870
|
_ = runner.executeCommand(command)
|
2865
2871
|
}
|
2866
2872
|
|
2873
|
+
/**
|
2874
|
+
Download App Privacy Details from an app in App Store Connect
|
2875
|
+
|
2876
|
+
- parameters:
|
2877
|
+
- username: Your Apple ID Username for App Store Connect
|
2878
|
+
- appIdentifier: The bundle identifier of your app
|
2879
|
+
- teamId: The ID of your App Store Connect team if you're in multiple teams
|
2880
|
+
- teamName: The name of your App Store Connect team if you're in multiple teams
|
2881
|
+
- outputJsonPath: Path to the app usage data JSON file generated by interactive questions
|
2882
|
+
|
2883
|
+
Download App Privacy Details from an app in App Store Connect. For more detail information, view https://docs.fastlane.tools/uploading-app-privacy-details
|
2884
|
+
*/
|
2885
|
+
public func downloadAppPrivacyDetailsFromAppStore(username: String,
|
2886
|
+
appIdentifier: String,
|
2887
|
+
teamId: Any? = nil,
|
2888
|
+
teamName: String? = nil,
|
2889
|
+
outputJsonPath: String = "./fastlane/app_privacy_details.json")
|
2890
|
+
{
|
2891
|
+
let command = RubyCommand(commandID: "", methodName: "download_app_privacy_details_from_app_store", className: nil, args: [RubyCommand.Argument(name: "username", value: username),
|
2892
|
+
RubyCommand.Argument(name: "app_identifier", value: appIdentifier),
|
2893
|
+
RubyCommand.Argument(name: "team_id", value: teamId),
|
2894
|
+
RubyCommand.Argument(name: "team_name", value: teamName),
|
2895
|
+
RubyCommand.Argument(name: "output_json_path", value: outputJsonPath)])
|
2896
|
+
_ = runner.executeCommand(command)
|
2897
|
+
}
|
2898
|
+
|
2867
2899
|
/**
|
2868
2900
|
Download dSYM files from App Store Connect for Bitcode apps
|
2869
2901
|
|
@@ -3791,6 +3823,7 @@ public func gitTagExists(tag: String,
|
|
3791
3823
|
- parameters:
|
3792
3824
|
- serverUrl: The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
|
3793
3825
|
- apiToken: Personal API Token for GitHub - generate one at https://github.com/settings/tokens
|
3826
|
+
- apiBearer: Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
|
3794
3827
|
- httpMethod: The HTTP method. e.g. GET / POST
|
3795
3828
|
- body: The request body in JSON or hash format
|
3796
3829
|
- rawBody: The request body taken verbatim instead of as JSON, useful for file uploads
|
@@ -3807,7 +3840,8 @@ public func gitTagExists(tag: String,
|
|
3807
3840
|
Documentation: [https://developer.github.com/v3](https://developer.github.com/v3).
|
3808
3841
|
*/
|
3809
3842
|
public func githubApi(serverUrl: String = "https://api.github.com",
|
3810
|
-
apiToken: String,
|
3843
|
+
apiToken: String? = nil,
|
3844
|
+
apiBearer: String? = nil,
|
3811
3845
|
httpMethod: String = "GET",
|
3812
3846
|
body: [String: Any] = [:],
|
3813
3847
|
rawBody: String? = nil,
|
@@ -3819,6 +3853,7 @@ public func githubApi(serverUrl: String = "https://api.github.com",
|
|
3819
3853
|
{
|
3820
3854
|
let command = RubyCommand(commandID: "", methodName: "github_api", className: nil, args: [RubyCommand.Argument(name: "server_url", value: serverUrl),
|
3821
3855
|
RubyCommand.Argument(name: "api_token", value: apiToken),
|
3856
|
+
RubyCommand.Argument(name: "api_bearer", value: apiBearer),
|
3822
3857
|
RubyCommand.Argument(name: "http_method", value: httpMethod),
|
3823
3858
|
RubyCommand.Argument(name: "body", value: body),
|
3824
3859
|
RubyCommand.Argument(name: "raw_body", value: rawBody),
|
@@ -5492,6 +5527,7 @@ public func podLibLint(useBundleExec: Bool = true,
|
|
5492
5527
|
- swiftVersion: The SWIFT_VERSION that should be used to lint the spec. This takes precedence over a .swift-version file
|
5493
5528
|
- skipImportValidation: Lint skips validating that the pod can be imported
|
5494
5529
|
- skipTests: Lint skips building and running tests during validation
|
5530
|
+
- useJson: Convert the podspec to JSON before pushing it to the repo
|
5495
5531
|
- verbose: Show more debugging information
|
5496
5532
|
- useModularHeaders: Use modular headers option during validation
|
5497
5533
|
- synchronous: If validation depends on other recently pushed pods, synchronize
|
@@ -5505,6 +5541,7 @@ public func podPush(useBundleExec: Bool = false,
|
|
5505
5541
|
swiftVersion: String? = nil,
|
5506
5542
|
skipImportValidation: Bool? = nil,
|
5507
5543
|
skipTests: Bool? = nil,
|
5544
|
+
useJson: Bool? = nil,
|
5508
5545
|
verbose: Bool = false,
|
5509
5546
|
useModularHeaders: Bool? = nil,
|
5510
5547
|
synchronous: Bool? = nil)
|
@@ -5518,6 +5555,7 @@ public func podPush(useBundleExec: Bool = false,
|
|
5518
5555
|
RubyCommand.Argument(name: "swift_version", value: swiftVersion),
|
5519
5556
|
RubyCommand.Argument(name: "skip_import_validation", value: skipImportValidation),
|
5520
5557
|
RubyCommand.Argument(name: "skip_tests", value: skipTests),
|
5558
|
+
RubyCommand.Argument(name: "use_json", value: useJson),
|
5521
5559
|
RubyCommand.Argument(name: "verbose", value: verbose),
|
5522
5560
|
RubyCommand.Argument(name: "use_modular_headers", value: useModularHeaders),
|
5523
5561
|
RubyCommand.Argument(name: "synchronous", value: synchronous)])
|
@@ -5571,6 +5609,7 @@ public func podioItem(clientId: String,
|
|
5571
5609
|
- platform: The platform to use (optional)
|
5572
5610
|
- defaultRuleLevel: The default rule level unless otherwise configured
|
5573
5611
|
- includeInAppPurchases: Should check in-app purchases?
|
5612
|
+
- useLive: Should force check live app?
|
5574
5613
|
- freeStuffInIap: using text indicating that your IAP is free
|
5575
5614
|
|
5576
5615
|
- returns: true if precheck passes, else, false
|
@@ -5586,6 +5625,7 @@ public func precheck(apiKeyPath: Any? = precheckfile.apiKeyPath,
|
|
5586
5625
|
platform: Any = precheckfile.platform,
|
5587
5626
|
defaultRuleLevel: Any = precheckfile.defaultRuleLevel,
|
5588
5627
|
includeInAppPurchases: Bool = precheckfile.includeInAppPurchases,
|
5628
|
+
useLive: Bool = precheckfile.useLive,
|
5589
5629
|
freeStuffInIap: Any? = precheckfile.freeStuffInIap)
|
5590
5630
|
{
|
5591
5631
|
let command = RubyCommand(commandID: "", methodName: "precheck", className: nil, args: [RubyCommand.Argument(name: "api_key_path", value: apiKeyPath),
|
@@ -5597,6 +5637,7 @@ public func precheck(apiKeyPath: Any? = precheckfile.apiKeyPath,
|
|
5597
5637
|
RubyCommand.Argument(name: "platform", value: platform),
|
5598
5638
|
RubyCommand.Argument(name: "default_rule_level", value: defaultRuleLevel),
|
5599
5639
|
RubyCommand.Argument(name: "include_in_app_purchases", value: includeInAppPurchases),
|
5640
|
+
RubyCommand.Argument(name: "use_live", value: useLive),
|
5600
5641
|
RubyCommand.Argument(name: "free_stuff_in_iap", value: freeStuffInIap)])
|
5601
5642
|
_ = runner.executeCommand(command)
|
5602
5643
|
}
|
@@ -5741,6 +5782,7 @@ public func pushGitTags(force: Bool = false,
|
|
5741
5782
|
- remote: The remote to push to
|
5742
5783
|
- noVerify: Whether or not to use --no-verify
|
5743
5784
|
- setUpstream: Whether or not to use --set-upstream
|
5785
|
+
- pushOptions: Array of strings to be passed using the '--push-option' option
|
5744
5786
|
|
5745
5787
|
Lets you push your local commits to a remote git repo. Useful if you make local changes such as adding a version bump commit (using `commit_version_bump`) or a git tag (using 'add_git_tag') on a CI server, and you want to push those changes back to your canonical/main repo.
|
5746
5788
|
If this is a new branch, use the `set_upstream` option to set the remote branch as upstream.
|
@@ -5752,7 +5794,8 @@ public func pushToGitRemote(localBranch: String? = nil,
|
|
5752
5794
|
tags: Bool = true,
|
5753
5795
|
remote: String = "origin",
|
5754
5796
|
noVerify: Bool = false,
|
5755
|
-
setUpstream: Bool = false
|
5797
|
+
setUpstream: Bool = false,
|
5798
|
+
pushOptions: [String] = [])
|
5756
5799
|
{
|
5757
5800
|
let command = RubyCommand(commandID: "", methodName: "push_to_git_remote", className: nil, args: [RubyCommand.Argument(name: "local_branch", value: localBranch),
|
5758
5801
|
RubyCommand.Argument(name: "remote_branch", value: remoteBranch),
|
@@ -5761,7 +5804,8 @@ public func pushToGitRemote(localBranch: String? = nil,
|
|
5761
5804
|
RubyCommand.Argument(name: "tags", value: tags),
|
5762
5805
|
RubyCommand.Argument(name: "remote", value: remote),
|
5763
5806
|
RubyCommand.Argument(name: "no_verify", value: noVerify),
|
5764
|
-
RubyCommand.Argument(name: "set_upstream", value: setUpstream)
|
5807
|
+
RubyCommand.Argument(name: "set_upstream", value: setUpstream),
|
5808
|
+
RubyCommand.Argument(name: "push_options", value: pushOptions)])
|
5765
5809
|
_ = runner.executeCommand(command)
|
5766
5810
|
}
|
5767
5811
|
|
@@ -6091,6 +6135,7 @@ public func rubyVersion() {
|
|
6091
6135
|
- slackIconUrl: Overrides the webhook's image property if slack_use_webhook_configured_username_and_icon is false
|
6092
6136
|
- skipSlack: Don't publish to slack, even when an URL is given
|
6093
6137
|
- slackOnlyOnFailure: Only post on Slack if the tests fail
|
6138
|
+
- slackDefaultPayloads: Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
|
6094
6139
|
- destination: Use only if you're a pro, use the other options instead
|
6095
6140
|
- catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
6096
6141
|
- customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
@@ -6159,6 +6204,7 @@ public func runTests(workspace: String? = nil,
|
|
6159
6204
|
slackIconUrl: String = "https://fastlane.tools/assets/img/fastlane_icon.png",
|
6160
6205
|
skipSlack: Bool = false,
|
6161
6206
|
slackOnlyOnFailure: Bool = false,
|
6207
|
+
slackDefaultPayloads: [String]? = nil,
|
6162
6208
|
destination: Any? = nil,
|
6163
6209
|
catalystPlatform: String? = nil,
|
6164
6210
|
customReportFileName: String? = nil,
|
@@ -6225,6 +6271,7 @@ public func runTests(workspace: String? = nil,
|
|
6225
6271
|
RubyCommand.Argument(name: "slack_icon_url", value: slackIconUrl),
|
6226
6272
|
RubyCommand.Argument(name: "skip_slack", value: skipSlack),
|
6227
6273
|
RubyCommand.Argument(name: "slack_only_on_failure", value: slackOnlyOnFailure),
|
6274
|
+
RubyCommand.Argument(name: "slack_default_payloads", value: slackDefaultPayloads),
|
6228
6275
|
RubyCommand.Argument(name: "destination", value: destination),
|
6229
6276
|
RubyCommand.Argument(name: "catalyst_platform", value: catalystPlatform),
|
6230
6277
|
RubyCommand.Argument(name: "custom_report_file_name", value: customReportFileName),
|
@@ -6373,6 +6420,7 @@ public func say(text: Any,
|
|
6373
6420
|
- slackIconUrl: Overrides the webhook's image property if slack_use_webhook_configured_username_and_icon is false
|
6374
6421
|
- skipSlack: Don't publish to slack, even when an URL is given
|
6375
6422
|
- slackOnlyOnFailure: Only post on Slack if the tests fail
|
6423
|
+
- slackDefaultPayloads: Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
|
6376
6424
|
- destination: Use only if you're a pro, use the other options instead
|
6377
6425
|
- catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
6378
6426
|
- customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
@@ -6441,6 +6489,7 @@ public func scan(workspace: Any? = scanfile.workspace,
|
|
6441
6489
|
slackIconUrl: Any = scanfile.slackIconUrl,
|
6442
6490
|
skipSlack: Bool = scanfile.skipSlack,
|
6443
6491
|
slackOnlyOnFailure: Bool = scanfile.slackOnlyOnFailure,
|
6492
|
+
slackDefaultPayloads: [String]? = scanfile.slackDefaultPayloads,
|
6444
6493
|
destination: Any? = scanfile.destination,
|
6445
6494
|
catalystPlatform: Any? = scanfile.catalystPlatform,
|
6446
6495
|
customReportFileName: Any? = scanfile.customReportFileName,
|
@@ -6507,6 +6556,7 @@ public func scan(workspace: Any? = scanfile.workspace,
|
|
6507
6556
|
RubyCommand.Argument(name: "slack_icon_url", value: slackIconUrl),
|
6508
6557
|
RubyCommand.Argument(name: "skip_slack", value: skipSlack),
|
6509
6558
|
RubyCommand.Argument(name: "slack_only_on_failure", value: slackOnlyOnFailure),
|
6559
|
+
RubyCommand.Argument(name: "slack_default_payloads", value: slackDefaultPayloads),
|
6510
6560
|
RubyCommand.Argument(name: "destination", value: destination),
|
6511
6561
|
RubyCommand.Argument(name: "catalyst_platform", value: catalystPlatform),
|
6512
6562
|
RubyCommand.Argument(name: "custom_report_file_name", value: customReportFileName),
|
@@ -6685,6 +6735,7 @@ public func setChangelog(apiKeyPath: String? = nil,
|
|
6685
6735
|
- repositoryName: The path to your repo, e.g. 'fastlane/fastlane'
|
6686
6736
|
- serverUrl: The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
|
6687
6737
|
- apiToken: Personal API Token for GitHub - generate one at https://github.com/settings/tokens
|
6738
|
+
- apiBearer: Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
|
6688
6739
|
- tagName: Pass in the tag name
|
6689
6740
|
- name: Name of this release
|
6690
6741
|
- commitish: Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually master)
|
@@ -6702,7 +6753,8 @@ public func setChangelog(apiKeyPath: String? = nil,
|
|
6702
6753
|
*/
|
6703
6754
|
@discardableResult public func setGithubRelease(repositoryName: String,
|
6704
6755
|
serverUrl: String = "https://api.github.com",
|
6705
|
-
apiToken: String,
|
6756
|
+
apiToken: String? = nil,
|
6757
|
+
apiBearer: String? = nil,
|
6706
6758
|
tagName: String,
|
6707
6759
|
name: String? = nil,
|
6708
6760
|
commitish: String? = nil,
|
@@ -6714,6 +6766,7 @@ public func setChangelog(apiKeyPath: String? = nil,
|
|
6714
6766
|
let command = RubyCommand(commandID: "", methodName: "set_github_release", className: nil, args: [RubyCommand.Argument(name: "repository_name", value: repositoryName),
|
6715
6767
|
RubyCommand.Argument(name: "server_url", value: serverUrl),
|
6716
6768
|
RubyCommand.Argument(name: "api_token", value: apiToken),
|
6769
|
+
RubyCommand.Argument(name: "api_bearer", value: apiBearer),
|
6717
6770
|
RubyCommand.Argument(name: "tag_name", value: tagName),
|
6718
6771
|
RubyCommand.Argument(name: "name", value: name),
|
6719
6772
|
RubyCommand.Argument(name: "commitish", value: commitish),
|
@@ -7004,7 +7057,7 @@ public func skipDocs() {
|
|
7004
7057
|
- username: Overrides the webhook's username property if use_webhook_configured_username_and_icon is false
|
7005
7058
|
- iconUrl: Overrides the webhook's image property if use_webhook_configured_username_and_icon is false
|
7006
7059
|
- payload: Add additional information to this post. payload must be a hash containing any key with any value
|
7007
|
-
- defaultPayloads:
|
7060
|
+
- defaultPayloads: Specifies default payloads to include. Pass an empty array to suppress all the default payloads
|
7008
7061
|
- attachmentProperties: Merge additional properties in the slack attachment, see https://api.slack.com/docs/attachments
|
7009
7062
|
- success: Was this build successful? (true/false)
|
7010
7063
|
- failOnError: Should an error sending the slack notification cause a failure? (true/false)
|
@@ -7020,7 +7073,7 @@ public func slack(message: String? = nil,
|
|
7020
7073
|
username: String = "fastlane",
|
7021
7074
|
iconUrl: String = "https://fastlane.tools/assets/img/fastlane_icon.png",
|
7022
7075
|
payload: [String: Any] = [:],
|
7023
|
-
defaultPayloads: [String]
|
7076
|
+
defaultPayloads: [String] = ["lane", "test_result", "git_branch", "git_author", "last_git_commit", "last_git_commit_hash"],
|
7024
7077
|
attachmentProperties: [String: Any] = [:],
|
7025
7078
|
success: Bool = true,
|
7026
7079
|
failOnError: Bool = true,
|
@@ -7206,7 +7259,7 @@ public func slather(buildDirectory: String? = nil,
|
|
7206
7259
|
- reinstallApp: Enabling this option will automatically uninstall the application before running it
|
7207
7260
|
- eraseSimulator: Enabling this option will automatically erase the simulator before running the application
|
7208
7261
|
- headless: Enabling this option will prevent displaying the simulator window
|
7209
|
-
- overrideStatusBar: Enabling this option
|
7262
|
+
- overrideStatusBar: Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception
|
7210
7263
|
- localizeSimulator: Enabling this option will configure the Simulator's system language
|
7211
7264
|
- darkMode: Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
|
7212
7265
|
- appIdentifier: The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
|
@@ -7466,7 +7519,7 @@ public func splunkmint(dsym: String? = nil,
|
|
7466
7519
|
|
7467
7520
|
- parameters:
|
7468
7521
|
- command: The swift command (one of: build, test, clean, reset, update, resolve, generate-xcodeproj, init)
|
7469
|
-
- enableCodeCoverage: Enables code coverage for the generated Xcode project when using the generate-xcodeproj command
|
7522
|
+
- enableCodeCoverage: Enables code coverage for the generated Xcode project when using the 'generate-xcodeproj' and the 'test' command
|
7470
7523
|
- buildPath: Specify build/cache directory [default: ./.build]
|
7471
7524
|
- packagePath: Change working directory before any other operation
|
7472
7525
|
- xcconfig: Use xcconfig file to override swift package generate-xcodeproj defaults
|
@@ -9470,4 +9523,4 @@ public let snapshotfile = Snapshotfile()
|
|
9470
9523
|
|
9471
9524
|
// Please don't remove the lines below
|
9472
9525
|
// They are used to detect outdated files
|
9473
|
-
// FastlaneRunnerAPIVersion [0.9.
|
9526
|
+
// FastlaneRunnerAPIVersion [0.9.107]
|
@@ -29,6 +29,9 @@ public protocol PrecheckfileProtocol: class {
|
|
29
29
|
/// Should check in-app purchases?
|
30
30
|
var includeInAppPurchases: Bool { get }
|
31
31
|
|
32
|
+
/// Should force check live app?
|
33
|
+
var useLive: Bool { get }
|
34
|
+
|
32
35
|
/// using text indicating that your IAP is free
|
33
36
|
var freeStuffInIap: String? { get }
|
34
37
|
}
|
@@ -43,9 +46,10 @@ public extension PrecheckfileProtocol {
|
|
43
46
|
var platform: String { return "ios" }
|
44
47
|
var defaultRuleLevel: String { return "error" }
|
45
48
|
var includeInAppPurchases: Bool { return true }
|
49
|
+
var useLive: Bool { return false }
|
46
50
|
var freeStuffInIap: String? { return nil }
|
47
51
|
}
|
48
52
|
|
49
53
|
// Please don't remove the lines below
|
50
54
|
// They are used to detect outdated files
|
51
|
-
// FastlaneRunnerAPIVersion [0.9.
|
55
|
+
// FastlaneRunnerAPIVersion [0.9.50]
|
@@ -176,6 +176,9 @@ public protocol ScanfileProtocol: class {
|
|
176
176
|
/// Only post on Slack if the tests fail
|
177
177
|
var slackOnlyOnFailure: Bool { get }
|
178
178
|
|
179
|
+
/// Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
|
180
|
+
var slackDefaultPayloads: [String]? { get }
|
181
|
+
|
179
182
|
/// Use only if you're a pro, use the other options instead
|
180
183
|
var destination: String? { get }
|
181
184
|
|
@@ -257,6 +260,7 @@ public extension ScanfileProtocol {
|
|
257
260
|
var slackIconUrl: String { return "https://fastlane.tools/assets/img/fastlane_icon.png" }
|
258
261
|
var skipSlack: Bool { return false }
|
259
262
|
var slackOnlyOnFailure: Bool { return false }
|
263
|
+
var slackDefaultPayloads: [String]? { return nil }
|
260
264
|
var destination: String? { return nil }
|
261
265
|
var catalystPlatform: String? { return nil }
|
262
266
|
var customReportFileName: String? { return nil }
|
@@ -268,4 +272,4 @@ public extension ScanfileProtocol {
|
|
268
272
|
|
269
273
|
// Please don't remove the lines below
|
270
274
|
// They are used to detect outdated files
|
271
|
-
// FastlaneRunnerAPIVersion [0.9.
|
275
|
+
// FastlaneRunnerAPIVersion [0.9.62]
|