fastlane 2.239.0 → 2.240.1

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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +104 -104
  3. data/credentials_manager/lib/credentials_manager/account_manager.rb +6 -2
  4. data/deliver/lib/deliver/detect_values.rb +3 -1
  5. data/deliver/lib/deliver/runner.rb +5 -4
  6. data/fastlane/lib/fastlane/actions/build_and_upload_to_appetize.rb +3 -1
  7. data/fastlane/lib/fastlane/actions/lcov.rb +3 -1
  8. data/fastlane/lib/fastlane/actions/spaceship_logs.rb +4 -2
  9. data/fastlane/lib/fastlane/actions/swiftlint.rb +6 -3
  10. data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +3 -1
  11. data/fastlane/lib/fastlane/version.rb +1 -1
  12. data/fastlane/swift/Deliverfile.swift +1 -1
  13. data/fastlane/swift/DeliverfileProtocol.swift +1 -1
  14. data/fastlane/swift/Fastlane.swift +38 -2
  15. data/fastlane/swift/Gymfile.swift +1 -1
  16. data/fastlane/swift/GymfileProtocol.swift +8 -1
  17. data/fastlane/swift/Matchfile.swift +1 -1
  18. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  19. data/fastlane/swift/Precheckfile.swift +1 -1
  20. data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
  21. data/fastlane/swift/Scanfile.swift +1 -1
  22. data/fastlane/swift/ScanfileProtocol.swift +8 -1
  23. data/fastlane/swift/Screengrabfile.swift +1 -1
  24. data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
  25. data/fastlane/swift/Snapshotfile.swift +1 -1
  26. data/fastlane/swift/SnapshotfileProtocol.swift +8 -1
  27. data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +12 -0
  28. data/fastlane_core/lib/fastlane_core/fastlane_pty.rb +20 -7
  29. data/fastlane_core/lib/fastlane_core/ipa_file_analyser.rb +1 -1
  30. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +16 -13
  31. data/fastlane_core/lib/fastlane_core/keychain_importer.rb +7 -1
  32. data/fastlane_core/lib/fastlane_core/project.rb +19 -0
  33. data/gym/lib/gym/options.rb +5 -0
  34. data/match/lib/match/encryption/openssl.rb +6 -2
  35. data/match/lib/match/runner.rb +30 -3
  36. data/match/lib/match/storage/interface.rb +8 -5
  37. data/scan/lib/scan/options.rb +5 -0
  38. data/snapshot/lib/snapshot/options.rb +5 -0
  39. data/spaceship/lib/spaceship/client.rb +137 -15
  40. data/spaceship/lib/spaceship/du/upload_file.rb +4 -3
  41. data/trainer/lib/trainer/xcresult/helper.rb +27 -13
  42. metadata +43 -29
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc5b46c829520975d6ad2871bf94e7bc3df0f4d2863dcbed323e2b22c2205931
4
- data.tar.gz: 98f468374c8356ba200173ef637157a9e33747d4a46f3b89b70d4bc407367c47
3
+ metadata.gz: e3bd772100f8573dff86b99cc3081291849946024ad2b90a3e444a56620b6063
4
+ data.tar.gz: 3052020ae6023a87898ab9ce4d969adf1d41716713c491e905b8277461aeedbe
5
5
  SHA512:
6
- metadata.gz: c03a7a56e6229a7c03f053340e74c8f146c1e4b0149dc0523d75370fa5d755f77c571e0c7a974c955c42fab6fd8d1668823dde0cd031a573e2b1340105c76f69
7
- data.tar.gz: bc86b7ea3505cf0fd59c0d22ab2ae3324f16b77170abfa4fffcae1cce948d561ea4c436b92cca599d67838e3d6ab59328e42a418be04f4abef90a1d9378b5a26
6
+ metadata.gz: 935d5797ac55f5b7b34046cbe4e485b4466e4e1273a33984541016f2f3741853089c36e72022e7bf975b3832d079c1c4a8c88937714a96a360369600a6e0ee37
7
+ data.tar.gz: c845cc44fdfc14433360015d501bbd4191c6c8804466f6841f51df7277df98c37c1c7e322411425408de3f19497db1f0202c3665fb8a2371ead1742e56dcf6a5
data/README.md CHANGED
@@ -36,43 +36,23 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
36
36
  <!-- This table is regenerated and resorted on each release -->
