fastlane 2.98.0 → 2.99.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 +70 -70
- data/credentials_manager/lib/credentials_manager/appfile_config.rb +1 -1
- data/deliver/lib/assets/DeliverfileDefault +1 -1
- data/deliver/lib/assets/DeliverfileDefault.swift +1 -1
- data/deliver/lib/assets/summary.html.erb +1 -1
- data/deliver/lib/deliver/commands_generator.rb +2 -2
- data/deliver/lib/deliver/detect_values.rb +1 -1
- data/deliver/lib/deliver/download_screenshots.rb +1 -1
- data/deliver/lib/deliver/options.rb +3 -3
- data/deliver/lib/deliver/runner.rb +9 -9
- data/deliver/lib/deliver/submit_for_review.rb +3 -3
- data/deliver/lib/deliver/upload_metadata.rb +3 -3
- data/deliver/lib/deliver/upload_screenshots.rb +2 -2
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +3 -3
- data/fastlane/lib/fastlane/actions/cocoapods.rb +1 -0
- data/fastlane/lib/fastlane/actions/create_app_online.rb +1 -1
- data/fastlane/lib/fastlane/actions/docs/check_app_store_metadata.md +3 -3
- data/fastlane/lib/fastlane/actions/docs/create_app_online.md +8 -8
- data/fastlane/lib/fastlane/actions/docs/frame_screenshots.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +14 -14
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +2 -2
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +7 -7
- data/fastlane/lib/fastlane/actions/github_api.rb +2 -0
- data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +2 -2
- data/fastlane/lib/fastlane/actions/set_changelog.rb +6 -6
- data/fastlane/lib/fastlane/actions/upload_to_app_store.rb +1 -1
- data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +1 -1
- data/fastlane/lib/fastlane/command_line_handler.rb +2 -2
- data/fastlane/lib/fastlane/commands_generator.rb +1 -0
- data/fastlane/lib/fastlane/fast_file.rb +8 -6
- data/fastlane/lib/fastlane/lane_manager.rb +0 -3
- data/fastlane/lib/fastlane/runner.rb +1 -9
- data/fastlane/lib/fastlane/server/socket_server.rb +4 -2
- data/fastlane/lib/fastlane/setup/setup_ios.rb +12 -12
- data/fastlane/lib/fastlane/swift_lane_manager.rb +9 -8
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Appfile.swift +1 -1
- data/fastlane/swift/ArgumentProcessor.swift +3 -1
- data/fastlane/swift/ControlCommand.swift +0 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +3 -3
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/LaneFileProtocol.swift +0 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/RubyCommand.swift +0 -1
- data/fastlane/swift/RubyCommandable.swift +0 -1
- data/fastlane/swift/Runner.swift +7 -7
- data/fastlane/swift/RunnerArgument.swift +0 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SocketClient.swift +0 -1
- data/fastlane/swift/SocketClientDelegateProtocol.swift +0 -1
- data/fastlane/swift/SocketResponse.swift +0 -1
- data/fastlane/swift/main.swift +2 -2
- data/fastlane_core/lib/fastlane_core/analytics/analytics_event_builder.rb +10 -39
- data/fastlane_core/lib/fastlane_core/analytics/analytics_ingester_client.rb +34 -30
- data/fastlane_core/lib/fastlane_core/analytics/analytics_session.rb +16 -176
- data/fastlane_core/lib/fastlane_core/analytics/app_identifier_guesser.rb +1 -1
- data/fastlane_core/lib/fastlane_core/build_watcher.rb +2 -2
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +8 -8
- data/fastlane_core/lib/fastlane_core/module.rb +2 -5
- data/fastlane_core/lib/fastlane_core/ui/errors/fastlane_error.rb +0 -1
- data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +5 -7
- data/gym/lib/gym/detect_values.rb +23 -0
- data/gym/lib/gym/generators/package_command_generator_xcode7.rb +1 -21
- data/match/lib/match/spaceship_ensure.rb +1 -1
- data/pilot/lib/pilot/build_manager.rb +2 -2
- data/pilot/lib/pilot/manager.rb +2 -2
- data/pilot/lib/pilot/options.rb +4 -4
- data/precheck/lib/precheck/options.rb +2 -2
- data/produce/lib/produce/commands_generator.rb +1 -1
- data/produce/lib/produce/developer_center.rb +1 -1
- data/produce/lib/produce/itunes_connect.rb +6 -6
- data/produce/lib/produce/options.rb +4 -4
- data/scan/lib/scan/test_command_generator.rb +6 -2
- data/screengrab/lib/screengrab/runner.rb +2 -2
- data/sigh/lib/sigh/runner.rb +6 -1
- data/snapshot/lib/assets/SnapshotHelper.swift +0 -1
- data/snapshot/lib/assets/SnapshotHelperXcode8.swift +0 -1
- data/spaceship/README.md +3 -3
- data/spaceship/lib/spaceship.rb +1 -1
- data/spaceship/lib/spaceship/client.rb +12 -7
- data/spaceship/lib/spaceship/du/du_client.rb +1 -1
- data/spaceship/lib/spaceship/errors.rb +1 -1
- data/spaceship/lib/spaceship/module.rb +1 -1
- data/spaceship/lib/spaceship/playground.rb +3 -3
- data/spaceship/lib/spaceship/portal/portal_client.rb +2 -2
- data/spaceship/lib/spaceship/spaceauth_runner.rb +5 -5
- data/spaceship/lib/spaceship/test_flight/client.rb +12 -1
- data/spaceship/lib/spaceship/test_flight/group.rb +1 -1
- data/spaceship/lib/spaceship/test_flight/tester.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_analytics.rb +143 -0
- data/spaceship/lib/spaceship/tunes/app_details.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_image.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_screenshot.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_status.rb +2 -2
- data/spaceship/lib/spaceship/tunes/app_submission.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_trailer.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_version.rb +6 -6
- data/spaceship/lib/spaceship/tunes/app_version_history.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_version_states_history.rb +1 -1
- data/spaceship/lib/spaceship/tunes/application.rb +15 -4
- data/spaceship/lib/spaceship/tunes/availability.rb +24 -8
- data/spaceship/lib/spaceship/tunes/b2b_user.rb +7 -2
- data/spaceship/lib/spaceship/tunes/build.rb +2 -2
- data/spaceship/lib/spaceship/tunes/build_details.rb +1 -1
- data/spaceship/lib/spaceship/tunes/build_train.rb +2 -2
- data/spaceship/lib/spaceship/tunes/errors.rb +1 -1
- data/spaceship/lib/spaceship/tunes/iap.rb +2 -2
- data/spaceship/lib/spaceship/tunes/iap_status.rb +1 -1
- data/spaceship/lib/spaceship/tunes/iap_type.rb +1 -1
- data/spaceship/lib/spaceship/tunes/tunes.rb +1 -0
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +41 -13
- data/spaceship/lib/spaceship/two_step_client.rb +1 -1
- metadata +15 -14
@@ -27,7 +27,7 @@ module Fastlane
|
|
27
27
|
|
28
28
|
def self.details
|
29
29
|
[
|
30
|
-
"Create new apps on
|
30
|
+
"Create new apps on App Store Connect and Apple Developer Portal via _produce_.",
|
31
31
|
"If the app already exists, `create_app_online` will not do anything.",
|
32
32
|
"For more information about _produce_, visit its documentation page: [https://docs.fastlane.tools/actions/produce/](https://docs.fastlane.tools/actions/produce/)."
|
33
33
|
].join("\n")
|
@@ -7,7 +7,7 @@ Precheck
|
|
7
7
|
|
8
8
|
###### Check your app using a community driven set of App Store review rules to avoid being rejected
|
9
9
|
|
10
|
-
Apple rejects builds for many avoidable metadata issues like including swear words 😮, other companies’ trademarks, or even mentioning an iOS bug 🐛. _fastlane precheck_ takes a lot of the guess work out by scanning your app’s details in
|
10
|
+
Apple rejects builds for many avoidable metadata issues like including swear words 😮, other companies’ trademarks, or even mentioning an iOS bug 🐛. _fastlane precheck_ takes a lot of the guess work out by scanning your app’s details in App Store Connect for avoidable problems. fastlane precheck helps you get your app through app review without rejections so you can ship faster 🚀
|
11
11
|
|
12
12
|
-------
|
13
13
|
|
@@ -35,7 +35,7 @@ Apple rejects builds for many avoidable metadata issues like including swear wor
|
|
35
35
|
📢 | You can decide if you want to warn about potential problems and continue or have _fastlane_ show an error and stop after all scans are done
|
36
36
|
|
37
37
|
# Usage
|
38
|
-
Run _fastlane precheck_ to check the app metadata from
|
38
|
+
Run _fastlane precheck_ to check the app metadata from App Store Connect
|
39
39
|
|
40
40
|
```no-highlight
|
41
41
|
fastlane precheck
|
@@ -97,7 +97,7 @@ end
|
|
97
97
|
|
98
98
|
# How does it work?
|
99
99
|
|
100
|
-
_precheck_ will access `
|
100
|
+
_precheck_ will access `App Store Connect` to download your app's metadata. It uses [_spaceship_](https://spaceship.airforce) to communicate with Apple's web services.
|
101
101
|
|
102
102
|
# Want to improve precheck's rules?
|
103
103
|
Please submit an issue on GitHub and provide information about your App Store rejection! Make sure you scrub out any personally identifiable information since this will be public.
|
@@ -2,9 +2,9 @@
|
|
2
2
|
<img src="/img/actions/produce.png" width="250">
|
3
3
|
</p>
|
4
4
|
|
5
|
-
###### Create new iOS apps on
|
5
|
+
###### Create new iOS apps on App Store Connect and Dev Portal using your command line
|
6
6
|
|
7
|
-
_produce_ creates new iOS apps on both the Apple Developer Portal and
|
7
|
+
_produce_ creates new iOS apps on both the Apple Developer Portal and App Store Connect with the minimum required information.
|
8
8
|
|
9
9
|
-------
|
10
10
|
|
@@ -18,7 +18,7 @@ _produce_ creates new iOS apps on both the Apple Developer Portal and iTunes Con
|
|
18
18
|
|
19
19
|
# Features
|
20
20
|
|
21
|
-
- **Create** new apps on both
|
21
|
+
- **Create** new apps on both App Store Connect and the Apple Developer Portal
|
22
22
|
- **Modify** Application Services on the Apple Developer Portal
|
23
23
|
- **Create** App Groups on the Apple Developer Portal
|
24
24
|
- **Associate** apps with App Groups on the Apple Developer Portal
|
@@ -44,7 +44,7 @@ fastlane produce --help
|
|
44
44
|
Commands: (* default)
|
45
45
|
associate_group Associate with a group, which is created if needed or simply located otherwise
|
46
46
|
associate_merchant Associate with a merchant for use with Apple Pay. Apple Pay will be enabled for this app
|
47
|
-
create * Creates a new app on
|
47
|
+
create * Creates a new app on App Store Connect and the Apple Developer Portal
|
48
48
|
disable_services Disable specific Application Services for a specific app on the Apple Developer Portal
|
49
49
|
enable_services Enable specific Application Services for a specific app on the Apple Developer Portal
|
50
50
|
group Ensure that a specific App Group exists
|
@@ -66,13 +66,13 @@ Options for create:
|
|
66
66
|
-j, --platform STRING The platform to use (optional) (PRODUCE_PLATFORM)
|
67
67
|
-m, --language STRING Primary Language (e.g. 'English', 'German') (PRODUCE_LANGUAGE)
|
68
68
|
-c, --company_name STRING The name of your company. Only required if it's the first app you create (PRODUCE_COMPANY_NAME)
|
69
|
-
-i, --skip_itc [VALUE] Skip the creation of the app on
|
69
|
+
-i, --skip_itc [VALUE] Skip the creation of the app on App Store Connect (PRODUCE_SKIP_ITC)
|
70
70
|
-d, --skip_devcenter [VALUE] Skip the creation of the app on the Apple Developer Portal (PRODUCE_SKIP_DEVCENTER)
|
71
|
-
-s, --itc_users ARRAY Array of
|
71
|
+
-s, --itc_users ARRAY Array of App Store Connect users. If provided, you can limit access to this newly created app for users with the App Manager, Developer, Marketer or Sales roles (ITC_USERS)
|
72
72
|
-b, --team_id STRING The ID of your Developer Portal team if you're in multiple teams (PRODUCE_TEAM_ID)
|
73
73
|
-l, --team_name STRING The name of your Developer Portal team if you're in multiple teams (PRODUCE_TEAM_NAME)
|
74
|
-
-k, --itc_team_id [VALUE] The ID of your
|
75
|
-
-p, --itc_team_name STRING The name of your
|
74
|
+
-k, --itc_team_id [VALUE] The ID of your App Store Connect team if you're in multiple teams (PRODUCE_ITC_TEAM_ID)
|
75
|
+
-p, --itc_team_name STRING The name of your App Store Connect team if you're in multiple teams (PRODUCE_ITC_TEAM_NAME)
|
76
76
|
```
|
77
77
|
|
78
78
|
## Enabling / Disabling Application Services
|
@@ -258,7 +258,7 @@ Check out [_snapshot_](https://docs.fastlane.tools/actions/snapshot/) to automat
|
|
258
258
|
|
259
259
|
## Upload screenshots
|
260
260
|
|
261
|
-
Use [_deliver_](https://docs.fastlane.tools/actions/deliver/) to upload iOS screenshots to
|
261
|
+
Use [_deliver_](https://docs.fastlane.tools/actions/deliver/) to upload iOS screenshots to App Store Connect, or [_supply_](https://docs.fastlane.tools/actions/supply/) to upload Android screenshots to Play Store completely automatically 🚀
|
262
262
|
|
263
263
|
## Alternative location to store device_frames
|
264
264
|
|
@@ -362,7 +362,7 @@ What's the worst that could happen for each of the profile types?
|
|
362
362
|
|
363
363
|
##### App Store Profiles
|
364
364
|
|
365
|
-
An App Store profile can't be used for anything as long as it's not re-signed by Apple. The only way to get an app resigned is to submit an app for review which could take anywhere from 24 hours to a few days (checkout [appreviewtimes.com](http://appreviewtimes.com) for up-to-date expectations). Attackers could only submit an app for review, if they also got access to your
|
365
|
+
An App Store profile can't be used for anything as long as it's not re-signed by Apple. The only way to get an app resigned is to submit an app for review which could take anywhere from 24 hours to a few days (checkout [appreviewtimes.com](http://appreviewtimes.com) for up-to-date expectations). Attackers could only submit an app for review, if they also got access to your App Store Connect credentials (which are not stored in git, but in your local keychain). Additionally you get an email notification every time a build gets uploaded to cancel the submission even before your app gets into the review stage.
|
366
366
|
|
367
367
|
##### Development and Ad Hoc Profiles
|
368
368
|
|
@@ -377,7 +377,7 @@ Because of the potentially dangerous nature of In-House profiles please use _mat
|
|
377
377
|
##### To sum up
|
378
378
|
|
379
379
|
- You have full control over the access list of your Git repo, no third party service involved
|
380
|
-
- Even if your certificates are leaked, they can't be used to cause any harm without your
|
380
|
+
- Even if your certificates are leaked, they can't be used to cause any harm without your App Store Connect login credentials
|
381
381
|
- Use In-House enterprise profile with _match_ with caution
|
382
382
|
- If you use GitHub or Bitbucket we encourage enabling 2 factor authentication for all accounts that have access to the certificates repo
|
383
383
|
- The complete source code of _match_ is fully open source on [GitHub](https://docs.fastlane.tools/actions/match/)
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<img src="/img/actions/deliver.png" width="250">
|
3
3
|
</p>
|
4
4
|
|
5
|
-
_deliver_ uploads screenshots, metadata and binaries to
|
5
|
+
_deliver_ uploads screenshots, metadata and binaries to App Store Connect. Use _deliver_ to submit your app for App Store review.
|
6
6
|
|
7
7
|
-------
|
8
8
|
|
@@ -19,8 +19,8 @@ _deliver_ uploads screenshots, metadata and binaries to iTunes Connect. Use _del
|
|
19
19
|
|
20
20
|
# Features
|
21
21
|
- Upload hundreds of localized screenshots completely automatically
|
22
|
-
- Upload a new ipa/pkg file to
|
23
|
-
- Maintain your app metadata locally and push changes back to
|
22
|
+
- Upload a new ipa/pkg file to App Store Connect without Xcode from any Mac
|
23
|
+
- Maintain your app metadata locally and push changes back to App Store Connect
|
24
24
|
- Easily implement a real Continuous Deployment process using [_fastlane_](https://fastlane.tools)
|
25
25
|
- Store the configuration in git to easily deploy from **any** Mac, including your Continuous Integration server
|
26
26
|
- Get a HTML preview of the fetched metadata before uploading the app metadata and screenshots to iTC
|
@@ -30,11 +30,11 @@ To upload builds to TestFlight check out [_pilot_](/actions/pilot).
|
|
30
30
|
|
31
31
|
# Quick Start
|
32
32
|
|
33
|
-
The guide will create all the necessary files for you, using the existing app metadata from
|
33
|
+
The guide will create all the necessary files for you, using the existing app metadata from App Store Connect.
|
34
34
|
|
35
35
|
- `cd [your_project_folder]`
|
36
36
|
- `fastlane deliver init`
|
37
|
-
- Enter your
|
37
|
+
- Enter your App Store Connect credentials
|
38
38
|
- Enter your app identifier
|
39
39
|
- Enjoy a good drink, while the computer does all the work for you
|
40
40
|
|
@@ -46,7 +46,7 @@ Check out your local `./fastlane/metadata` and `./fastlane/screenshots` folders
|
|
46
46
|
|
47
47
|

|
48
48
|
|
49
|
-
You'll see your metadata from
|
49
|
+
You'll see your metadata from App Store Connect. Feel free to store the metadata in git (not the screenshots). You can now modify it locally and push the changes back to App Store Connect.
|
50
50
|
|
51
51
|
Run `fastlane deliver` to upload the app metadata from your local machine
|
52
52
|
|
@@ -70,13 +70,13 @@ If you use [_fastlane_](https://fastlane.tools) you don't have to manually speci
|
|
70
70
|
|
71
71
|
This is just a small sub-set of what you can do with _deliver_, check out the full documentation in [#more-options](#more-options)
|
72
72
|
|
73
|
-
Download existing screenshots from
|
73
|
+
Download existing screenshots from App Store Connect
|
74
74
|
|
75
75
|
```no-highlight
|
76
76
|
fastlane deliver download_screenshots
|
77
77
|
```
|
78
78
|
|
79
|
-
Download existing metadata from
|
79
|
+
Download existing metadata from App Store Connect
|
80
80
|
|
81
81
|
```no-highlight
|
82
82
|
fastlane deliver download_metadata
|
@@ -148,7 +148,7 @@ pkg("MacApp.pkg")
|
|
148
148
|
|
149
149
|
##### app_version
|
150
150
|
|
151
|
-
Optional, as it is usually automatically detected. Specify the version that should be created / edited on
|
151
|
+
Optional, as it is usually automatically detected. Specify the version that should be created / edited on App Store Connect:
|
152
152
|
|
153
153
|
```ruby-skip-tests
|
154
154
|
app_version("2.0")
|
@@ -156,7 +156,7 @@ app_version("2.0")
|
|
156
156
|
|
157
157
|
##### skip_app_version_update
|
158
158
|
|
159
|
-
In the case if _deliver_ uploads your application to
|
159
|
+
In the case if _deliver_ uploads your application to App Store Connect it will automatically update "Prepare for submission" app version (which could be found on App Store Connect->My Apps->App Store page)
|
160
160
|
|
161
161
|
The option allows uploading your app without updating "Prepare for submission" version.
|
162
162
|
|
@@ -223,7 +223,7 @@ trade_representative_contact_information(
|
|
223
223
|
|
224
224
|
You can also provide these values by creating files in a `metadata/trade_representative_contact_information/` directory. The file names must match the pattern `<key>.txt` (e.g. `first_name.txt`, `address_line1.txt` etc.). The contents of each file will be used as the value for the matching key. Values provided in the `Deliverfile` or `Fastfile` will be take priority over values from these files.
|
225
225
|
|
226
|
-
`is_displayed_on_app_store` is the option on
|
226
|
+
`is_displayed_on_app_store` is the option on App Store Connect described as: `Display Trade Representative Contact Information on the Korean App Store`
|
227
227
|
|
228
228
|
##### app_review_information
|
229
229
|
Contact information for the app review team. Available options: `first_name`, `last_name`, `phone_number`, `email_address`, `demo_user`, `demo_password`, `notes`.
|
@@ -264,7 +264,7 @@ automatic_release(false)
|
|
264
264
|
|
265
265
|
##### phased_release
|
266
266
|
|
267
|
-
Enable or disable the phased releases feature of
|
267
|
+
Enable or disable the phased releases feature of App Store Connect. If set to `true`, the update will be released over a 7 day period. Default behavior is to leave whatever you defined on App Store Connect.
|
268
268
|
|
269
269
|
```ruby-skip-tests
|
270
270
|
phased_release(true)
|
@@ -405,7 +405,7 @@ Before actually uploading anything to iTunes, _deliver_ will generate a HTML sum
|
|
405
405
|
|
406
406
|
_deliver_ uses the following techniques under the hood:
|
407
407
|
|
408
|
-
- The iTMSTransporter tool is used to upload the binary to
|
408
|
+
- The iTMSTransporter tool is used to upload the binary to App Store Connect. iTMSTransporter is a command line tool provided by Apple.
|
409
409
|
- For all metadata related actions _deliver_ uses [_spaceship_](https://github.com/fastlane/fastlane/tree/master/spaceship)
|
410
410
|
|
411
411
|
# Tips
|
@@ -706,7 +706,7 @@ DELIVER_ITMSTRANSPORTER_ADDITIONAL_UPLOAD_PARAMETERS="-t DAV -Dhttp.proxyHost=my
|
|
706
706
|
```
|
707
707
|
|
708
708
|
## Limit
|
709
|
-
|
709
|
+
App Store Connect has a limit of 150 binary uploads per day.
|
710
710
|
|
711
711
|
## Editing the `Deliverfile`
|
712
712
|
Change syntax highlighting to *Ruby*.
|
@@ -11,7 +11,7 @@ Pilot makes it easier to manage your app on Apple’s TestFlight. You can:
|
|
11
11
|
- Retrieve information about testers & devices
|
12
12
|
- Import/export all available testers
|
13
13
|
|
14
|
-
_pilot_ uses [spaceship.airforce](https://spaceship.airforce) to interact with
|
14
|
+
_pilot_ uses [spaceship.airforce](https://spaceship.airforce) to interact with App Store Connect 🚀
|
15
15
|
|
16
16
|
-------
|
17
17
|
|
@@ -119,7 +119,7 @@ The output will look like this:
|
|
119
119
|
|
120
120
|
### Add a new tester
|
121
121
|
|
122
|
-
To add a new tester to both your
|
122
|
+
To add a new tester to both your App Store Connect account and to your app (if given), use the `pilot add` command. This will create a new tester (if necessary) or add an existing tester to the app to test.
|
123
123
|
|
124
124
|
```no-highlight
|
125
125
|
fastlane pilot add email@invite.com
|
@@ -10,7 +10,7 @@ module Fastlane
|
|
10
10
|
require 'spaceship'
|
11
11
|
require 'net/http'
|
12
12
|
|
13
|
-
UI.message("Login to
|
13
|
+
UI.message("Login to App Store Connect (#{params[:username]})")
|
14
14
|
Spaceship::Tunes.login(params[:username])
|
15
15
|
Spaceship::Tunes.select_team
|
16
16
|
UI.message("Login successful")
|
@@ -84,7 +84,7 @@ module Fastlane
|
|
84
84
|
end
|
85
85
|
|
86
86
|
if (Actions.lane_context[SharedValues::DSYM_PATHS] || []).count == 0
|
87
|
-
UI.error("No dSYM files found on
|
87
|
+
UI.error("No dSYM files found on App Store Connect - this usually happens when no recompiling has happened yet")
|
88
88
|
end
|
89
89
|
end
|
90
90
|
# rubocop:enable Metrics/PerceivedComplexity
|
@@ -120,7 +120,7 @@ module Fastlane
|
|
120
120
|
#####################################################
|
121
121
|
|
122
122
|
def self.description
|
123
|
-
"Download dSYM files from Apple
|
123
|
+
"Download dSYM files from Apple App Store Connect for Bitcode apps"
|
124
124
|
end
|
125
125
|
|
126
126
|
def self.details
|
@@ -135,7 +135,7 @@ module Fastlane
|
|
135
135
|
SAMPLE
|
136
136
|
|
137
137
|
[
|
138
|
-
"This action downloads dSYM files from Apple
|
138
|
+
"This action downloads dSYM files from Apple App Store Connect after the ipa gets re-compiled by Apple. Useful if you have Bitcode enabled.".markdown_preserve_newlines,
|
139
139
|
sample
|
140
140
|
].join("\n")
|
141
141
|
end
|
@@ -148,7 +148,7 @@ module Fastlane
|
|
148
148
|
FastlaneCore::ConfigItem.new(key: :username,
|
149
149
|
short_option: "-u",
|
150
150
|
env_name: "DOWNLOAD_DSYMS_USERNAME",
|
151
|
-
description: "Your Apple ID Username for
|
151
|
+
description: "Your Apple ID Username for App Store Connect",
|
152
152
|
default_value: user,
|
153
153
|
default_value_dynamic: true),
|
154
154
|
FastlaneCore::ConfigItem.new(key: :app_identifier,
|
@@ -162,7 +162,7 @@ module Fastlane
|
|
162
162
|
FastlaneCore::ConfigItem.new(key: :team_id,
|
163
163
|
short_option: "-k",
|
164
164
|
env_name: "DOWNLOAD_DSYMS_TEAM_ID",
|
165
|
-
description: "The ID of your
|
165
|
+
description: "The ID of your App Store Connect team if you're in multiple teams",
|
166
166
|
optional: true,
|
167
167
|
is_string: false, # as we also allow integers, which we convert to strings anyway
|
168
168
|
code_gen_sensitive: true,
|
@@ -174,7 +174,7 @@ module Fastlane
|
|
174
174
|
FastlaneCore::ConfigItem.new(key: :team_name,
|
175
175
|
short_option: "-e",
|
176
176
|
env_name: "DOWNLOAD_DSYMS_TEAM_NAME",
|
177
|
-
description: "The name of your
|
177
|
+
description: "The name of your App Store Connect team if you're in multiple teams",
|
178
178
|
optional: true,
|
179
179
|
code_gen_sensitive: true,
|
180
180
|
default_value: CredentialsManager::AppfileConfig.try_fetch_value(:itc_team_name),
|
@@ -74,7 +74,7 @@ module Fastlane
|
|
74
74
|
FastlaneCore::ConfigItem.new(key: :team_id,
|
75
75
|
short_option: "-k",
|
76
76
|
env_name: "LATEST_TESTFLIGHT_BUILD_NUMBER_TEAM_ID",
|
77
|
-
description: "The ID of your
|
77
|
+
description: "The ID of your App Store Connect team if you're in multiple teams",
|
78
78
|
optional: true,
|
79
79
|
is_string: false, # as we also allow integers, which we convert to strings anyway
|
80
80
|
code_gen_sensitive: true,
|
@@ -86,7 +86,7 @@ module Fastlane
|
|
86
86
|
FastlaneCore::ConfigItem.new(key: :team_name,
|
87
87
|
short_option: "-e",
|
88
88
|
env_name: "LATEST_TESTFLIGHT_BUILD_NUMBER_TEAM_NAME",
|
89
|
-
description: "The name of your
|
89
|
+
description: "The name of your App Store Connect team if you're in multiple teams",
|
90
90
|
optional: true,
|
91
91
|
code_gen_sensitive: true,
|
92
92
|
default_value: CredentialsManager::AppfileConfig.try_fetch_value(:itc_team_name),
|
@@ -4,7 +4,7 @@ module Fastlane
|
|
4
4
|
def self.run(params)
|
5
5
|
require 'spaceship'
|
6
6
|
|
7
|
-
UI.message("Login to
|
7
|
+
UI.message("Login to App Store Connect (#{params[:username]})")
|
8
8
|
Spaceship::Tunes.login(params[:username])
|
9
9
|
Spaceship::Tunes.select_team
|
10
10
|
UI.message("Login successful")
|
@@ -63,7 +63,7 @@ module Fastlane
|
|
63
63
|
end
|
64
64
|
|
65
65
|
UI.message("Found and updated changelog for the following languages: #{v.release_notes.languages.join(', ')}")
|
66
|
-
UI.message("Uploading changes to
|
66
|
+
UI.message("Uploading changes to App Store Connect...")
|
67
67
|
v.save!
|
68
68
|
|
69
69
|
UI.success("👼 Successfully pushed the new changelog to #{v.url}")
|
@@ -78,7 +78,7 @@ module Fastlane
|
|
78
78
|
#####################################################
|
79
79
|
|
80
80
|
def self.description
|
81
|
-
"Set the changelog for all languages on
|
81
|
+
"Set the changelog for all languages on App Store Connect"
|
82
82
|
end
|
83
83
|
|
84
84
|
def self.details
|
@@ -113,12 +113,12 @@ module Fastlane
|
|
113
113
|
optional: true),
|
114
114
|
FastlaneCore::ConfigItem.new(key: :changelog,
|
115
115
|
env_name: "FL_SET_CHANGELOG_CHANGELOG",
|
116
|
-
description: "Changelog text that should be uploaded to
|
116
|
+
description: "Changelog text that should be uploaded to App Store Connect",
|
117
117
|
optional: true),
|
118
118
|
FastlaneCore::ConfigItem.new(key: :team_id,
|
119
119
|
short_option: "-k",
|
120
120
|
env_name: "FL_SET_CHANGELOG_TEAM_ID",
|
121
|
-
description: "The ID of your
|
121
|
+
description: "The ID of your App Store Connect team if you're in multiple teams",
|
122
122
|
optional: true,
|
123
123
|
is_string: false, # as we also allow integers, which we convert to strings anyway
|
124
124
|
code_gen_sensitive: true,
|
@@ -130,7 +130,7 @@ module Fastlane
|
|
130
130
|
FastlaneCore::ConfigItem.new(key: :team_name,
|
131
131
|
short_option: "-e",
|
132
132
|
env_name: "FL_SET_CHANGELOG_TEAM_NAME",
|
133
|
-
description: "The name of your
|
133
|
+
description: "The name of your App Store Connect team if you're in multiple teams",
|
134
134
|
optional: true,
|
135
135
|
code_gen_sensitive: true,
|
136
136
|
default_value: CredentialsManager::AppfileConfig.try_fetch_value(:itc_team_name),
|
@@ -21,7 +21,7 @@ module Fastlane
|
|
21
21
|
#####################################################
|
22
22
|
|
23
23
|
def self.description
|
24
|
-
"Upload
|
24
|
+
"Upload new binary to App Store Connect for TestFlight beta testing (via _pilot_)"
|
25
25
|
end
|
26
26
|
|
27
27
|
def self.details
|
@@ -30,8 +30,8 @@ module Fastlane
|
|
30
30
|
|
31
31
|
if FastlaneCore::FastlaneFolder.swift?
|
32
32
|
disable_runner_upgrades = options.disable_runner_upgrades || false
|
33
|
-
|
34
|
-
Fastlane::SwiftLaneManager.cruise_lane(lane, lane_parameters, dot_env, disable_runner_upgrades: disable_runner_upgrades)
|
33
|
+
swift_server_port = options.swift_server_port
|
34
|
+
Fastlane::SwiftLaneManager.cruise_lane(lane, lane_parameters, dot_env, disable_runner_upgrades: disable_runner_upgrades, swift_server_port: swift_server_port)
|
35
35
|
else
|
36
36
|
Fastlane::LaneManager.cruise_lane(platform, lane, lane_parameters, dot_env)
|
37
37
|
end
|
@@ -101,6 +101,7 @@ module Fastlane
|
|
101
101
|
c.description = 'Run a specific lane. Pass the lane name and optionally the platform first.'
|
102
102
|
c.option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')
|
103
103
|
c.option('--disable_runner_upgrades', 'Prevents fastlane from attempting to update FastlaneRunner swift project')
|
104
|
+
c.option('--swift_server_port INT', 'Set specific port to communicate between fastlane and FastlaneRunner')
|
104
105
|
|
105
106
|
c.action do |args, options|
|
106
107
|
if ensure_fastfile
|
@@ -328,15 +328,17 @@ module Fastlane
|
|
328
328
|
end
|
329
329
|
|
330
330
|
def action_launched(action_name)
|
331
|
-
|
332
|
-
|
333
|
-
|
331
|
+
action_launch_context = FastlaneCore::ActionLaunchContext.context_for_action_name(action_name,
|
332
|
+
configuration_language: "ruby",
|
333
|
+
args: ARGV)
|
334
|
+
FastlaneCore.session.action_launched(launch_context: action_launch_context)
|
334
335
|
end
|
335
336
|
|
336
337
|
def action_completed(action_name, status: nil)
|
337
|
-
|
338
|
-
|
339
|
-
|
338
|
+
completion_context = FastlaneCore::ActionCompletionContext.context_for_action_name(action_name,
|
339
|
+
args: ARGV,
|
340
|
+
status: status)
|
341
|
+
FastlaneCore.session.action_completed(completion_context: completion_context)
|
340
342
|
end
|
341
343
|
end
|
342
344
|
end
|