fastlane 2.82.0.beta.20180218010003 → 2.82.0.beta.20180219010003
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/credentials_manager/README.md +2 -2
- data/fastlane/lib/assets/AppfileTemplate +2 -2
- data/fastlane/lib/assets/AppfileTemplateAndroid +2 -2
- data/fastlane/lib/fastlane/actions/README.md +1 -1
- data/fastlane/lib/fastlane/actions/device_grid/README.md +6 -6
- data/fastlane/lib/fastlane/actions/docs/build_ios_app.md +9 -9
- data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +7 -7
- data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +6 -6
- data/fastlane/lib/fastlane/actions/docs/check_app_store_metadata.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/create_app_online.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/frame_screenshots.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/get_certificates.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/get_provisioning_profile.md +5 -5
- data/fastlane/lib/fastlane/actions/docs/get_push_certificate.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/run_tests.md +8 -8
- data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +7 -7
- data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md +21 -21
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +2 -2
- data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +4 -1
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane_core/README.md +8 -8
- data/gym/lib/assets/GymfileTemplate +3 -3
- data/match/lib/assets/MatchfileTemplate +4 -4
- data/match/lib/assets/READMETemplate.md +1 -1
- data/produce/lib/produce/developer_center.rb +2 -2
- data/scan/lib/assets/ScanfileTemplate +3 -3
- data/screengrab/lib/assets/ScreengrabfileTemplate +6 -6
- data/snapshot/lib/assets/SnapfileTemplate +3 -3
- data/spaceship/README.md +17 -17
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55fe66c53aac5a21bdae43a7463807c4da2e2022
|
4
|
+
data.tar.gz: f927f52c32ca4e1c6857dfef6bef876a4d8a12d6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c4e63431359cf83923e713db6d0f69c102077681bfedc3353b8a27d01d00242481a6d0360311c6e51734e3fe18b59217fbfb23c34bd187949ba8835d186744aa
|
7
|
+
data.tar.gz: 6c15fa890aab9755207d8da401c7587f56a81a22ce76239f767ddeaa32658748740678db9a42463fb23721f302b84dd6d9d6987707717745bacfbabbddc7abf6
|
data/README.md
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
[![Gem](https://img.shields.io/gem/v/fastlane.svg?style=flat)](https://rubygems.org/gems/fastlane)
|
8
8
|
[![Build Status](https://img.shields.io/circleci/project/fastlane/fastlane/master.svg?style=flat)](https://circleci.com/gh/fastlane/fastlane)
|
9
9
|
|
10
|
-
|
10
|
+
_fastlane_ is a tool for iOS and Android developers to automate tedious tasks like generating screenshots, dealing with provisioning profiles, and releasing your application.
|
11
11
|
|
12
12
|
<hr />
|
13
13
|
<h2 align="center">
|
@@ -154,7 +154,7 @@ Check out [CONTRIBUTING.md](CONTRIBUTING.md) for more information on how to help
|
|
154
154
|
|
155
155
|
## Code of Conduct
|
156
156
|
|
157
|
-
Help us keep
|
157
|
+
Help us keep _fastlane_ open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/fastlane/blob/master/CODE_OF_CONDUCT.md).
|
158
158
|
|
159
159
|
## License
|
160
160
|
|
@@ -44,7 +44,7 @@ If you don't want to have your password stored in the Keychain set the `FASTLANE
|
|
44
44
|
|
45
45
|
## Implementing a custom solution
|
46
46
|
|
47
|
-
All
|
47
|
+
All _fastlane_ tools are Ruby-based, and you can take a look at the source code to easily implement your own authentication solution.
|
48
48
|
|
49
49
|
```ruby
|
50
50
|
require 'credentials_manager'
|
@@ -55,7 +55,7 @@ puts data.password
|
|
55
55
|
```
|
56
56
|
|
57
57
|
# Code of Conduct
|
58
|
-
Help us keep
|
58
|
+
Help us keep _fastlane_ open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/fastlane/blob/master/CODE_OF_CONDUCT.md).
|
59
59
|
|
60
60
|
# License
|
61
61
|
|
@@ -1,5 +1,5 @@
|
|
1
|
-
# app_identifier
|
2
|
-
# apple_id
|
1
|
+
# app_identifier("[[APP_IDENTIFIER]]") # The bundle identifier of your app
|
2
|
+
# apple_id("[[APPLE_ID]]") # Your Apple email address
|
3
3
|
|
4
4
|
[[TEAMS]]
|
5
5
|
# For more information about the Appfile, see:
|
@@ -1,2 +1,2 @@
|
|
1
|
-
json_key_file
|
2
|
-
package_name
|
1
|
+
json_key_file("[[JSON_KEY_FILE]]") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one
|
2
|
+
package_name("[[PACKAGE_NAME]]") # e.g. com.krausefx.app
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# fastlane danger Device Grid
|
2
2
|
|
3
|
-
Ever dream of testing your app straight from a pull request? Well now you can! With [
|
3
|
+
Ever dream of testing your app straight from a pull request? Well now you can! With [_fastlane_](https://fastlane.tools), [danger](https://github.com/danger/danger) and [appetize.io](https://appetize.io/), you can stream your latest changes right from the browser.
|
4
4
|
|
5
5
|
No more manually installing and testing your app just to review a PR.
|
6
6
|
|
@@ -10,7 +10,7 @@ No more manually installing and testing your app just to review a PR.
|
|
10
10
|
|
11
11
|
## Requirements
|
12
12
|
|
13
|
-
- [
|
13
|
+
- [_fastlane_](https://fastlane.tools)
|
14
14
|
- [danger](https://github.com/danger/danger)
|
15
15
|
- [appetize.io](https://appetize.io/) account
|
16
16
|
- A Continuous Integration system
|
@@ -33,9 +33,9 @@ and run
|
|
33
33
|
bundle install
|
34
34
|
```
|
35
35
|
|
36
|
-
### Setup
|
36
|
+
### Setup _fastlane_
|
37
37
|
|
38
|
-
Skip this step if you're already using
|
38
|
+
Skip this step if you're already using _fastlane_ (which you should)
|
39
39
|
|
40
40
|
```
|
41
41
|
fastlane init
|
@@ -54,7 +54,7 @@ Follow the `danger` guide to authenticate with GitHub
|
|
54
54
|
Edit `Dangerfile` and replace the content with
|
55
55
|
|
56
56
|
```ruby
|
57
|
-
puts
|
57
|
+
puts("Running fastlane to generate and upload an ipa file...")
|
58
58
|
|
59
59
|
options = {
|
60
60
|
xcodebuild: {
|
@@ -152,6 +152,6 @@ UI.message("Generated URL: #{url}")
|
|
152
152
|
#### Disclaimer
|
153
153
|
|
154
154
|
All product names, logos, and brands are property of their respective owners.
|
155
|
-
The used device frames were provided by Facebook via the [Facebook Design Resources](https://facebook.github.io/design/devices.html).
|
155
|
+
The used device frames were provided by Facebook via the [Facebook Design Resources](https://facebook.github.io/design/devices.html). _fastlane_ is in no way affiliated with Facebook.
|
156
156
|
|
157
157
|
> While Facebook has redrawn and shares these assets for the benefit of the design community, Facebook does not own any of the underlying product or user interface designs. By accessing these assets, you agree to obtain all necessary permissions from the underlying rights holders and/or adhere to any applicable brand use guidelines before using them. Facebook disclaims all express or implied warranties with respect to these assets, including non-infringement of intellectual property rights.
|
@@ -48,7 +48,7 @@ _gym_ uses the latest APIs to build and sign your application which results in m
|
|
48
48
|
🏁 | Beautiful inline build output
|
49
49
|
📖 | Helps you resolve common build errors like code signing issues
|
50
50
|
🚠 | Sensible defaults: Automatically detect the project, its schemes and more
|
51
|
-
🔗 | Works perfectly with [
|
51
|
+
🔗 | Works perfectly with [_fastlane_](https://fastlane.tools) and other tools
|
52
52
|
📦 | Automatically generates an `ipa` and a compressed `dSYM` file
|
53
53
|
🚅 | Don't remember any complicated build commands, just _gym_
|
54
54
|
🔧 | Easy and dynamic configuration using parameters and environment variables
|
@@ -113,14 +113,14 @@ Since you might want to manually trigger a new build but don't want to specify a
|
|
113
113
|
Run `fastlane gym init` to create a new configuration file. Example:
|
114
114
|
|
115
115
|
```ruby-skip-tests
|
116
|
-
scheme
|
116
|
+
scheme("Example")
|
117
117
|
|
118
|
-
sdk
|
118
|
+
sdk("iphoneos9.0")
|
119
119
|
|
120
|
-
clean
|
120
|
+
clean(true)
|
121
121
|
|
122
|
-
output_directory
|
123
|
-
output_name
|
122
|
+
output_directory("./build") # store the ipa in this folder
|
123
|
+
output_name("MyApp") # the name of the ipa file
|
124
124
|
```
|
125
125
|
|
126
126
|
## Export options
|
@@ -128,7 +128,7 @@ output_name "MyApp" # the name of the ipa file
|
|
128
128
|
Since Xcode 7, _gym_ is using new Xcode API which allows us to specify export options using `plist` file. By default _gym_ creates this file for you and you are able to modify some parameters by using `export_method`, `export_team_id`, `include_symbols` or `include_bitcode`. If you want to have more options, like creating manifest file for app thinning, you can provide your own `plist` file:
|
129
129
|
|
130
130
|
```ruby-skip-tests
|
131
|
-
export_options
|
131
|
+
export_options("./ExportOptions.plist")
|
132
132
|
```
|
133
133
|
|
134
134
|
or you can provide hash of values directly in the `Gymfile`:
|
@@ -155,7 +155,7 @@ export_options(
|
|
155
155
|
)
|
156
156
|
```
|
157
157
|
|
158
|
-
**Note**: If you use [
|
158
|
+
**Note**: If you use [_fastlane_](https://fastlane.tools) with [_match_](https://fastlane.tools/match) you don't need to provide those values manually.
|
159
159
|
|
160
160
|
For the list of available options run `xcodebuild -help`.
|
161
161
|
|
@@ -166,7 +166,7 @@ For the list of available options run `xcodebuild -help`.
|
|
166
166
|
|
167
167
|
## Automating the whole process
|
168
168
|
|
169
|
-
_gym_ works great together with [
|
169
|
+
_gym_ works great together with [_fastlane_](https://fastlane.tools), which connects all deployment tools into one streamlined workflow.
|
170
170
|
|
171
171
|
Using _fastlane_ you can define a configuration like
|
172
172
|
|
@@ -26,7 +26,7 @@ sudo gem install fastlane
|
|
26
26
|
|
27
27
|
##### Gradle dependency
|
28
28
|
```java
|
29
|
-
androidTestCompile
|
29
|
+
androidTestCompile('tools.fastlane:screengrab:x.x.x')
|
30
30
|
```
|
31
31
|
|
32
32
|
The latest version is [ ![Download](https://api.bintray.com/packages/fastlane/fastlane/screengrab/images/download.svg) ](https://bintray.com/fastlane/fastlane/screengrab/_latestVersion)
|
@@ -83,16 +83,16 @@ The `Screengrabfile` is written in Ruby, so you may find it helpful to use an ed
|
|
83
83
|
```ruby-skip-tests
|
84
84
|
# remove the leading '#' to uncomment lines
|
85
85
|
|
86
|
-
# app_package_name
|
87
|
-
# use_tests_in_packages
|
86
|
+
# app_package_name('your.app.package')
|
87
|
+
# use_tests_in_packages(['your.screenshot.tests.package'])
|
88
88
|
|
89
|
-
# app_apk_path
|
90
|
-
# tests_apk_path
|
89
|
+
# app_apk_path('path/to/your/app.apk')
|
90
|
+
# tests_apk_path('path/to/your/tests.apk')
|
91
91
|
|
92
|
-
locales
|
92
|
+
locales(['en-US', 'fr-FR', 'it-IT'])
|
93
93
|
|
94
94
|
# clear all previously generated screenshots in your local output directory before creating new ones
|
95
|
-
clear_previous_screenshots
|
95
|
+
clear_previous_screenshots(true)
|
96
96
|
```
|
97
97
|
|
98
98
|
For more information about all available options run
|
@@ -120,7 +120,7 @@ To quick start your UI tests, you can use the UI Test recorder. You only have to
|
|
120
120
|
fastlane snapshot
|
121
121
|
```
|
122
122
|
|
123
|
-
Your screenshots will be stored in the `./screenshots/` folder by default (or `./fastlane/screenshots` if you're using [
|
123
|
+
Your screenshots will be stored in the `./screenshots/` folder by default (or `./fastlane/screenshots` if you're using [_fastlane_](https://fastlane.tools))
|
124
124
|
|
125
125
|
New with Xcode 9, *snapshot* can run multiple simulators concurrently. This is the default behavior in order to take your screenshots as quickly as possible. This can be disabled to run each device, one at a time, by setting the `:concurrent_simulators` option to `false`.
|
126
126
|
|
@@ -183,7 +183,7 @@ The `Snapfile` can contain all the options that are also available on `fastlane
|
|
183
183
|
|
184
184
|
|
185
185
|
```ruby-skip-tests
|
186
|
-
scheme
|
186
|
+
scheme("UITests")
|
187
187
|
|
188
188
|
devices([
|
189
189
|
"iPhone 6",
|
@@ -202,11 +202,11 @@ languages([
|
|
202
202
|
launch_arguments(["-username Felix"])
|
203
203
|
|
204
204
|
# The directory in which the screenshots should be stored
|
205
|
-
output_directory
|
205
|
+
output_directory('./screenshots')
|
206
206
|
|
207
|
-
clear_previous_screenshots
|
207
|
+
clear_previous_screenshots(true)
|
208
208
|
|
209
|
-
add_photos
|
209
|
+
add_photos(["MyTestApp/Assets/demo.jpg"])
|
210
210
|
```
|
211
211
|
|
212
212
|
### Completely reset all simulators
|
@@ -301,7 +301,7 @@ Radar [23062925](https://openradar.appspot.com/radar?id=5056366381105152) has be
|
|
301
301
|
|
302
302
|
## Frame the screenshots
|
303
303
|
|
304
|
-
If you want to add frames around the screenshots and even put a title on top, check out [
|
304
|
+
If you want to add frames around the screenshots and even put a title on top, check out [_frameit_](https://docs.fastlane.tools/actions/frameit/).
|
305
305
|
|
306
306
|
## Available language codes
|
307
307
|
```ruby
|
@@ -97,7 +97,7 @@ end
|
|
97
97
|
|
98
98
|
# How does it work?
|
99
99
|
|
100
|
-
_precheck_ will access `iTunes Connect` to download your app's metadata. It uses [
|
100
|
+
_precheck_ will access `iTunes 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.
|
@@ -224,7 +224,7 @@ apple_id ENV['PRODUCE_APPLE_ID']
|
|
224
224
|
|
225
225
|
This will tell _deliver_, which `App ID` to use, since the app is not yet available in the App Store.
|
226
226
|
|
227
|
-
You'll still have to fill out the remaining information (like screenshots, app description and pricing). You can use [
|
227
|
+
You'll still have to fill out the remaining information (like screenshots, app description and pricing). You can use [_deliver_](https://docs.fastlane.tools/actions/deliver/) to upload your app metadata using a CLI
|
228
228
|
|
229
229
|
## How is my password stored?
|
230
230
|
|
@@ -150,7 +150,7 @@ The `keyword.strings` and `title.strings` are standard `.strings` file you alrea
|
|
150
150
|
|
151
151
|
#### Uploading screenshots to iTC
|
152
152
|
|
153
|
-
Use [
|
153
|
+
Use [_deliver_](https://docs.fastlane.tools/actions/deliver/) to upload all screenshots to iTunes Connect completely automatically 🚀
|
154
154
|
|
155
155
|
### Mac
|
156
156
|
|
@@ -20,7 +20,7 @@ In the gif we used `cert && sigh`, which will first create an iOS code signing c
|
|
20
20
|
|
21
21
|
# Usage
|
22
22
|
|
23
|
-
**Note**: It is recommended to use [
|
23
|
+
**Note**: It is recommended to use [_match_](/actions/match) according to the [codesigning.guide](https://codesigning.guide) for generating and maintaining your certificates. Use _cert_ directly only if you want full control over what's going on and know more about codesigning.
|
24
24
|
|
25
25
|
```no-highlight
|
26
26
|
fastlane cert
|
@@ -28,7 +28,7 @@ _sigh_ can create, renew, download and repair provisioning profiles (with one co
|
|
28
28
|
- Support for **multiple Teams**
|
29
29
|
- Support for **Enterprise Profiles**
|
30
30
|
|
31
|
-
To automate iOS Push profiles you can use [
|
31
|
+
To automate iOS Push profiles you can use [_pem_](https://docs.fastlane.tools/actions/pem/).
|
32
32
|
|
33
33
|
|
34
34
|
### Why not let Xcode do the work?
|
@@ -44,7 +44,7 @@ See _sigh_ in action:
|
|
44
44
|
|
45
45
|
# Usage
|
46
46
|
|
47
|
-
**Note**: It is recommended to use [
|
47
|
+
**Note**: It is recommended to use [_match_](https://docs.fastlane.tools/actions/match/) according to the [codesigning.guide](https://codesigning.guide) for generating and maintaining your provisioning profiles. Use _sigh_ directly only if you want full control over what's going on and know more about codesigning.
|
48
48
|
|
49
49
|
```no-highlight
|
50
50
|
fastlane sigh
|
@@ -160,11 +160,11 @@ Or delete all `iOS Team Provisioning Profile` by using a regular expression
|
|
160
160
|
|
161
161
|
Run `fastlane action sigh` to get a list of all available environment variables.
|
162
162
|
|
163
|
-
If you're using [
|
163
|
+
If you're using [_cert_](https://docs.fastlane.tools/actions/cert/) in combination with [_fastlane_](https://fastlane.tools) the signing certificate will automatically be selected for you. (make sure to run _cert_ before _sigh_)
|
164
164
|
|
165
165
|
# How does it work?
|
166
166
|
|
167
|
-
_sigh_ will access the `iOS Dev Center` to download, renew or generate the `.mobileprovision` file. It uses [
|
167
|
+
_sigh_ will access the `iOS Dev Center` to download, renew or generate the `.mobileprovision` file. It uses [_spaceship_](https://spaceship.airforce) to communicate with Apple's web services.
|
168
168
|
|
169
169
|
## How is my password stored?
|
170
170
|
_sigh_ uses the [CredentialsManager](https://github.com/fastlane/fastlane/tree/master/credentials_manager) from _fastlane_.
|
@@ -180,7 +180,7 @@ It will show you the `mobileprovision` files like this:
|
|
180
180
|
|
181
181
|
## App Identifier couldn't be found
|
182
182
|
|
183
|
-
If you also want to create a new App Identifier on the Apple Developer Portal, check out [
|
183
|
+
If you also want to create a new App Identifier on the Apple Developer Portal, check out [_produce_](https://docs.fastlane.tools/actions/produce/), which does exactly that.
|
184
184
|
|
185
185
|
## What happens to my Xcode managed profiles?
|
186
186
|
|
@@ -10,7 +10,7 @@ _pem_ does all that for you, just by simply running _pem_.
|
|
10
10
|
|
11
11
|
_pem_ creates new .pem, .cer, and .p12 files to be uploaded to your push server if a valid push notification profile is needed. _pem_ does not cover uploading the file to your server.
|
12
12
|
|
13
|
-
To automate iOS Provisioning profiles you can use [
|
13
|
+
To automate iOS Provisioning profiles you can use [_match_](https://docs.fastlane.tools/actions/match/).
|
14
14
|
|
15
15
|
-------
|
16
16
|
|
@@ -104,7 +104,7 @@ Run `fastlane action pem` to get a list of available environment variables.
|
|
104
104
|
|
105
105
|
# How does it work?
|
106
106
|
|
107
|
-
_pem_ uses [
|
107
|
+
_pem_ uses [_spaceship_](https://spaceship.airforce) to communicate with the Apple Developer Portal to request a new push certificate for you.
|
108
108
|
|
109
109
|
## How is my password stored?
|
110
110
|
``_pem_`` uses the [password manager](https://github.com/fastlane/fastlane/tree/master/credentials_manager) from _fastlane_. Take a look the [CredentialsManager README](https://github.com/fastlane/fastlane/tree/master/credentials_manager) for more information.
|
@@ -63,7 +63,7 @@ fastlane scan
|
|
63
63
|
|
64
64
|
### Why _scan_?
|
65
65
|
|
66
|
-
_scan_ uses the latest APIs and tools to make running tests plain simple and offer a great integration into your existing workflow, like [
|
66
|
+
_scan_ uses the latest APIs and tools to make running tests plain simple and offer a great integration into your existing workflow, like [_fastlane_](https://fastlane.tools) or Jenkins.
|
67
67
|
|
68
68
|
| | scan Features |
|
69
69
|
|----------|-----------------|
|
@@ -71,7 +71,7 @@ _scan_ uses the latest APIs and tools to make running tests plain simple and off
|
|
71
71
|
🚠 | Sensible defaults: Automatically detect the project, schemes and more
|
72
72
|
📊 | Support for HTML, JSON and JUnit reports
|
73
73
|
🔎 | Xcode duplicated your simulators again? _scan_ will handle this for you
|
74
|
-
🔗 | Works perfectly with [
|
74
|
+
🔗 | Works perfectly with [_fastlane_](https://fastlane.tools) and other tools
|
75
75
|
🚅 | Don't remember any complicated build commands, just _scan_
|
76
76
|
🔧 | Easy and dynamic configuration using parameters and environment variables
|
77
77
|
📢 | Beautiful slack notifications of the test results
|
@@ -100,7 +100,7 @@ If you need to use a different xcode install, use `xcode-select` or define `DEVE
|
|
100
100
|
|
101
101
|
DEVELOPER_DIR="/Applications/Xcode6.2.app" scan
|
102
102
|
|
103
|
-
To run _scan_ on multiple devices via [
|
103
|
+
To run _scan_ on multiple devices via [_fastlane_](https://fastlane.tools), add this to your `Fastfile`:
|
104
104
|
|
105
105
|
```ruby
|
106
106
|
scan(
|
@@ -124,17 +124,17 @@ Since you might want to manually trigger the tests but don't want to specify all
|
|
124
124
|
Run `fastlane scan init` to create a new configuration file. Example:
|
125
125
|
|
126
126
|
```ruby-skip-tests
|
127
|
-
scheme
|
128
|
-
devices
|
127
|
+
scheme("Example")
|
128
|
+
devices(["iPhone 6s", "iPad Air"])
|
129
129
|
|
130
|
-
clean
|
130
|
+
clean(true)
|
131
131
|
|
132
|
-
output_types
|
132
|
+
output_types("html")
|
133
133
|
```
|
134
134
|
|
135
135
|
# Automating the whole process
|
136
136
|
|
137
|
-
_scan_ works great together with [
|
137
|
+
_scan_ works great together with [_fastlane_](https://fastlane.tools), which connects all deployment tools into one streamlined workflow.
|
138
138
|
|
139
139
|
Using _fastlane_ you can define a configuration like
|
140
140
|
|
@@ -56,7 +56,7 @@ Before starting to use _match_, make sure to read the [codesigning.guide](https:
|
|
56
56
|
💥 | Easily reset your existing profiles and certificates if your current account has expired or invalid profiles
|
57
57
|
♻️ | Automatically renew your provisioning profiles to include all your devices using the `--force` option
|
58
58
|
👥 | Support for multiple Apple accounts and multiple teams
|
59
|
-
✨ | Tightly integrated with [
|
59
|
+
✨ | Tightly integrated with [_fastlane_](https://fastlane.tools) to work seamlessly with [_gym_](https://docs.fastlane.tools/actions/gym/) and other build tools
|
60
60
|
|
61
61
|
For more information about the concept, visit [codesigning.guide](https://codesigning.guide).
|
62
62
|
|
@@ -83,10 +83,10 @@ This will create a `Matchfile` in your current directory (or in your `./fastlane
|
|
83
83
|
Example content (for more advanced setups check out the [fastlane section](#fastlane)):
|
84
84
|
|
85
85
|
```ruby-skip-tests
|
86
|
-
git_url
|
86
|
+
git_url("https://github.com/fastlane/certificates")
|
87
87
|
|
88
|
-
app_identifier
|
89
|
-
username
|
88
|
+
app_identifier("tools.fastlane.app")
|
89
|
+
username("user@fastlane.tools")
|
90
90
|
```
|
91
91
|
|
92
92
|
#### Important: Use one git branch per team
|
@@ -138,7 +138,7 @@ If you have several targets with different bundle identifiers, supply them as a
|
|
138
138
|
fastlane match appstore -a tools.fastlane.app,tools.fastlane.app.watchkitapp
|
139
139
|
```
|
140
140
|
|
141
|
-
You can make this even easier using [
|
141
|
+
You can make this even easier using [_fastlane_](https://fastlane.tools) by creating a `certificates` lane like this:
|
142
142
|
|
143
143
|
```ruby
|
144
144
|
lane :certificates do
|
@@ -196,7 +196,7 @@ Additionally, _match_ creates a nice repo `README.md` for you, making it easy to
|
|
196
196
|
|
197
197
|
#### fastlane
|
198
198
|
|
199
|
-
Add _match_ to your `Fastfile` to automatically fetch the latest code signing certificates with [
|
199
|
+
Add _match_ to your `Fastfile` to automatically fetch the latest code signing certificates with [_fastlane_](https://fastlane.tools).
|
200
200
|
|
201
201
|
```
|
202
202
|
match(type: "appstore")
|
@@ -252,7 +252,7 @@ _match_ can even use the same one Git repository for all bundle identifiers.
|
|
252
252
|
|
253
253
|
[Docs on how to set up your Xcode project](/codesigning/xcode-project/)
|
254
254
|
|
255
|
-
#### To build from the command line using [
|
255
|
+
#### To build from the command line using [_fastlane_](https://fastlane.tools)
|
256
256
|
|
257
257
|
_match_ automatically pre-fills environment variables with the UUIDs of the correct provisioning profiles, ready to be used in your Xcode project.
|
258
258
|
|
@@ -21,12 +21,12 @@ _deliver_ uploads screenshots, metadata and binaries to iTunes Connect. Use _del
|
|
21
21
|
- Upload hundreds of localized screenshots completely automatically
|
22
22
|
- Upload a new ipa/pkg file to iTunes Connect without Xcode from any Mac
|
23
23
|
- Maintain your app metadata locally and push changes back to iTunes Connect
|
24
|
-
- Easily implement a real Continuous Deployment process using [
|
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
|
27
|
-
- Automatically uses [
|
27
|
+
- Automatically uses [_precheck_](/actions/precheck) to ensure your app has the highest chances of passing app review the first time
|
28
28
|
|
29
|
-
To upload builds to TestFlight check out [
|
29
|
+
To upload builds to TestFlight check out [_pilot_](/actions/pilot).
|
30
30
|
|
31
31
|
# Quick Start
|
32
32
|
|
@@ -42,7 +42,7 @@ From now on, you can run `fastlane deliver` to deploy a new update, or just uplo
|
|
42
42
|
|
43
43
|
# Usage
|
44
44
|
|
45
|
-
Check out your local `./fastlane/metadata` and `./fastlane/screenshots` folders (if you don't use [
|
45
|
+
Check out your local `./fastlane/metadata` and `./fastlane/screenshots` folders (if you don't use [_fastlane_](https://fastlane.tools) it's `./metadata` instead)
|
46
46
|
|
47
47
|
![/img/actions/deliver_metadata.png](/img/actions/deliver_metadata.png)
|
48
48
|
|
@@ -66,7 +66,7 @@ or you can specify path to `pkg` file for macOS apps:
|
|
66
66
|
fastlane deliver --pkg "MacApp.pkg"
|
67
67
|
```
|
68
68
|
|
69
|
-
If you use [
|
69
|
+
If you use [_fastlane_](https://fastlane.tools) you don't have to manually specify the path to your `ipa`/`pkg` file.
|
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
|
|
@@ -134,15 +134,15 @@ Your Apple ID email address
|
|
134
134
|
A path to a signed ipa file, which will be uploaded. If you don't provide this value, only app metadata will be uploaded. If you want to submit the app for review make sure to either use `fastlane deliver --submit_for_review` or add `submit_for_review true` to your `Deliverfile`
|
135
135
|
|
136
136
|
```ruby-skip-tests
|
137
|
-
ipa
|
137
|
+
ipa("App.ipa")
|
138
138
|
```
|
139
139
|
|
140
|
-
if you use [
|
140
|
+
if you use [_fastlane_](https://fastlane.tools) the ipa file will automatically be detected.
|
141
141
|
|
142
142
|
##### pkg
|
143
143
|
A path to a signed pkg file, which will be uploaded. Submission logic of ipa applies to pkg files.
|
144
144
|
```ruby-skip-tests
|
145
|
-
pkg
|
145
|
+
pkg("MacApp.pkg")
|
146
146
|
```
|
147
147
|
|
148
148
|
##### app_version
|
@@ -150,7 +150,7 @@ pkg "MacApp.pkg"
|
|
150
150
|
Optional, as it is usually automatically detected. Specify the version that should be created / edited on iTunes Connect:
|
151
151
|
|
152
152
|
```ruby-skip-tests
|
153
|
-
app_version
|
153
|
+
app_version("2.0")
|
154
154
|
```
|
155
155
|
|
156
156
|
##### skip_app_version_update
|
@@ -164,7 +164,7 @@ This could be useful in the case if you are generating a lot of uploads while no
|
|
164
164
|
The default value is false.
|
165
165
|
|
166
166
|
```ruby-skip-tests
|
167
|
-
skip_app_version_update
|
167
|
+
skip_app_version_update(true)
|
168
168
|
```
|
169
169
|
|
170
170
|
##### submit_for_review
|
@@ -172,7 +172,7 @@ skip_app_version_update true
|
|
172
172
|
Add this to your `Deliverfile` to automatically submit the app for review after uploading metadata/binary. This will select the latest build.
|
173
173
|
|
174
174
|
```ruby-skip-tests
|
175
|
-
submit_for_review
|
175
|
+
submit_for_review(true)
|
176
176
|
```
|
177
177
|
|
178
178
|
##### screenshots_path
|
@@ -190,7 +190,7 @@ If you run `deliver init` this will automatically be created for you.
|
|
190
190
|
##### force
|
191
191
|
|
192
192
|
```ruby-skip-tests
|
193
|
-
force
|
193
|
+
force(true)
|
194
194
|
```
|
195
195
|
If set to `true`, no HTML report will be generated before the actual upload. You can also pass `--force` when calling _deliver_.
|
196
196
|
|
@@ -256,9 +256,9 @@ submission_information({
|
|
256
256
|
Should the app be released to all users once Apple approves it? If set to `false`, you'll have to manually release the update once it got approved.
|
257
257
|
|
258
258
|
```ruby-skip-tests
|
259
|
-
automatic_release
|
259
|
+
automatic_release(true)
|
260
260
|
# or
|
261
|
-
automatic_release
|
261
|
+
automatic_release(false)
|
262
262
|
```
|
263
263
|
|
264
264
|
##### phased_release
|
@@ -266,9 +266,9 @@ automatic_release false
|
|
266
266
|
Enable or disable the phased releases feature of iTunes Connect. If set to `true`, the update will be released over a 7 day period. Default behavior is to leave whatever you defined on iTunes Connect.
|
267
267
|
|
268
268
|
```ruby-skip-tests
|
269
|
-
phased_release
|
269
|
+
phased_release(true)
|
270
270
|
# or
|
271
|
-
phased_release
|
271
|
+
phased_release(false)
|
272
272
|
```
|
273
273
|
|
274
274
|
##### app_rating_config_path
|
@@ -339,13 +339,13 @@ promotional_text(
|
|
339
339
|
##### app_icon
|
340
340
|
A path to a new app icon, which must be exactly 1024x1024px
|
341
341
|
```ruby-skip-tests
|
342
|
-
app_icon
|
342
|
+
app_icon('./AppIcon.png')
|
343
343
|
```
|
344
344
|
|
345
345
|
##### apple_watch_app_icon
|
346
346
|
A path to a new app icon for the Watch, which must be exactly 1024x1024px
|
347
347
|
```ruby-skip-tests
|
348
|
-
apple_watch_app_icon
|
348
|
+
apple_watch_app_icon('./AppleWatchAppIcon.png')
|
349
349
|
```
|
350
350
|
|
351
351
|
##### platform
|
@@ -368,7 +368,7 @@ The available options:
|
|
368
368
|
##### copyright
|
369
369
|
The up to date copyright information.
|
370
370
|
```ruby-skip-tests
|
371
|
-
copyright
|
371
|
+
copyright("#{Time.now.year} Felix Krause")
|
372
372
|
```
|
373
373
|
|
374
374
|
##### primary_category
|
@@ -405,7 +405,7 @@ Before actually uploading anything to iTunes, _deliver_ will generate a HTML sum
|
|
405
405
|
_deliver_ uses the following techniques under the hood:
|
406
406
|
|
407
407
|
- The iTMSTransporter tool is used to upload the binary to iTunes Connect. iTMSTransporter is a command line tool provided by Apple.
|
408
|
-
- For all metadata related actions _deliver_ uses [
|
408
|
+
- For all metadata related actions _deliver_ uses [_spaceship_](https://github.com/fastlane/fastlane/tree/master/spaceship)
|
409
409
|
|
410
410
|
# Tips
|
411
411
|
|
@@ -635,7 +635,7 @@ In this case, default values for keywords, urls, name and release notes are used
|
|
635
635
|
|
636
636
|
## Automatically create screenshots
|
637
637
|
|
638
|
-
If you want to integrate _deliver_ with [
|
638
|
+
If you want to integrate _deliver_ with [_snapshot_](https://docs.fastlane.tools/actions/snapshot/), check out [_fastlane_](https://fastlane.tools)!
|
639
639
|
|
640
640
|
## Jenkins integration
|
641
641
|
Detailed instructions about how to set up _deliver_ and _fastlane_ in `Jenkins` can be found in the [fastlane README](https://docs.fastlane.tools/best-practices/continuous-integration/#jenkins-integration).
|
@@ -26,7 +26,7 @@ _pilot_ uses [spaceship.airforce](https://spaceship.airforce) to interact with i
|
|
26
26
|
|
27
27
|
# Usage
|
28
28
|
|
29
|
-
For all commands you can specify the Apple ID to use using `-u felix@krausefx.com`. If you execute _pilot_ in a project already using [
|
29
|
+
For all commands you can specify the Apple ID to use using `-u felix@krausefx.com`. If you execute _pilot_ in a project already using [_fastlane_](https://fastlane.tools) the username and app identifier will automatically be determined.
|
30
30
|
|
31
31
|
## Uploading builds
|
32
32
|
|
@@ -61,7 +61,7 @@ _pilot_ does all kinds of magic for you:
|
|
61
61
|
- Automatically detects the bundle identifier from your `ipa` file
|
62
62
|
- Automatically fetch the AppID of your app based on the bundle identifier
|
63
63
|
|
64
|
-
_pilot_ uses [
|
64
|
+
_pilot_ uses [_spaceship_](https://spaceship.airforce) to submit the build metadata and the iTunes Transporter to upload the binary. Because iTunes Transporter's upload capability is only supported on OS X, `pilot upload` does not work on Linux, as described [in this issue](https://github.com/fastlane/fastlane/issues/5789)
|
65
65
|
|
66
66
|
## List builds
|
67
67
|
|
@@ -122,10 +122,12 @@ Layout/SpaceAroundOperators:
|
|
122
122
|
AllCops:
|
123
123
|
TargetRubyVersion: 2.0
|
124
124
|
Include:
|
125
|
-
- "
|
125
|
+
- "*/lib/assets/*Template"
|
126
|
+
- "*/lib/assets/*TemplateAndroid"
|
126
127
|
Exclude:
|
127
128
|
- "**/lib/assets/custom_action_template.rb"
|
128
129
|
- "./vendor/**/*"
|
130
|
+
- "**/lib/assets/DefaultFastfileTemplate"
|
129
131
|
Style/FileName:
|
130
132
|
Exclude:
|
131
133
|
- "**/Dangerfile"
|
@@ -164,6 +166,7 @@ Style/MethodCallWithArgsParentheses:
|
|
164
166
|
- desc
|
165
167
|
- lane
|
166
168
|
- private_lane
|
169
|
+
- platform
|
167
170
|
- to
|
168
171
|
- describe
|
169
172
|
- it
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module Fastlane
|
2
|
-
VERSION = '2.82.0.beta.
|
2
|
+
VERSION = '2.82.0.beta.20180219010003'.freeze
|
3
3
|
DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
|
4
4
|
MINIMUM_XCODE_RELEASE = "7.0".freeze
|
5
5
|
RUBOCOP_REQUIREMENT = '0.49.1'.freeze
|
data/fastlane_core/README.md
CHANGED
@@ -29,18 +29,18 @@ To hide timestamps in each row, set the `FASTLANE_HIDE_TIMESTAMP` environment va
|
|
29
29
|
Instead of using `puts`, `raise` and `gets`, please use the helper class `UI` across all fastlane tools:
|
30
30
|
|
31
31
|
```ruby
|
32
|
-
UI.message
|
33
|
-
UI.success
|
34
|
-
UI.error
|
35
|
-
UI.important
|
32
|
+
UI.message("Neutral message (usually white)")
|
33
|
+
UI.success("Successfully finished processing (usually green)")
|
34
|
+
UI.error("Wahaha, what's going on here! (usually red)")
|
35
|
+
UI.important("Make sure to use Windows (usually yellow)")
|
36
36
|
|
37
|
-
UI.header
|
37
|
+
UI.header("Inputs") # a big box
|
38
38
|
|
39
39
|
name = UI.input("What's your name? ")
|
40
40
|
if UI.confirm("Are you '#{name}'?")
|
41
|
-
UI.success
|
41
|
+
UI.success("Oh yeah")
|
42
42
|
else
|
43
|
-
UI.error
|
43
|
+
UI.error("Wups, invalid")
|
44
44
|
end
|
45
45
|
|
46
46
|
UI.password("Your password please: ") # password inputs are hidden
|
@@ -71,7 +71,7 @@ UI.deprecated("The '--key' parameter is deprecated")
|
|
71
71
|
```
|
72
72
|
|
73
73
|
# Code of Conduct
|
74
|
-
Help us keep
|
74
|
+
Help us keep _fastlane_ open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/fastlane/blob/master/CODE_OF_CONDUCT.md).
|
75
75
|
|
76
76
|
# License
|
77
77
|
This project is licensed under the terms of the MIT license. See the LICENSE file.
|
@@ -1,9 +1,9 @@
|
|
1
|
-
git_url
|
1
|
+
git_url("[[GIT_URL]]")
|
2
2
|
|
3
|
-
type
|
3
|
+
type("development") # The default type, can be: appstore, adhoc, enterprise or development
|
4
4
|
|
5
|
-
# app_identifier
|
6
|
-
# username
|
5
|
+
# app_identifier(["tools.fastlane.app", "tools.fastlane.app2"])
|
6
|
+
# username("user@fastlane.tools") # Your Apple Developer Portal username
|
7
7
|
|
8
8
|
# For all available options run `fastlane match --help`
|
9
9
|
# Remove the # in the beginning of the line to enable the other options
|
@@ -4,7 +4,7 @@ This repository contains all your certificates and provisioning profiles needed
|
|
4
4
|
|
5
5
|
**Important:** Make sure this repository is set to private and only your team members have access to this repo.
|
6
6
|
|
7
|
-
Do not modify this file, as it gets overwritten every time you run
|
7
|
+
Do not modify this file, as it gets overwritten every time you run _match_.
|
8
8
|
|
9
9
|
### Installation
|
10
10
|
|
@@ -95,10 +95,10 @@ module Produce
|
|
95
95
|
elsif k.to_sym == :icloud
|
96
96
|
case v
|
97
97
|
when SERVICE_LEGACY
|
98
|
-
enabled_clean_options[app_service.
|
98
|
+
enabled_clean_options[app_service.cloud.on.service_id] = app_service.cloud.on
|
99
99
|
enabled_clean_options[app_service.cloud_kit.xcode5_compatible.service_id] = app_service.cloud_kit.xcode5_compatible
|
100
100
|
when SERVICE_CLOUDKIT
|
101
|
-
enabled_clean_options[app_service.
|
101
|
+
enabled_clean_options[app_service.i_cloud.on.service_id] = app_service.i_cloud.on
|
102
102
|
enabled_clean_options[app_service.cloud_kit.cloud_kit.service_id] = app_service.cloud_kit.cloud_kit
|
103
103
|
end
|
104
104
|
else
|
@@ -1,15 +1,15 @@
|
|
1
1
|
# remove the leading '#' to uncomment lines
|
2
2
|
|
3
|
-
# app_package_name
|
4
|
-
# use_tests_in_packages
|
3
|
+
# app_package_name('your.app.package')
|
4
|
+
# use_tests_in_packages(['your.screenshot.tests.package'])
|
5
5
|
|
6
|
-
# app_apk_path
|
7
|
-
# tests_apk_path
|
6
|
+
# app_apk_path('path/to/your/app.apk')
|
7
|
+
# tests_apk_path('path/to/your/tests.apk')
|
8
8
|
|
9
|
-
locales
|
9
|
+
locales(['en-US', 'fr-FR', 'it-IT'])
|
10
10
|
|
11
11
|
# clear all previously generated screenshots in your local output directory before creating new ones
|
12
|
-
clear_previous_screenshots
|
12
|
+
clear_previous_screenshots(true)
|
13
13
|
|
14
14
|
# For more information about all available options run
|
15
15
|
# fastlane screengrab --help
|
@@ -18,13 +18,13 @@
|
|
18
18
|
# ])
|
19
19
|
|
20
20
|
# The name of the scheme which contains the UI Tests
|
21
|
-
# scheme
|
21
|
+
# scheme("SchemeName")
|
22
22
|
|
23
23
|
# Where should the resulting screenshots be stored?
|
24
|
-
# output_directory
|
24
|
+
# output_directory("./screenshots")
|
25
25
|
|
26
26
|
# remove the '#' to clear all previously generated screenshots before creating new ones
|
27
|
-
# clear_previous_screenshots
|
27
|
+
# clear_previous_screenshots(true)
|
28
28
|
|
29
29
|
# Arguments to pass to the app on launch. See https://docs.fastlane.tools/actions/snapshot/#launch-arguments
|
30
30
|
# launch_arguments(["-favColor red"])
|
data/spaceship/README.md
CHANGED
@@ -33,7 +33,7 @@
|
|
33
33
|
[![Twitter: @FastlaneTools](https://img.shields.io/badge/contact-@FastlaneTools-blue.svg?style=flat)](https://twitter.com/FastlaneTools)
|
34
34
|
[![License](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/fastlane/fastlane/blob/master/LICENSE)
|
35
35
|
|
36
|
-
|
36
|
+
_spaceship_ exposes both the Apple Developer Center and the iTunes Connect API. This fast and powerful API powers parts of fastlane, and can be leveraged for more advanced fastlane features. Scripting your Developer Center workflow has never been easier!
|
37
37
|
|
38
38
|
Get in contact with the creators on Twitter: [@FastlaneTools](https://twitter.com/fastlanetools)
|
39
39
|
|
@@ -55,7 +55,7 @@ Get in contact with the creators on Twitter: [@FastlaneTools](https://twitter.co
|
|
55
55
|
|
56
56
|
Up until now, the [fastlane tools](https://fastlane.tools) used web scraping to interact with Apple's web services. With spaceship it is possible to directly access the underlying APIs using a simple HTTP client only.
|
57
57
|
|
58
|
-
Using spaceship, the execution time of [
|
58
|
+
Using spaceship, the execution time of [_sigh_](https://docs.fastlane.tools/actions/sigh/) was reduced from over 1 minute to less than 5 seconds.
|
59
59
|
|
60
60
|
spaceship uses a combination of 3 different API endpoints, used by the Apple Developer Portal and Xcode. As no API offers everything we need, spaceship combines all APIs for you. [More details about the APIs](#technical-details).
|
61
61
|
|
@@ -79,13 +79,13 @@ profile = Spaceship.provisioning_profile.app_store.create!(bundle_id: app.bundle
|
|
79
79
|
certificate: cert)
|
80
80
|
|
81
81
|
# Print the name and download the new profile
|
82
|
-
puts
|
82
|
+
puts("Created Profile " + profile.name)
|
83
83
|
profile.download
|
84
84
|
```
|
85
85
|
|
86
86
|
## Speed
|
87
87
|
|
88
|
-
How fast are tools using
|
88
|
+
How fast are tools using _spaceship_ compared to web scraping?
|
89
89
|
|
90
90
|
![assets/SpaceshipRecording.gif](assets/SpaceshipRecording.gif)
|
91
91
|
|
@@ -97,11 +97,11 @@ How fast are tools using `spaceship` compared to web scraping?
|
|
97
97
|
|
98
98
|
## Playground
|
99
99
|
|
100
|
-
To try
|
100
|
+
To try _spaceship_, just run `fastlane spaceship`. It will automatically start the `spaceship playground`. It makes it super easy to try _spaceship_ :rocket:
|
101
101
|
|
102
102
|
![assets/docs/Playground.png](assets/docs/Playground.png)
|
103
103
|
|
104
|
-
This requires you to install `pry` using `sudo gem install pry`. `pry` is not installed by default, as most [
|
104
|
+
This requires you to install `pry` using `sudo gem install pry`. `pry` is not installed by default, as most [_fastlane_](https://fastlane.tools) users won't need the `spaceship playground`. You can add the `pry` dependency to your `Gemfile`.
|
105
105
|
|
106
106
|
## Apple Developer Portal API
|
107
107
|
|
@@ -151,9 +151,9 @@ All [fastlane tools](https://fastlane.tools) that communicate with Apple's web s
|
|
151
151
|
|
152
152
|
## HTTP Client
|
153
153
|
|
154
|
-
Up until now all [fastlane tools](https://fastlane.tools) used web scraping to interact with Apple's web services.
|
154
|
+
Up until now all [fastlane tools](https://fastlane.tools) used web scraping to interact with Apple's web services. _spaceship_ uses a simple HTTP client only, resulting in much less overhead and extremely improved speed.
|
155
155
|
|
156
|
-
Advantages of
|
156
|
+
Advantages of _spaceship_ (HTTP client) over web scraping:
|
157
157
|
|
158
158
|
- Blazing fast :rocket: 90% faster than previous methods
|
159
159
|
- No more overhead by loading images, HTML, JS and CSS files on each page load
|
@@ -185,22 +185,22 @@ Overview of the used API endpoints
|
|
185
185
|
- `https://du-itc.itunesconnect.apple.com`:
|
186
186
|
- Upload icons, screenshots, trailers ...
|
187
187
|
|
188
|
-
|
188
|
+
_spaceship_ uses all those API points to offer this seamless experience.
|
189
189
|
|
190
190
|
## Magic involved
|
191
191
|
|
192
|
-
|
192
|
+
_spaceship_ does a lot of magic to get everything working so neatly:
|
193
193
|
|
194
194
|
- **Sensible Defaults**: You only have to provide the mandatory information (e.g. new provisioning profiles contain all devices by default)
|
195
|
-
- **Local Validation**: When pushing changes back to the Apple Dev Portal
|
196
|
-
- **Various request/response types**: When working with the different API endpoints,
|
197
|
-
- **Automatic Pagination**: Even if you have thousands of apps, profiles or certificates,
|
198
|
-
- **Session, Cookie and CSRF token**: All the security aspects are handled by
|
199
|
-
- **Profile Magic**: Create and upload code signing requests, all managed by
|
200
|
-
- **Multiple Spaceship**: You can launch multiple
|
195
|
+
- **Local Validation**: When pushing changes back to the Apple Dev Portal _spaceship_ will make sure only valid data is sent to Apple (e.g. automatic repairing of provisioning profiles)
|
196
|
+
- **Various request/response types**: When working with the different API endpoints, _spaceship_ has to deal with `JSON`, `XML`, `txt`, `plist` and sometimes even `HTML` responses and requests.
|
197
|
+
- **Automatic Pagination**: Even if you have thousands of apps, profiles or certificates, _spaceship_ **can** handle your scale. It was heavily tested by first using _spaceship_ to create hundreds of profiles and then accessing them using _spaceship_.
|
198
|
+
- **Session, Cookie and CSRF token**: All the security aspects are handled by _spaceship_.
|
199
|
+
- **Profile Magic**: Create and upload code signing requests, all managed by _spaceship_
|
200
|
+
- **Multiple Spaceship**: You can launch multiple _spaceships_ with different Apple accounts to do things like syncing the registered devices.
|
201
201
|
|
202
202
|
# Code of Conduct
|
203
|
-
Help us keep
|
203
|
+
Help us keep _fastlane_ open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/fastlane/blob/master/CODE_OF_CONDUCT.md).
|
204
204
|
|
205
205
|
# License
|
206
206
|
This project is licensed under the terms of the MIT license. See the LICENSE file.
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.82.0.beta.
|
4
|
+
version: 2.82.0.beta.20180219010003
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Olivier Halligon
|
@@ -25,7 +25,7 @@ authors:
|
|
25
25
|
autorequire:
|
26
26
|
bindir: bin
|
27
27
|
cert_chain: []
|
28
|
-
date: 2018-02-
|
28
|
+
date: 2018-02-19 00:00:00.000000000 Z
|
29
29
|
dependencies:
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: slack-notifier
|