37
37
  <table id='team'>
38
38
  <tr>
39
- <td id='helmut-januschka'>
40
- <a href='https://github.com/hjanuschka'>
41
- <img src='https://github.com/hjanuschka.png' width='140px;'>
42
- </a>
43
- <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
44
- </td>
45
- <td id='josh-holtz'>
46
- <a href='https://github.com/joshdholtz'>
47
- <img src='https://github.com/joshdholtz.png' width='140px;'>
48
- </a>
49
- <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
50
- </td>
51
- <td id='felix-krause'>
52
- <a href='https://github.com/KrauseFx'>
53
- <img src='https://github.com/KrauseFx.png' width='140px;'>
54
- </a>
55
- <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
56
- </td>
57
- <td id='kohki-miki'>
58
- <a href='https://github.com/giginet'>
59
- <img src='https://github.com/giginet.png' width='140px;'>
39
+ <td id='daniel-jankowski'>
40
+ <a href='https://github.com/mollyIV'>
41
+ <img src='https://github.com/mollyIV.png' width='140px;'>
60
42
  </a>
61
- <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
43
+ <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
62
44
  </td>
63
- <td id='andrew-mcburney'>
64
- <a href='https://github.com/armcburney'>
65
- <img src='https://github.com/armcburney.png' width='140px;'>
45
+ <td id='stefan-natchev'>
46
+ <a href='https://github.com/snatchev'>
47
+ <img src='https://github.com/snatchev.png' width='140px;'>
66
48
  </a>
67
- <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
49
+ <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
68
50
  </td>
69
- </tr>
70
- <tr>
71
- <td id='roger-oba'>
72
- <a href='https://github.com/rogerluan'>
73
- <img src='https://github.com/rogerluan.png' width='140px;'>
51
+ <td id='fumiya-nakamura'>
52
+ <a href='https://github.com/nafu'>
53
+ <img src='https://github.com/nafu.png' width='140px;'>
74
54
  </a>
75
- <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
55
+ <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
76
56
  </td>
77
57
  <td id='max-ott'>
78
58
  <a href='https://github.com/max-ott'>
@@ -80,37 +60,19 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
80
60
  </a>
81
61
  <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
82
62
  </td>
83
- <td id='aaron-brager'>
84
- <a href='https://github.com/getaaron'>
85
- <img src='https://github.com/getaaron.png' width='140px;'>
86
- </a>
87
- <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
88
- </td>
89
- <td id='matthew-ellis'>
90
- <a href='https://github.com/matthewellis'>
91
- <img src='https://github.com/matthewellis.png' width='140px;'>
92
- </a>
93
- <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
94
- </td>
95
- <td id='iulian-onofrei'>
96
- <a href='https://github.com/revolter'>
97
- <img src='https://github.com/revolter.png' width='140px;'>
63
+ <td id='luka-mirosevic'>
64
+ <a href='https://github.com/lmirosevic'>
65
+ <img src='https://github.com/lmirosevic.png' width='140px;'>
98
66
  </a>
99
- <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
67
+ <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
100
68
  </td>
101
69
  </tr>
102
70
  <tr>
103
- <td id='danielle-tomlinson'>
104
- <a href='https://github.com/endocrimes'>
105
- <img src='https://github.com/endocrimes.png' width='140px;'>
106
- </a>
107
- <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
108
- </td>
109
- <td id='fumiya-nakamura'>
110
- <a href='https://github.com/nafu'>
111
- <img src='https://github.com/nafu.png' width='140px;'>
71
+ <td id='maksym-grebenets'>
72
+ <a href='https://github.com/mgrebenets'>
73
+ <img src='https://github.com/mgrebenets.png' width='140px;'>
112
74
  </a>
