fastlane 2.108.0 → 2.109.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 +76 -76
- data/deliver/lib/deliver/app_screenshot.rb +22 -1
- data/fastlane/lib/fastlane/action_collector.rb +1 -22
- data/fastlane/lib/fastlane/actions/appetize.rb +20 -3
- data/fastlane/lib/fastlane/actions/docs/build_ios_app.md +12 -9
- data/fastlane/lib/fastlane/actions/pod_lib_lint.rb +25 -16
- data/fastlane/lib/fastlane/actions/pod_push.rb +1 -1
- data/fastlane/lib/fastlane/actions/puts.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_github_release.rb +1 -0
- data/fastlane/lib/fastlane/actions/testfairy.rb +11 -5
- data/fastlane/lib/fastlane/fast_file.rb +9 -6
- data/fastlane/lib/fastlane/helper/adb_helper.rb +3 -3
- data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +5 -5
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +16 -6
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane_core/lib/fastlane_core.rb +0 -1
- data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +2 -2
- data/fastlane_core/lib/fastlane_core/project.rb +9 -11
- data/match/lib/match/encryption.rb +33 -9
- data/match/lib/match/runner.rb +15 -3
- data/match/lib/match/spaceship_ensure.rb +2 -5
- data/match/lib/match/storage.rb +29 -7
- data/match/lib/match/storage/git_storage.rb +30 -48
- data/match/lib/match/storage/interface.rb +39 -1
- data/precheck/lib/precheck/rules/other_platforms_rule.rb +4 -1
- data/scan/lib/scan/error_handler.rb +8 -1
- data/sigh/lib/assets/resign.sh +39 -63
- data/snapshot/lib/snapshot/reports_generator.rb +1 -0
- data/spaceship/lib/spaceship/client.rb +174 -58
- data/spaceship/lib/spaceship/commands_generator.rb +1 -0
- data/spaceship/lib/spaceship/du/du_client.rb +18 -12
- data/spaceship/lib/spaceship/spaceauth_runner.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_submission.rb +2 -1
- data/spaceship/lib/spaceship/tunes/device_type.rb +1 -1
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +5 -2
- data/spaceship/lib/spaceship/{two_step_client.rb → two_step_or_factor_client.rb} +65 -96
- data/supply/lib/supply/options.rb +17 -3
- data/supply/lib/supply/uploader.rb +12 -5
- metadata +17 -19
- data/deliver/lib/deliver/.app_screenshot.rb.swp +0 -0
- data/fastlane_core/lib/fastlane_core/tool_collector.rb +0 -304
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8823fc5e9d2e0e9ce7c37543dbf4e90e7b4319ca
|
|
4
|
+
data.tar.gz: c048a9ecb12f102fafd217e9701c0eafa449f9f9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6e2179a0daad831c3a7cd153a76647c541e56f1d8f0fed493134c3ccb123ffe228743cc02011a09ed9f9144124690b1611e465ea20f4d328a38d4ef18183f870
|
|
7
|
+
data.tar.gz: d6a52d5306117c05428b248aae9ac1e11d57e0feb1382d16fe81bd9509265b1dcac66504b1f5d7cebd62be481088027da7883368010a634d7eb8a68d05227fc0
|
data/README.md
CHANGED
|
@@ -33,61 +33,55 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
33
33
|
<!-- This table is regenerated and resorted on each release -->
|
|
34
34
|
<table id='team'>
|
|
35
35
|
<tr>
|
|
36
|
-
<td id='
|
|
37
|
-
<a href='https://github.com/
|
|
38
|
-
<img src='https://github.com/
|
|
39
|
-
</a>
|
|
40
|
-
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
41
|
-
</td>
|
|
42
|
-
<td id='jorge-revuelta-h'>
|
|
43
|
-
<a href='https://github.com/minuscorp'>
|
|
44
|
-
<img src='https://github.com/minuscorp.png?size=140'>
|
|
36
|
+
<td id='jimmy-dee'>
|
|
37
|
+
<a href='https://github.com/jdee'>
|
|
38
|
+
<img src='https://github.com/jdee.png?size=140'>
|
|
45
39
|
</a>
|
|
46
|
-
<h4 align='center'
|
|
40
|
+
<h4 align='center'>Jimmy Dee</h4>
|
|
47
41
|
</td>
|
|
48
|
-
<td id='
|
|
49
|
-
<a href='https://github.com/
|
|
50
|
-
<img src='https://github.com/
|
|
42
|
+
<td id='helmut-januschka'>
|
|
43
|
+
<a href='https://github.com/hjanuschka'>
|
|
44
|
+
<img src='https://github.com/hjanuschka.png?size=140'>
|
|
51
45
|
</a>
|
|
52
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
46
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
|
53
47
|
</td>
|
|
54
|
-
<td id='
|
|
55
|
-
<a href='https://github.com/
|
|
56
|
-
<img src='https://github.com/
|
|
48
|
+
<td id='stefan-natchev'>
|
|
49
|
+
<a href='https://github.com/snatchev'>
|
|
50
|
+
<img src='https://github.com/snatchev.png?size=140'>
|
|
57
51
|
</a>
|
|
58
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
52
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
|
59
53
|
</td>
|
|
60
|
-
<td id='
|
|
61
|
-
<a href='https://github.com/
|
|
62
|
-
<img src='https://github.com/
|
|
54
|
+
<td id='luka-mirosevic'>
|
|
55
|
+
<a href='https://github.com/lmirosevic'>
|
|
56
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
|
63
57
|
</a>
|
|
64
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
58
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
65
59
|
</td>
|
|
66
|
-
</tr>
|
|
67
|
-
<tr>
|
|
68
60
|
<td id='matthew-ellis'>
|
|
69
61
|
<a href='https://github.com/matthewellis'>
|
|
70
62
|
<img src='https://github.com/matthewellis.png?size=140'>
|
|
71
63
|
</a>
|
|
72
64
|
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
|
73
65
|
</td>
|
|
74
|
-
|
|
75
|
-
<
|
|
76
|
-
<
|
|
66
|
+
</tr>
|
|
67
|
+
<tr>
|
|
68
|
+
<td id='jorge-revuelta-h'>
|
|
69
|
+
<a href='https://github.com/minuscorp'>
|
|
70
|
+
<img src='https://github.com/minuscorp.png?size=140'>
|
|
77
71
|
</a>
|
|
78
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
72
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
79
73
|
</td>
|
|
80
|
-
<td id='
|
|
81
|
-
<a href='https://github.com/
|
|
82
|
-
<img src='https://github.com/
|
|
74
|
+
<td id='andrew-mcburney'>
|
|
75
|
+
<a href='https://github.com/armcburney'>
|
|
76
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
|
83
77
|
</a>
|
|
84
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
78
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
|
85
79
|
</td>
|
|
86
|
-
<td id='
|
|
87
|
-
<a href='https://github.com/
|
|
88
|
-
<img src='https://github.com/
|
|
80
|
+
<td id='felix-krause'>
|
|
81
|
+
<a href='https://github.com/KrauseFx'>
|
|
82
|
+
<img src='https://github.com/KrauseFx.png?size=140'>
|
|
89
83
|
</a>
|
|
90
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
84
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
|
91
85
|
</td>
|
|
92
86
|
<td id='iulian-onofrei'>
|
|
93
87
|
<a href='https://github.com/revolter'>
|
|
@@ -95,69 +89,75 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
95
89
|
</a>
|
|
96
90
|
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
|
97
91
|
</td>
|
|
92
|
+
<td id='olivier-halligon'>
|
|
93
|
+
<a href='https://github.com/AliSoftware'>
|
|
94
|
+
<img src='https://github.com/AliSoftware.png?size=140'>
|
|
95
|
+
</a>
|
|
96
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
|
97
|
+
</td>
|
|
98
98
|
</tr>
|
|
99
99
|
<tr>
|
|
100
|
-
<td id='
|
|
101
|
-
<a href='https://github.com/
|
|
102
|
-
<img src='https://github.com/
|
|
100
|
+
<td id='maksym-grebenets'>
|
|
101
|
+
<a href='https://github.com/mgrebenets'>
|
|
102
|
+
<img src='https://github.com/mgrebenets.png?size=140'>
|
|
103
103
|
</a>
|
|
104
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
104
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
105
105
|
</td>
|
|
106
|
-
<td id='
|
|
107
|
-
<a href='https://github.com/
|
|
108
|
-
<img src='https://github.com/
|
|
106
|
+
<td id='fumiya-nakamura'>
|
|
107
|
+
<a href='https://github.com/nafu'>
|
|
108
|
+
<img src='https://github.com/nafu.png?size=140'>
|
|
109
109
|
</a>
|
|
110
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
110
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
111
111
|
</td>
|
|
112
|
-
<td id='
|
|
113
|
-
<a href='https://github.com/
|
|
114
|
-
<img src='https://github.com/
|
|
112
|
+
<td id='manu-wallner'>
|
|
113
|
+
<a href='https://github.com/milch'>
|
|
114
|
+
<img src='https://github.com/milch.png?size=140'>
|
|
115
115
|
</a>
|
|
116
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
116
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
|
117
117
|
</td>
|
|
118
|
-
<td id='
|
|
119
|
-
<a href='https://github.com/
|
|
120
|
-
<img src='https://github.com/
|
|
118
|
+
<td id='jan-piotrowski'>
|
|
119
|
+
<a href='https://github.com/janpio'>
|
|
120
|
+
<img src='https://github.com/janpio.png?size=140'>
|
|
121
121
|
</a>
|
|
122
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
122
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
|
123
123
|
</td>
|
|
124
|
-
<td id='
|
|
125
|
-
<a href='https://github.com/
|
|
126
|
-
<img src='https://github.com/
|
|
124
|
+
<td id='josh-holtz'>
|
|
125
|
+
<a href='https://github.com/joshdholtz'>
|
|
126
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
|
127
127
|
</a>
|
|
128
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
128
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
|
129
129
|
</td>
|
|
130
130
|
</tr>
|
|
131
131
|
<tr>
|
|
132
|
-
<td id='
|
|
133
|
-
<a href='https://github.com/
|
|
134
|
-
<img src='https://github.com/
|
|
132
|
+
<td id='aaron-brager'>
|
|
133
|
+
<a href='https://github.com/getaaron'>
|
|
134
|
+
<img src='https://github.com/getaaron.png?size=140'>
|
|
135
135
|
</a>
|
|
136
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
136
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
|
137
137
|
</td>
|
|
138
|
-
<td id='
|
|
139
|
-
<a href='https://github.com/
|
|
140
|
-
<img src='https://github.com/
|
|
138
|
+
<td id='danielle-tomlinson'>
|
|
139
|
+
<a href='https://github.com/DanToml'>
|
|
140
|
+
<img src='https://github.com/DanToml.png?size=140'>
|
|
141
141
|
</a>
|
|
142
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
142
|
+
<h4 align='center'><a href='https://twitter.com/DanToml'>Danielle Tomlinson</a></h4>
|
|
143
143
|
</td>
|
|
144
|
-
<td id='
|
|
145
|
-
<a href='https://github.com/
|
|
146
|
-
<img src='https://github.com/
|
|
144
|
+
<td id='jérôme-lacoste'>
|
|
145
|
+
<a href='https://github.com/lacostej'>
|
|
146
|
+
<img src='https://github.com/lacostej.png?size=140'>
|
|
147
147
|
</a>
|
|
148
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
148
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
|
149
149
|
</td>
|
|
150
|
-
<td id='
|
|
151
|
-
<a href='https://github.com/
|
|
152
|
-
<img src='https://github.com/
|
|
150
|
+
<td id='joshua-liebowitz'>
|
|
151
|
+
<a href='https://github.com/taquitos'>
|
|
152
|
+
<img src='https://github.com/taquitos.png?size=140'>
|
|
153
153
|
</a>
|
|
154
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
154
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
|
155
155
|
</td>
|
|
156
|
-
<td id='
|
|
157
|
-
<a href='https://github.com/
|
|
158
|
-
<img src='https://github.com/
|
|
156
|
+
<td id='kohki-miki'>
|
|
157
|
+
<a href='https://github.com/giginet'>
|
|
158
|
+
<img src='https://github.com/giginet.png?size=140'>
|
|
159
159
|
</a>
|
|
160
|
-
<h4 align='center'>
|
|
160
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
161
161
|
</td>
|
|
162
162
|
</tr>
|
|
163
163
|
</table>
|
|
@@ -23,6 +23,8 @@ module Deliver
|
|
|
23
23
|
IOS_IPAD = "iOS-iPad"
|
|
24
24
|
# iPad 10.5
|
|
25
25
|
IOS_IPAD_10_5 = "iOS-iPad-10.5"
|
|
26
|
+
# iPad 11
|
|
27
|
+
IOS_IPAD_11 = "iOS-iPad-11"
|
|
26
28
|
# iPad Pro
|
|
27
29
|
IOS_IPAD_PRO = "iOS-iPad-Pro"
|
|
28
30
|
# iPhone 5 iMessage
|
|
@@ -39,6 +41,8 @@ module Deliver
|
|
|
39
41
|
IOS_IPAD_MESSAGES = "iOS-iPad-messages"
|
|
40
42
|
# iPad 10.5 iMessage
|
|
41
43
|
IOS_IPAD_10_5_MESSAGES = "iOS-10.5-messages"
|
|
44
|
+
# iPad 11 iMessage
|
|
45
|
+
IOS_IPAD_11_MESSAGES = "iOS-11-messages"
|
|
42
46
|
# iPad Pro iMessage
|
|
43
47
|
IOS_IPAD_PRO_MESSAGES = "iOS-iPad-Pro-messages"
|
|
44
48
|
# Apple Watch
|
|
@@ -75,6 +79,8 @@ module Deliver
|
|
|
75
79
|
|
|
76
80
|
# The iTC API requires a different notation for the device
|
|
77
81
|
def device_type
|
|
82
|
+
# This list does not include iPad Pro 12.9-inch (3rd generation)
|
|
83
|
+
# because it has same resoluation as IOS_IPAD_PRO and will clobber
|
|
78
84
|
matching = {
|
|
79
85
|
ScreenSize::IOS_35 => "iphone35",
|
|
80
86
|
ScreenSize::IOS_40 => "iphone4",
|
|
@@ -84,6 +90,7 @@ module Deliver
|
|
|
84
90
|
ScreenSize::IOS_65 => "iphone65",
|
|
85
91
|
ScreenSize::IOS_IPAD => "ipad",
|
|
86
92
|
ScreenSize::IOS_IPAD_10_5 => "ipad105",
|
|
93
|
+
ScreenSize::IOS_IPAD_11 => "ipadPro11",
|
|
87
94
|
ScreenSize::IOS_IPAD_PRO => "ipadPro",
|
|
88
95
|
ScreenSize::IOS_40_MESSAGES => "iphone4",
|
|
89
96
|
ScreenSize::IOS_47_MESSAGES => "iphone6",
|
|
@@ -93,6 +100,7 @@ module Deliver
|
|
|
93
100
|
ScreenSize::IOS_IPAD_MESSAGES => "ipad",
|
|
94
101
|
ScreenSize::IOS_IPAD_PRO_MESSAGES => "ipadPro",
|
|
95
102
|
ScreenSize::IOS_IPAD_10_5_MESSAGES => "ipad105",
|
|
103
|
+
ScreenSize::IOS_IPAD_11_MESSAGES => "ipadPro11",
|
|
96
104
|
ScreenSize::MAC => "desktop",
|
|
97
105
|
ScreenSize::IOS_APPLE_WATCH => "watch",
|
|
98
106
|
ScreenSize::IOS_APPLE_WATCH_SERIES4 => "watchSeries4",
|
|
@@ -103,6 +111,8 @@ module Deliver
|
|
|
103
111
|
|
|
104
112
|
# Nice name
|
|
105
113
|
def formatted_name
|
|
114
|
+
# This list does not include iPad Pro 12.9-inch (3rd generation)
|
|
115
|
+
# because it has same resoluation as IOS_IPAD_PRO and will clobber
|
|
106
116
|
matching = {
|
|
107
117
|
ScreenSize::IOS_35 => "iPhone 4",
|
|
108
118
|
ScreenSize::IOS_40 => "iPhone 5",
|
|
@@ -112,6 +122,7 @@ module Deliver
|
|
|
112
122
|
ScreenSize::IOS_65 => "iPhone XS Max",
|
|
113
123
|
ScreenSize::IOS_IPAD => "iPad",
|
|
114
124
|
ScreenSize::IOS_IPAD_10_5 => "iPad 10.5",
|
|
125
|
+
ScreenSize::IOS_IPAD_11 => "iPad 11",
|
|
115
126
|
ScreenSize::IOS_IPAD_PRO => "iPad Pro",
|
|
116
127
|
ScreenSize::IOS_40_MESSAGES => "iPhone 5 (iMessage)",
|
|
117
128
|
ScreenSize::IOS_47_MESSAGES => "iPhone 6 (iMessage)",
|
|
@@ -121,6 +132,7 @@ module Deliver
|
|
|
121
132
|
ScreenSize::IOS_IPAD_MESSAGES => "iPad (iMessage)",
|
|
122
133
|
ScreenSize::IOS_IPAD_PRO_MESSAGES => "iPad Pro (iMessage)",
|
|
123
134
|
ScreenSize::IOS_IPAD_10_5_MESSAGES => "iPad 10.5 (iMessage)",
|
|
135
|
+
ScreenSize::IOS_IPAD_11_MESSAGES => "iPad 11 (iMessage)",
|
|
124
136
|
ScreenSize::MAC => "Mac",
|
|
125
137
|
ScreenSize::IOS_APPLE_WATCH => "Watch",
|
|
126
138
|
ScreenSize::IOS_APPLE_WATCH_SERIES4 => "Watch Series4",
|
|
@@ -145,7 +157,8 @@ module Deliver
|
|
|
145
157
|
ScreenSize::IOS_65_MESSAGES,
|
|
146
158
|
ScreenSize::IOS_IPAD_MESSAGES,
|
|
147
159
|
ScreenSize::IOS_IPAD_PRO_MESSAGES,
|
|
148
|
-
ScreenSize::IOS_IPAD_10_5_MESSAGES
|
|
160
|
+
ScreenSize::IOS_IPAD_10_5_MESSAGES,
|
|
161
|
+
ScreenSize::IOS_IPAD_11_MESSAGES
|
|
149
162
|
].include?(self.screen_size)
|
|
150
163
|
end
|
|
151
164
|
|
|
@@ -183,6 +196,10 @@ module Deliver
|
|
|
183
196
|
[1668, 2224],
|
|
184
197
|
[2224, 1668]
|
|
185
198
|
],
|
|
199
|
+
ScreenSize::IOS_IPAD_11 => [
|
|
200
|
+
[1668, 2388],
|
|
201
|
+
[2388, 1668]
|
|
202
|
+
],
|
|
186
203
|
ScreenSize::IOS_IPAD_PRO_MESSAGES => [
|
|
187
204
|
[2732, 2048],
|
|
188
205
|
[2048, 2732]
|
|
@@ -229,6 +246,10 @@ module Deliver
|
|
|
229
246
|
[1668, 2224],
|
|
230
247
|
[2224, 1668]
|
|
231
248
|
],
|
|
249
|
+
ScreenSize::IOS_IPAD_11 => [
|
|
250
|
+
[1668, 2388],
|
|
251
|
+
[2388, 1668]
|
|
252
|
+
],
|
|
232
253
|
ScreenSize::IOS_IPAD_PRO => [
|
|
233
254
|
[2732, 2048],
|
|
234
255
|
[2048, 2732]
|
|
@@ -1,23 +1,5 @@
|
|
|
1
|
-
require 'fastlane_core/tool_collector'
|
|
2
|
-
|
|
3
1
|
module Fastlane
|
|
4
|
-
class ActionCollector
|
|
5
|
-
# Is this an official fastlane action, that is bundled with fastlane?
|
|
6
|
-
def is_official?(name)
|
|
7
|
-
return true if name == :lane_switch
|
|
8
|
-
Actions.get_all_official_actions.include?(name)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def name_to_track(name)
|
|
12
|
-
return name if is_official?(name)
|
|
13
|
-
|
|
14
|
-
Fastlane.plugin_manager.plugin_references.each do |plugin_name, value|
|
|
15
|
-
return "#{plugin_name}/#{name}" if value[:actions].include?(name)
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
return nil
|
|
19
|
-
end
|
|
20
|
-
|
|
2
|
+
class ActionCollector
|
|
21
3
|
def show_message
|
|
22
4
|
UI.message("Sending Crash/Success information. Learn more at https://docs.fastlane.tools/#metrics")
|
|
23
5
|
UI.message("No personal/sensitive data is sent. Only sharing the following:")
|
|
@@ -36,9 +18,6 @@ module Fastlane
|
|
|
36
18
|
# :xcversion
|
|
37
19
|
# "fastlane-plugin-my_plugin/xcversion"
|
|
38
20
|
def self.determine_version(name)
|
|
39
|
-
result = super(name)
|
|
40
|
-
return result if result
|
|
41
|
-
|
|
42
21
|
if name.to_s.include?(PluginManager.plugin_prefix)
|
|
43
22
|
# That's an action from a plugin, we need to fetch its version number
|
|
44
23
|
begin
|
|
@@ -4,6 +4,7 @@ module Fastlane
|
|
|
4
4
|
APPETIZE_PUBLIC_KEY = :APPETIZE_PUBLIC_KEY
|
|
5
5
|
APPETIZE_APP_URL = :APPETIZE_APP_URL
|
|
6
6
|
APPETIZE_MANAGE_URL = :APPETIZE_MANAGE_URL
|
|
7
|
+
APPETIZE_API_HOST = :APPETIZE_API_HOST
|
|
7
8
|
end
|
|
8
9
|
|
|
9
10
|
class AppetizeAction < Action
|
|
@@ -54,7 +55,8 @@ module Fastlane
|
|
|
54
55
|
end
|
|
55
56
|
|
|
56
57
|
def self.appetize_url(options)
|
|
57
|
-
|
|
58
|
+
Actions.lane_context[SharedValues::APPETIZE_API_HOST] = options[:api_host]
|
|
59
|
+
"https://#{options[:api_host]}/v1/apps/#{options[:public_key]}"
|
|
58
60
|
end
|
|
59
61
|
private_class_method :appetize_url
|
|
60
62
|
|
|
@@ -100,6 +102,14 @@ module Fastlane
|
|
|
100
102
|
|
|
101
103
|
def self.available_options
|
|
102
104
|
[
|
|
105
|
+
FastlaneCore::ConfigItem.new(key: :api_host,
|
|
106
|
+
env_name: "APPETIZE_API_HOST",
|
|
107
|
+
description: "Appetize API host",
|
|
108
|
+
is_string: true,
|
|
109
|
+
default_value: 'api.appetize.io',
|
|
110
|
+
verify_block: proc do |value|
|
|
111
|
+
UI.user_error!("API host should not contain the scheme e.g. `https`") if value.start_with?('https')
|
|
112
|
+
end),
|
|
103
113
|
FastlaneCore::ConfigItem.new(key: :api_token,
|
|
104
114
|
env_name: "APPETIZE_API_TOKEN",
|
|
105
115
|
sensitive: true,
|
|
@@ -143,14 +153,15 @@ module Fastlane
|
|
|
143
153
|
|
|
144
154
|
def self.output
|
|
145
155
|
[
|
|
146
|
-
['
|
|
156
|
+
['APPETIZE_API_HOST', 'Appetize API host.'],
|
|
157
|
+
['APPETIZE_PUBLIC_KEY', 'a public identifier for your app. Use this to update your app after it has been initially created.'],
|
|
147
158
|
['APPETIZE_APP_URL', 'a page to test and share your app.'],
|
|
148
159
|
['APPETIZE_MANAGE_URL', 'a page to manage your app.']
|
|
149
160
|
]
|
|
150
161
|
end
|
|
151
162
|
|
|
152
163
|
def self.authors
|
|
153
|
-
["klundberg", "giginet"]
|
|
164
|
+
["klundberg", "giginet", "steprescott"]
|
|
154
165
|
end
|
|
155
166
|
|
|
156
167
|
def self.category
|
|
@@ -163,6 +174,12 @@ module Fastlane
|
|
|
163
174
|
path: "./MyApp.zip",
|
|
164
175
|
api_token: "yourapitoken", # get it from https://appetize.io/docs#request-api-token
|
|
165
176
|
public_key: "your_public_key" # get it from https://appetize.io/dashboard
|
|
177
|
+
)',
|
|
178
|
+
'appetize(
|
|
179
|
+
path: "./MyApp.zip",
|
|
180
|
+
api_host: "company.appetize.io", # only needed for enterprise hosted solution
|
|
181
|
+
api_token: "yourapitoken", # get it from https://appetize.io/docs#request-api-token
|
|
182
|
+
public_key: "your_public_key" # get it from https://appetize.io/dashboard
|
|
166
183
|
)'
|
|
167
184
|
]
|
|
168
185
|
end
|
|
@@ -134,25 +134,28 @@ export_options("./ExportOptions.plist")
|
|
|
134
134
|
or you can provide hash of values directly in the `Gymfile`:
|
|
135
135
|
|
|
136
136
|
```ruby-skip-tests
|
|
137
|
-
export_options
|
|
137
|
+
export_options({
|
|
138
138
|
method: "ad-hoc",
|
|
139
139
|
manifest: {
|
|
140
140
|
appURL: "https://example.com/My App.ipa",
|
|
141
141
|
},
|
|
142
142
|
thinning: "<thin-for-all-variants>"
|
|
143
|
-
}
|
|
143
|
+
})
|
|
144
144
|
```
|
|
145
145
|
|
|
146
146
|
Optional: If _gym_ can't automatically detect the provisioning profiles to use, you can pass a mapping of bundle identifiers to provisioning profiles:
|
|
147
147
|
|
|
148
|
-
```ruby
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
148
|
+
```ruby
|
|
149
|
+
build_ios_app(
|
|
150
|
+
scheme: "Release",
|
|
151
|
+
export_options: {
|
|
152
|
+
method: "app-store",
|
|
153
|
+
provisioningProfiles: {
|
|
154
|
+
"com.example.bundleid" => "Provisioning Profile Name",
|
|
155
|
+
"com.example.bundleid2" => "Provisioning Profile Name 2"
|
|
156
|
+
}
|
|
154
157
|
}
|
|
155
|
-
|
|
158
|
+
)
|
|
156
159
|
```
|
|
157
160
|
|
|
158
161
|
**Note**: If you use [_fastlane_](https://fastlane.tools) with [_match_](https://fastlane.tools/match) you don't need to provide those values manually.
|