113
- <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
75
+ <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
114
76
  </td>
115
77
  <td id='olivier-halligon'>
116
78
  <a href='https://github.com/AliSoftware'>
@@ -118,31 +80,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
118
80
  </a>
119
81
  <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
120
82
  </td>
121
- <td id='jérôme-lacoste'>
122
- <a href='https://github.com/lacostej'>
123
- <img src='https://github.com/lacostej.png' width='140px;'>
83
+ <td id='connor-tumbleson'>
84
+ <a href='https://github.com/ibotpeaches'>
85
+ <img src='https://github.com/ibotpeaches.png' width='140px;'>
124
86
  </a>
125
- <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
87
+ <h4 align='center'><a href='https://twitter.com/ibotpeaches'>Connor Tumbleson</a></h4>
126
88
  </td>
127
- <td id='manu-wallner'>
128
- <a href='https://github.com/milch'>
129
- <img src='https://github.com/milch.png' width='140px;'>
89
+ <td id='satoshi-namai'>
90
+ <a href='https://github.com/ainame'>
91
+ <img src='https://github.com/ainame.png' width='140px;'>
130
92
  </a>
131
- <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
93
+ <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
132
94
  </td>
133
- </tr>
134
- <tr>
135
95
  <td id='jimmy-dee'>
136
96
  <a href='https://github.com/jdee'>
137
97
  <img src='https://github.com/jdee.png' width='140px;'>
138
98
  </a>
139
99
  <h4 align='center'>Jimmy Dee</h4>
140
100
  </td>
141
- <td id='satoshi-namai'>
142
- <a href='https://github.com/ainame'>
143
- <img src='https://github.com/ainame.png' width='140px;'>
101
+ </tr>
102
+ <tr>
103
+ <td id='helmut-januschka'>
104
+ <a href='https://github.com/hjanuschka'>
105
+ <img src='https://github.com/hjanuschka.png' width='140px;'>
144
106
  </a>
145
- <h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
107
+ <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
146
108
  </td>
147
109
  <td id='łukasz-grabowski'>
148
110
  <a href='https://github.com/lucgrabowski'>
@@ -150,11 +112,43 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
150
112
  </a>
151
113
  <h4 align='center'>Łukasz Grabowski</h4>
152
114
  </td>
153
- <td id='stefan-natchev'>
154
- <a href='https://github.com/snatchev'>
155
- <img src='https://github.com/snatchev.png' width='140px;'>
115
+ <td id='jorge-revuelta-h'>
116
+ <a href='https://github.com/minuscorp'>
117
+ <img src='https://github.com/minuscorp.png' width='140px;'>
156
118
  </a>
157
- <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
119
+ <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
120
+ </td>
121
+ <td id='felix-krause'>
122
+ <a href='https://github.com/KrauseFx'>
123
+ <img src='https://github.com/KrauseFx.png' width='140px;'>
124
+ </a>
125
+ <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
126
+ </td>
127
+ <td id='danielle-tomlinson'>
128
+ <a href='https://github.com/endocrimes'>
129
+ <img src='https://github.com/endocrimes.png' width='140px;'>
130
+ </a>
131
+ <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
132
+ </td>
133
+ </tr>
134
+ <tr>
135
+ <td id='matthew-ellis'>
136
+ <a href='https://github.com/matthewellis'>
137
+ <img src='https://github.com/matthewellis.png' width='140px;'>
138
+ </a>
139
+ <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
140
+ </td>
141
+ <td id='aaron-brager'>
142
+ <a href='https://github.com/getaaron'>
143
+ <img src='https://github.com/getaaron.png' width='140px;'>
144
+ </a>
145
+ <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
146
+ </td>
147
+ <td id='roger-oba'>
148
+ <a href='https://github.com/rogerluan'>
149
+ <img src='https://github.com/rogerluan.png' width='140px;'>
150
+ </a>
151
+ <h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
158
152
  </td>
159
153
  <td id='manish-rathi'>
160
154
  <a href='https://github.com/crazymanish'>
@@ -162,51 +156,57 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
162
156
  </a>
163
157
  <h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
164
158
  </td>
159
+ <td id='jérôme-lacoste'>
160
+ <a href='https://github.com/lacostej'>
161
+ <img src='https://github.com/lacostej.png' width='140px;'>
162
+ </a>
163
+ <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
164
+ </td>
165
165
  </tr>
166
166
  <tr>
167
- <td id='joshua-liebowitz'>
168
- <a href='https://github.com/taquitos'>
169
- <img src='https://github.com/taquitos.png' width='140px;'>
167
+ <td id='josh-holtz'>
168
+ <a href='https://github.com/joshdholtz'>
169
+ <img src='https://github.com/joshdholtz.png' width='140px;'>
170
170
  </a>
171
- <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
171
+ <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
172
172
  </td>
173
- <td id='daniel-jankowski'>
174
- <a href='https://github.com/mollyIV'>
175
- <img src='https://github.com/mollyIV.png' width='140px;'>
173
+ <td id='manu-wallner'>
174
+ <a href='https://github.com/milch'>
175
+ <img src='https://github.com/milch.png' width='140px;'>
176
176
  </a>
177
- <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
177
+ <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
178
178
  </td>
179
- <td id='jorge-revuelta-h'>
180
- <a href='https://github.com/minuscorp'>
181
- <img src='https://github.com/minuscorp.png' width='140px;'>
179
+ <td id='andrew-mcburney'>
180
+ <a href='https://github.com/armcburney'>
181
+ <img src='https://github.com/armcburney.png' width='140px;'>
182
182
  </a>
183
- <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
183
+ <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
184
184
  </td>
185
- <td id='jan-piotrowski'>
186
- <a href='https://github.com/janpio'>
187
- <img src='https://github.com/janpio.png' width='140px;'>
185
+ <td id='joshua-liebowitz'>
186
+ <a href='https://github.com/taquitos'>
187
+ <img src='https://github.com/taquitos.png' width='140px;'>
188
188
  </a>
189
- <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
189
+ <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
190
190
  </td>
191
- <td id='connor-tumbleson'>
192
- <a href='https://github.com/ibotpeaches'>
193
- <img src='https://github.com/ibotpeaches.png' width='140px;'>
191
+ <td id='kohki-miki'>
192
+ <a href='https://github.com/giginet'>
193
+ <img src='https://github.com/giginet.png' width='140px;'>
194
194
  </a>
195
- <h4 align='center'><a href='https://twitter.com/ibotpeaches'>Connor Tumbleson</a></h4>
195
+ <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
196
196
  </td>
197
197
  </tr>
198
198
  <tr>
199
- <td id='maksym-grebenets'>
200
- <a href='https://github.com/mgrebenets'>
201
- <img src='https://github.com/mgrebenets.png' width='140px;'>
199
+ <td id='jan-piotrowski'>
200
+ <a href='https://github.com/janpio'>
201
+ <img src='https://github.com/janpio.png' width='140px;'>
202
202
  </a>
203
- <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
203
+ <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
204
204
  </td>
205
- <td id='luka-mirosevic'>
206
- <a href='https://github.com/lmirosevic'>
207
- <img src='https://github.com/lmirosevic.png' width='140px;'>
205
+ <td id='iulian-onofrei'>
206
+ <a href='https://github.com/revolter'>
207
+ <img src='https://github.com/revolter.png' width='140px;'>
208
208
  </a>
209
- <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
209
+ <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
210
210
  </td>
211
211
  </table>
212
212
 
@@ -50,8 +50,12 @@ module CredentialsManager
50
50
  end
51
51
 
52
52
  unless @password
53
- item = Security::InternetPassword.find(server: server_name)
54
- @password ||= item.password if item
53
+ begin
54
+ item = Security::InternetPassword.find(server: server_name)
55
+ @password ||= item.password if item
56
+ rescue Security::Error => ex
57
+ puts("Could not read the Keychain entry for user '#{user}': #{ex.message}".yellow)
58
+ end
55
59
  end
56
60
  ask_for_login while ask_if_missing && @password.to_s.length == 0
57
61
  return @password
@@ -83,7 +83,9 @@ module Deliver
83
83
  if options[:ipa]
84
84
  options[:platform] ||= FastlaneCore::IpaFileAnalyser.fetch_app_platform(options[:ipa])
85
85
  elsif options[:pkg]
86
- options[:platform] = 'osx'
86
+ # :pkg defaults to any *.pkg in the current directory, so only infer
87
+ # osx from it when the user hasn't chosen a platform themselves
88
+ options[:platform] = 'osx' unless options.specified?(:platform)
87
89
  end
88
90
  end
89
91
 
@@ -1,3 +1,4 @@
1
+ require 'tmpdir'
1
2
  require 'precheck/options'
2
3
  require 'precheck/runner'
3
4
  require 'fastlane_core/configuration/configuration'
@@ -196,7 +197,7 @@ module Deliver
196
197
  package_path = FastlaneCore::IpaUploadPackageBuilder.new.generate(
197
198
  app_id: Deliver.cache[:app].id,
198
199
  ipa_path: ipa_path,
199
- package_path: "/tmp",
200
+ package_path: Dir.tmpdir,
200
201
  platform: platform
201
202
  )
202
203
  result = transporter.verify(package_path: package_path, asset_path: ipa_path, platform: platform)
@@ -204,7 +205,7 @@ module Deliver
204
205
  package_path = FastlaneCore::PkgUploadPackageBuilder.new.generate(
205
206
  app_id: Deliver.cache[:app].id,
206
207
  pkg_path: pkg_path,
207
- package_path: "/tmp",
208
+ package_path: Dir.tmpdir,
208
209
  platform: platform
209
210
  )
210
211
  result = transporter.verify(package_path: package_path, asset_path: pkg_path, platform: platform)
@@ -233,7 +234,7 @@ module Deliver
233
234
  package_path = FastlaneCore::IpaUploadPackageBuilder.new.generate(
234
235
  app_id: Deliver.cache[:app].id,
235
236
  ipa_path: ipa_path,
236
- package_path: "/tmp",
237
+ package_path: Dir.tmpdir,
237
238
  platform: platform
238
239
  )
239
240
  result = transporter.upload(package_path: package_path, asset_path: ipa_path, platform: platform)
@@ -241,7 +242,7 @@ module Deliver
241
242
  package_path = FastlaneCore::PkgUploadPackageBuilder.new.generate(
242
243
  app_id: Deliver.cache[:app].id,
243
244
  pkg_path: pkg_path,
244
- package_path: "/tmp",
245
+ package_path: Dir.tmpdir,
245
246
  platform: platform
246
247
  )
247
248
  result = transporter.upload(package_path: package_path, asset_path: pkg_path, platform: platform)
@@ -1,8 +1,10 @@
1
+ require 'tmpdir'
2
+
1
3
  module Fastlane
2
4
  module Actions
3
5
  class BuildAndUploadToAppetizeAction < Action
4
6
  def self.run(params)
5
- tmp_path = "/tmp/fastlane_build"
7
+ tmp_path = File.join(Dir.tmpdir, "fastlane_build")
6
8
 
7
9
  xcodebuild_configs = params[:xcodebuild]
8
10
  xcodebuild_configs[:sdk] = "iphonesimulator"
@@ -1,3 +1,5 @@
1
+ require 'tmpdir'
2
+
1
3
  module Fastlane
2
4
  module Actions
3
5
  class LcovAction < Action
@@ -42,7 +44,7 @@ module Fastlane
42
44
  end
43
45
 
44
46
  def self.gen_cov(options)
45
- tmp_cov_file = "/tmp/coverage.info"
47
+ tmp_cov_file = File.join(Dir.tmpdir, "coverage.info")
46
48
  output_dir = options[:output_dir]
47
49
  derived_data_path = derived_data_dir(options)
48
50
 
@@ -1,3 +1,5 @@
1
+ require 'tmpdir'
2
+
1
3
  module Fastlane
2
4
  module Actions
3
5
  class SpaceshipLogsAction < Action
@@ -8,8 +10,8 @@ module Fastlane
8
10
  copy_to_path = params[:copy_to_path]
9
11
  copy_to_clipboard = params[:copy_to_clipboard]
10
12
 
11
- # Get log files
12
- files = Dir.glob("/tmp/spaceship*.log").sort_by { |f| File.mtime(f) }.reverse
13
+ # Get log files, from wherever Spaceship::Client#logger writes them.
14
+ files = Dir.glob(File.join(Dir.tmpdir, "spaceship*.log")).sort_by { |f| File.mtime(f) }.reverse
13
15
 
14
16
  if files.size == 0
15
17
  UI.message("No Spaceship log files found")
@@ -44,7 +44,10 @@ module Fastlane
44
44
  begin
45
45
  Actions.sh(command)
46
46
  rescue
47
- handle_swiftlint_error(params[:ignore_exit_status], $?.exitstatus)
47
+ # $? is the status of the last subprocess this thread ran, not
48
+ # necessarily this one: nil when the command never launched, and stale
49
+ # when something else ran in between. Only report it when it is there.
50
+ handle_swiftlint_error(params[:ignore_exit_status], $?&.exitstatus)
48
51
  raise if params[:raise_if_swiftlint_error]
49
52
  end
50
53
  end
@@ -248,10 +251,10 @@ module Fastlane
248
251
  end
249
252
 
250
253
  UI.important("")
251
- UI.important("SwiftLint finished with exit code #{exit_status}, #{failure_suffix}")
254
+ UI.important("SwiftLint finished with exit code #{exit_status || 'unknown'}, #{failure_suffix}")
252
255
  UI.important(secondary_message)
253
256
  UI.important("")
254
- UI.user_error!("SwiftLint finished with errors (exit code: #{exit_status})") unless ignore_exit_status
257
+ UI.user_error!("SwiftLint finished with errors (exit code: #{exit_status || 'unknown'})") unless ignore_exit_status
255
258
  end
256
259
  end
257
260
  end
@@ -1,5 +1,7 @@
1
1
  # coding: utf-8
2
2
 
3
+ require 'tmpdir'
4
+
3
5
  module Fastlane
4
6
  module Actions
5
7
  module SharedValues
@@ -146,7 +148,7 @@ module Fastlane
146
148
  FastlaneCore::ConfigItem.new(key: :certificate,
147
149
  env_name: "FL_PROJECT_PROVISIONING_CERTIFICATE_PATH",
148
150
  description: "Path to apple root certificate",
149
- default_value: "/tmp/AppleIncRootCertificate.cer"),
151
+ default_value: File.join(Dir.tmpdir, "AppleIncRootCertificate.cer")),
150
152
  FastlaneCore::ConfigItem.new(key: :code_signing_identity,
151
153
  env_name: "FL_PROJECT_PROVISIONING_CODE_SIGN_IDENTITY",
152
154
  description: "Code sign identity for build configuration",
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.239.0'.freeze
2
+ VERSION = '2.240.1'.freeze
3
3
  SUMMARY = "The easiest way to build and release mobile apps.".freeze
4
4
  DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
5
5
  MINIMUM_XCODE_RELEASE = "7.0".freeze
@@ -17,4 +17,4 @@ public class Deliverfile: DeliverfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.239.0
20
+ // Generated with fastlane 2.240.1
@@ -539,4 +539,4 @@ public extension DeliverfileProtocol {
539
539
 
540
540
  // Please don't remove the lines below
541
541
  // They are used to detect outdated files
542
- // FastlaneRunnerAPIVersion [0.9.153]
542
+ // FastlaneRunnerAPIVersion [0.9.155]