fastlane 2.147.0 → 2.148.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +82 -82
  3. data/cert/lib/cert/commands_generator.rb +1 -0
  4. data/credentials_manager/lib/credentials_manager/cli.rb +2 -0
  5. data/deliver/lib/deliver/commands_generator.rb +1 -0
  6. data/deliver/lib/deliver/html_generator.rb +2 -2
  7. data/deliver/lib/deliver/submit_for_review.rb +5 -1
  8. data/fastlane/lib/fastlane/actions/crashlytics.rb +0 -4
  9. data/fastlane/lib/fastlane/actions/docs/build_app.md +1 -1
  10. data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +2 -2
  11. data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +12 -0
  12. data/fastlane/lib/fastlane/actions/get_managed_play_store_publishing_rights.rb +1 -1
  13. data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +1 -1
  14. data/fastlane/lib/fastlane/actions/swiftlint.rb +14 -0
  15. data/fastlane/lib/fastlane/actions/sync_code_signing.rb +1 -1
  16. data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +1 -1
  17. data/fastlane/lib/fastlane/actions/xcodebuild.rb +4 -4
  18. data/fastlane/lib/fastlane/cli_tools_distributor.rb +28 -6
  19. data/fastlane/lib/fastlane/commands_generator.rb +1 -1
  20. data/fastlane/lib/fastlane/lane_manager.rb +0 -10
  21. data/fastlane/lib/fastlane/plugins/plugin_manager.rb +2 -2
  22. data/fastlane/lib/fastlane/swift_lane_manager.rb +0 -8
  23. data/fastlane/lib/fastlane/version.rb +1 -1
  24. data/fastlane/swift/Deliverfile.swift +1 -1
  25. data/fastlane/swift/Fastlane.swift +68 -15
  26. data/fastlane/swift/Gymfile.swift +1 -1
  27. data/fastlane/swift/LaneFileProtocol.swift +5 -2
  28. data/fastlane/swift/Matchfile.swift +1 -1
  29. data/fastlane/swift/MatchfileProtocol.swift +5 -1
  30. data/fastlane/swift/Precheckfile.swift +1 -1
  31. data/fastlane/swift/Scanfile.swift +1 -1
  32. data/fastlane/swift/ScanfileProtocol.swift +9 -1
  33. data/fastlane/swift/Screengrabfile.swift +1 -1
  34. data/fastlane/swift/Snapshotfile.swift +1 -1
  35. data/fastlane/swift/SnapshotfileProtocol.swift +9 -1
  36. data/frameit/lib/frameit/commands_generator.rb +1 -0
  37. data/gym/lib/gym/generators/package_command_generator.rb +4 -0
  38. data/gym/lib/gym/generators/package_command_generator_xcode7.rb +4 -0
  39. data/gym/lib/gym/runner.rb +14 -0
  40. data/match/lib/match/commands_generator.rb +1 -0
  41. data/match/lib/match/generator.rb +2 -1
  42. data/match/lib/match/options.rb +18 -1
  43. data/pem/lib/pem/commands_generator.rb +1 -0
  44. data/pilot/lib/pilot/build_manager.rb +23 -7
  45. data/pilot/lib/pilot/options.rb +5 -0
  46. data/produce/lib/produce/commands_generator.rb +1 -0
  47. data/scan/lib/scan/detect_values.rb +3 -0
  48. data/scan/lib/scan/options.rb +19 -1
  49. data/scan/lib/scan/test_command_generator.rb +6 -1
  50. data/screengrab/lib/screengrab/runner.rb +10 -9
  51. data/sigh/lib/sigh/commands_generator.rb +1 -0
  52. data/sigh/lib/sigh/options.rb +7 -1
  53. data/sigh/lib/sigh/runner.rb +2 -1
  54. data/snapshot/lib/assets/SnapshotHelper.swift +12 -33
  55. data/snapshot/lib/snapshot/.options.rb.swp +0 -0
  56. data/snapshot/lib/snapshot/.test_command_generator_base.rb.swp +0 -0
  57. data/snapshot/lib/snapshot/detect_values.rb +15 -0
  58. data/snapshot/lib/snapshot/options.rb +22 -1
  59. data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +3 -1
  60. data/snapshot/lib/snapshot/test_command_generator_base.rb +7 -1
  61. data/spaceship/lib/spaceship/commands_generator.rb +1 -0
  62. data/spaceship/lib/spaceship/connect_api/models/build.rb +4 -0
  63. data/supply/lib/supply/commands_generator.rb +1 -0
  64. data/supply/lib/supply/options.rb +9 -0
  65. data/supply/lib/supply/uploader.rb +4 -0
  66. metadata +25 -24
  67. data/supply/lib/supply/.client.rb.swp +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0bf4c8ac33bb5351c05ee6b2c04c193b206c90348e9bc6ffd048c9f31b42785c
4
- data.tar.gz: a52d63e8b602d173b5c41913c08e9e4995749b023b2e8364460d987757a3d6cd
3
+ metadata.gz: e52174fca031a1354ef266d0115af976073559fb5df38d653d12e80e0c7f1d80
4
+ data.tar.gz: c35acfea1e85651b11715ed5c65031901ebf4f27af7040a7c9d51bc3a98b665f
5
5
  SHA512:
6
- metadata.gz: 3b5bdab3f6410a68b90b5086cb18a67434f2a572dee70a18b21bd034fcaa48783e933b7c5c888dbd749efe5250715aca42d88da73d036adaf347ed10c3b1a9c0
7
- data.tar.gz: 3274baacd53911b6975b144771b18f33c58a7d25a4ef61f1d5791fbf31c30491967824780d4f89b54b9f08ff7f44a2e28a32ae62d70ba785cb1bfb2ae4ad66c6
6
+ metadata.gz: 592bc1a051f1ed0c64138e92eb3eb8abb5085156d4d0cfd7d85f10e0e2d0c08a13ad06fbbbd93221454753ff17d5fcad3c28e8ee5df03b3c367062661eaa71de
7
+ data.tar.gz: 258865c997cc7be2e60f8face998ea89f0b2a31124dc38cc74cc8ae1aa6bf2c5313ae36898b19732b1ebb41bd2366e84983e50e524e239c58901f665f6ba97b8
data/README.md CHANGED
@@ -34,29 +34,17 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
34
34
  <!-- This table is regenerated and resorted on each release -->
35
35
  <table id='team'>
36
36
  <tr>
37
- <td id='aaron-brager'>
38
- <a href='https://github.com/getaaron'>
39
- <img src='https://github.com/getaaron.png?size=140'>
40
- </a>
41
- <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
42
- </td>
43
- <td id='jorge-revuelta-h'>
44
- <a href='https://github.com/minuscorp'>
45
- <img src='https://github.com/minuscorp.png?size=140'>
46
- </a>
47
- <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
48
- </td>
49
- <td id='josh-holtz'>
50
- <a href='https://github.com/joshdholtz'>
51
- <img src='https://github.com/joshdholtz.png?size=140'>
37
+ <td id='fumiya-nakamura'>
38
+ <a href='https://github.com/nafu'>
39
+ <img src='https://github.com/nafu.png?size=140'>
52
40
  </a>
53
- <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
41
+ <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
54
42
  </td>
55
- <td id='luka-mirosevic'>
56
- <a href='https://github.com/lmirosevic'>
57
- <img src='https://github.com/lmirosevic.png?size=140'>
43
+ <td id='maksym-grebenets'>
44
+ <a href='https://github.com/mgrebenets'>
45
+ <img src='https://github.com/mgrebenets.png?size=140'>
58
46
  </a>
59
- <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
47
+ <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
60
48
  </td>
61
49
  <td id='daniel-jankowski'>
62
50
  <a href='https://github.com/mollyIV'>
@@ -64,57 +52,37 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
64
52
  </a>
65
53
  <h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
66
54
  </td>
67
- </tr>
68
- <tr>
69
- <td id='jimmy-dee'>
70
- <a href='https://github.com/jdee'>
71
- <img src='https://github.com/jdee.png?size=140'>
72
- </a>
73
- <h4 align='center'>Jimmy Dee</h4>
74
- </td>
75
- <td id='manu-wallner'>
76
- <a href='https://github.com/milch'>
77
- <img src='https://github.com/milch.png?size=140'>
78
- </a>
79
- <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
80
- </td>
81
- <td id='fumiya-nakamura'>
82
- <a href='https://github.com/nafu'>
83
- <img src='https://github.com/nafu.png?size=140'>
84
- </a>
85
- <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
86
- </td>
87
- <td id='iulian-onofrei'>
88
- <a href='https://github.com/revolter'>
89
- <img src='https://github.com/revolter.png?size=140'>
55
+ <td id='kohki-miki'>
56
+ <a href='https://github.com/giginet'>
57
+ <img src='https://github.com/giginet.png?size=140'>
90
58
  </a>
91
- <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
59
+ <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
92
60
  </td>
93
- <td id='stefan-natchev'>
94
- <a href='https://github.com/snatchev'>
95
- <img src='https://github.com/snatchev.png?size=140'>
61
+ <td id='danielle-tomlinson'>
62
+ <a href='https://github.com/endocrimes'>
63
+ <img src='https://github.com/endocrimes.png?size=140'>
96
64
  </a>
97
- <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
65
+ <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
98
66
  </td>
99
67
  </tr>
100
68
  <tr>
101
- <td id='max-ott'>
102
- <a href='https://github.com/max-ott'>
103
- <img src='https://github.com/max-ott.png?size=140'>
104
- </a>
105
- <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
106
- </td>
107
69
  <td id='jérôme-lacoste'>
108
70
  <a href='https://github.com/lacostej'>
109
71
  <img src='https://github.com/lacostej.png?size=140'>
110
72
  </a>
111
73
  <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
112
74
  </td>
113
- <td id='danielle-tomlinson'>
114
- <a href='https://github.com/endocrimes'>
115
- <img src='https://github.com/endocrimes.png?size=140'>
75
+ <td id='jan-piotrowski'>
76
+ <a href='https://github.com/janpio'>
77
+ <img src='https://github.com/janpio.png?size=140'>
116
78
  </a>
117
- <h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
79
+ <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
80
+ </td>
81
+ <td id='joshua-liebowitz'>
82
+ <a href='https://github.com/taquitos'>
83
+ <img src='https://github.com/taquitos.png?size=140'>
84
+ </a>
85
+ <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
118
86
  </td>
119
87
  <td id='felix-krause'>
120
88
  <a href='https://github.com/KrauseFx'>
@@ -122,25 +90,25 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
122
90
  </a>
123
91
  <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
124
92
  </td>
125
- <td id='maksym-grebenets'>
126
- <a href='https://github.com/mgrebenets'>
127
- <img src='https://github.com/mgrebenets.png?size=140'>
93
+ <td id='matthew-ellis'>
94
+ <a href='https://github.com/matthewellis'>
95
+ <img src='https://github.com/matthewellis.png?size=140'>
128
96
  </a>
129
- <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
97
+ <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
130
98
  </td>
131
99
  </tr>
132
100
  <tr>
133
- <td id='kohki-miki'>
134
- <a href='https://github.com/giginet'>
135
- <img src='https://github.com/giginet.png?size=140'>
101
+ <td id='josh-holtz'>
102
+ <a href='https://github.com/joshdholtz'>
103
+ <img src='https://github.com/joshdholtz.png?size=140'>
136
104
  </a>
137
- <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
105
+ <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
138
106
  </td>
139
- <td id='jan-piotrowski'>
140
- <a href='https://github.com/janpio'>
141
- <img src='https://github.com/janpio.png?size=140'>
107
+ <td id='iulian-onofrei'>
108
+ <a href='https://github.com/revolter'>
109
+ <img src='https://github.com/revolter.png?size=140'>
142
110
  </a>
143
- <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
111
+ <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
144
112
  </td>
145
113
  <td id='helmut-januschka'>
146
114
  <a href='https://github.com/hjanuschka'>
@@ -148,25 +116,43 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
148
116
  </a>
149
117
  <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
150
118
  </td>
151
- <td id='matthew-ellis'>
152
- <a href='https://github.com/matthewellis'>
153
- <img src='https://github.com/matthewellis.png?size=140'>
119
+ <td id='luka-mirosevic'>
120
+ <a href='https://github.com/lmirosevic'>
121
+ <img src='https://github.com/lmirosevic.png?size=140'>
154
122
  </a>
155
- <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
123
+ <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
156
124
  </td>
157
- <td id='andrew-mcburney'>
158
- <a href='https://github.com/armcburney'>
159
- <img src='https://github.com/armcburney.png?size=140'>
125
+ <td id='stefan-natchev'>
126
+ <a href='https://github.com/snatchev'>
127
+ <img src='https://github.com/snatchev.png?size=140'>
160
128
  </a>
161
- <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
129
+ <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
162
130
  </td>
163
131
  </tr>
164
132
  <tr>
165
- <td id='joshua-liebowitz'>
166
- <a href='https://github.com/taquitos'>
167
- <img src='https://github.com/taquitos.png?size=140'>
133
+ <td id='jorge-revuelta-h'>
134
+ <a href='https://github.com/minuscorp'>
135
+ <img src='https://github.com/minuscorp.png?size=140'>
168
136
  </a>
169
- <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
137
+ <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
138
+ </td>
139
+ <td id='jimmy-dee'>
140
+ <a href='https://github.com/jdee'>
141
+ <img src='https://github.com/jdee.png?size=140'>
142
+ </a>
143
+ <h4 align='center'>Jimmy Dee</h4>
144
+ </td>
145
+ <td id='manu-wallner'>
146
+ <a href='https://github.com/milch'>
147
+ <img src='https://github.com/milch.png?size=140'>
148
+ </a>
149
+ <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
150
+ </td>
151
+ <td id='andrew-mcburney'>
152
+ <a href='https://github.com/armcburney'>
153
+ <img src='https://github.com/armcburney.png?size=140'>
154
+ </a>
155
+ <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
170
156
  </td>
171
157
  <td id='olivier-halligon'>
172
158
  <a href='https://github.com/AliSoftware'>
@@ -174,6 +160,20 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
174
160
  </a>
175
161
  <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
176
162
  </td>
163
+ </tr>
164
+ <tr>
165
+ <td id='aaron-brager'>
166
+ <a href='https://github.com/getaaron'>
167
+ <img src='https://github.com/getaaron.png?size=140'>
168
+ </a>
169
+ <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
170
+ </td>
171
+ <td id='max-ott'>
172
+ <a href='https://github.com/max-ott'>
173
+ <img src='https://github.com/max-ott.png?size=140'>
174
+ </a>
175
+ <h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
176
+ </td>
177
177
  </table>
178
178
 
179
179
  Special thanks to all [contributors](https://github.com/fastlane/fastlane/graphs/contributors) for extending and improving _fastlane_.
@@ -26,6 +26,7 @@ module Cert
26
26
  program :help_formatter, :compact
27
27
 
28
28
  global_option('--verbose') { FastlaneCore::Globals.verbose = true }
29
+ global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')
29
30
 
30
31
  command :create do |c|
31
32
  c.syntax = 'fastlane cert create'
@@ -12,6 +12,8 @@ module CredentialsManager
12
12
  program :version, Fastlane::VERSION
13
13
  program :description, 'Manage credentials for fastlane tools.'
14
14
 
15
+ global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')
16
+
15
17
  # Command to add entry to Keychain
16
18
  command :add do |c|
17
19
  c.syntax = 'fastlane fastlane-credentials add'
@@ -50,6 +50,7 @@ module Deliver
50
50
  program :help_formatter, :compact
51
51
 
52
52
  global_option('--verbose') { FastlaneCore::Globals.verbose = true }
53
+ global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')
53
54
 
54
55
  always_trace!
55
56
 
@@ -35,8 +35,8 @@ module Deliver
35
35
  # Returns a path relative to FastlaneFolder.path
36
36
  # This is needed as the Preview.html file is located inside FastlaneFolder.path
37
37
  def render_relative_path(export_path, path)
38
- export_path = Pathname.new(export_path)
39
- path = Pathname.new(path).relative_path_from(export_path)
38
+ export_path = Pathname.new(File.expand_path(export_path))
39
+ path = Pathname.new(File.expand_path(path)).relative_path_from(export_path)
40
40
  return path.to_path
41
41
  end
42
42
 
@@ -36,7 +36,11 @@ module Deliver
36
36
 
37
37
  if options[:build_number] && options[:build_number] != "latest"
38
38
  UI.message("Selecting existing build-number: #{options[:build_number]}")
39
- build = v.candidate_builds.detect { |a| a.build_version == options[:build_number] }
39
+ if app_version
40
+ build = v.candidate_builds.detect { |a| a.build_version == options[:build_number] && a.train_version == app_version }
41
+ else
42
+ build = v.candidate_builds.detect { |a| a.build_version == options[:build_number] }
43
+ end
40
44
  unless build
41
45
  UI.user_error!("Build number: #{options[:build_number]} does not exist")
42
46
  end
@@ -169,10 +169,6 @@ module Fastlane
169
169
 
170
170
  def self.details
171
171
  [
172
- "Crashlytics Beta has been deprecated and replaced with Firebase App Distribution.",
173
- "Beta will continue working until May 4, 2020.",
174
- "Check out the [Firebase App Distribution docs](https://github.com/fastlane/fastlane-plugin-firebase_app_distribution) to get started.",
175
- "",
176
172
  "Additionally, you can specify `notes`, `emails`, `groups` and `notifications`.",
177
173
  "Distributing to Groups: When using the `groups` parameter, it's important to use the group **alias** names for each group you'd like to distribute to. A group's alias can be found in the web UI. If you're viewing the Beta page, you can open the groups dialog by clicking the 'Manage Groups' button.",
178
174
  "This action uses the `submit` binary provided by the Crashlytics framework. If the binary is not found in its usual path, you'll need to specify the path manually by using the `crashlytics_path` option."
@@ -158,7 +158,7 @@ build_app(
158
158
  )
159
159
  ```
160
160
 
161
- **Note**: If you use [_fastlane_](https://fastlane.tools) with [_match_](https://fastlane.tools/match) you don't need to provide those values manually.
161
+ **Note**: If you use [_fastlane_](https://fastlane.tools) with [_match_](https://fastlane.tools/match) you don't need to provide those values manually, unless you pass a plist file into `export_options`
162
162
 
163
163
  For the list of available options run `xcodebuild -help`.
164
164
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  ###### Easily sync your certificates and profiles across your team
6
6
 
7
- A new approach to iOS code signing: Share one code signing identity across your development team to simplify your codesigning setup and prevent code signing issues.
7
+ A new approach to iOS and macOS code signing: Share one code signing identity across your development team to simplify your codesigning setup and prevent code signing issues.
8
8
 
9
9
  _match_ is the implementation of the [codesigning.guide concept](https://codesigning.guide). _match_ creates all required certificates & provisioning profiles and stores them in a separate git repository, Google Cloud, or Amazon S3. Every team member with access to the selected storage can use those credentials for code signing. _match_ also automatically repairs broken and expired credentials. It's the easiest way to share signing credentials across teams
10
10
 
@@ -49,7 +49,7 @@ For more information about the concept, visit [codesigning.guide](https://codesi
49
49
 
50
50
  | | match |
51
51
  |----------|---------|
52
- 🔄 | Automatically sync your iOS keys and profiles across all your team members using git
52
+ 🔄 | Automatically sync your iOS and macOS keys and profiles across all your team members using git
53
53
  📦 | Handle all the heavy lifting of creating and storing your certificates and profiles
54
54
  💻 | Setup codesigning on a new machine in under a minute
55
55
  🎯 | Designed to work with apps with multiple targets and bundle identifiers
@@ -78,6 +78,12 @@ To gradually roll out a new build use
78
78
  fastlane supply --apk path/app.apk --track beta --rollout 0.5
79
79
  ```
80
80
 
81
+ To set the in-app update priority level for a release, set a valid update priority (an integer value from 0 to 5) using option `in_app_update_priority`
82
+
83
+ ```no-highlight
84
+ fastlane supply --apk path/app.apk --track beta --in_app_update_priority 3
85
+ ```
86
+
81
87
  ### Expansion files (`.obb`)
82
88
 
83
89
  Expansion files (obbs) found under the same directory as your APK will also be uploaded together with your APK as long as:
@@ -113,6 +119,12 @@ To gradually roll out a new build use
113
119
  fastlane supply --aab path/app.aab --track beta --rollout 0.5
114
120
  ```
115
121
 
122
+ To set the in-app update priority level for a release, set a valid update priority (an integer value from 0 to 5) using option `in_app_update_priority`
123
+
124
+ ```no-highlight
125
+ fastlane supply --aab path/app.aab --track beta --in_app_update_priority 3
126
+ ```
127
+
116
128
  ## Images and Screenshots
117
129
 
118
130
  After running `fastlane supply init`, you will have a metadata directory. This directory contains one or more locale directories (e.g. en-US, en-GB, etc.), and inside this directory are text files such as `title.txt` and `short_description.txt`.
@@ -26,7 +26,7 @@ module Fastlane
26
26
  # Login
27
27
  credentials = JSON.parse(json_key_data)
28
28
  callback_uri = 'https://fastlane.github.io/managed_google_play-callback/callback.html'
29
- uri = "https://play.google.com/apps/publish/delegatePrivateApp?service_account=#{credentials['client_email']}&continueUrl=#{URI.escape(callback_uri)}"
29
+ uri = "https://play.google.com/apps/publish/delegatePrivateApp?service_account=#{credentials['client_email']}&continueUrl=#{URI.encode_www_form_component(callback_uri)}"
30
30
 
31
31
  UI.message("To obtain publishing rights for custom apps on Managed Play Store, open the following URL and log in:")
32
32
  UI.message("")
@@ -5,7 +5,7 @@ module Fastlane
5
5
  def self.run(params)
6
6
  local_branch = params[:local_branch]
7
7
  local_branch ||= Actions.git_branch.gsub(%r{#{params[:remote]}\/}, '') if Actions.git_branch
8
- local_branch ||= 'master'
8
+ UI.user_error!('Failed to get the current branch.') unless local_branch
9
9
 
10
10
  remote_branch = params[:remote_branch] || local_branch
11
11
 
@@ -88,11 +88,13 @@ module Fastlane
88
88
  def self.available_options
89
89
  [
90
90
  FastlaneCore::ConfigItem.new(key: :mode,
91
+ env_name: "FL_SWIFTLINT_MODE",
91
92
  description: "SwiftLint mode: :lint, :autocorrect or :analyze",
92
93
  is_string: false,
93
94
  default_value: :lint,
94
95
  optional: true),
95
96
  FastlaneCore::ConfigItem.new(key: :path,
97
+ env_name: "FL_SWIFTLINT_PATH",
96
98
  description: "Specify path to lint",
97
99
  is_string: true,
98
100
  optional: true,
@@ -100,22 +102,27 @@ module Fastlane
100
102
  UI.user_error!("Couldn't find path '#{File.expand_path(value)}'") unless File.exist?(value)
101
103
  end),
102
104
  FastlaneCore::ConfigItem.new(key: :output_file,
105
+ env_name: "FL_SWIFTLINT_OUTPUT_FILE",
103
106
  description: 'Path to output SwiftLint result',
104
107
  optional: true),
105
108
  FastlaneCore::ConfigItem.new(key: :config_file,
109
+ env_name: "FL_SWIFTLINT_CONFIG_FILE",
106
110
  description: 'Custom configuration file of SwiftLint',
107
111
  optional: true),
108
112
  FastlaneCore::ConfigItem.new(key: :strict,
113
+ env_name: "FL_SWIFTLINT_STRICT",
109
114
  description: 'Fail on warnings? (true/false)',
110
115
  default_value: false,
111
116
  is_string: false,
112
117
  type: Boolean,
113
118
  optional: true),
114
119
  FastlaneCore::ConfigItem.new(key: :files,
120
+ env_name: "FL_SWIFTLINT_FILES",
115
121
  description: 'List of files to process',
116
122
  is_string: false,
117
123
  optional: true),
118
124
  FastlaneCore::ConfigItem.new(key: :ignore_exit_status,
125
+ env_name: "FL_SWIFTLINT_IGNORE_EXIT_STATUS",
119
126
  description: "Ignore the exit status of the SwiftLint command, so that serious violations \
120
127
  don't fail the build (true/false)",
121
128
  default_value: false,
@@ -123,6 +130,7 @@ module Fastlane
123
130
  type: Boolean,
124
131
  optional: true),
125
132
  FastlaneCore::ConfigItem.new(key: :raise_if_swiftlint_error,
133
+ env_name: "FL_SWIFTLINT_RAISE_IF_SWIFTLINT_ERROR",
126
134
  description: "Raises an error if swiftlint fails, so you can fail CI/CD jobs if necessary \
127
135
  (true/false)",
128
136
  default_value: false,
@@ -130,6 +138,7 @@ module Fastlane
130
138
  type: Boolean,
131
139
  optional: true),
132
140
  FastlaneCore::ConfigItem.new(key: :reporter,
141
+ env_name: "FL_SWIFTLINT_REPORTER",
133
142
  description: "Choose output reporter. Available: xcode, json, csv, checkstyle, junit, html, \
134
143
  emoji, sonarqube, markdown, github-actions-logging",
135
144
  is_string: true,
@@ -139,28 +148,33 @@ module Fastlane
139
148
  UI.user_error!("Available values are '#{available.join("', '")}'") unless available.include?(value)
140
149
  end),
141
150
  FastlaneCore::ConfigItem.new(key: :quiet,
151
+ env_name: "FL_SWIFTLINT_QUIET",
142
152
  description: "Don't print status logs like 'Linting <file>' & 'Done linting'",
143
153
  default_value: false,
144
154
  is_string: false,
145
155
  type: Boolean,
146
156
  optional: true),
147
157
  FastlaneCore::ConfigItem.new(key: :executable,
158
+ env_name: "FL_SWIFTLINT_EXECUTABLE",
148
159
  description: "Path to the `swiftlint` executable on your machine",
149
160
  is_string: true,
150
161
  optional: true),
151
162
  FastlaneCore::ConfigItem.new(key: :format,
163
+ env_name: "FL_SWIFTLINT_FORMAT",
152
164
  description: "Format code when mode is :autocorrect",
153
165
  default_value: false,
154
166
  is_string: false,
155
167
  type: Boolean,
156
168
  optional: true),
157
169
  FastlaneCore::ConfigItem.new(key: :no_cache,
170
+ env_name: "FL_SWIFTLINT_NO_CACHE",
158
171
  description: "Ignore the cache when mode is :autocorrect or :lint",
159
172
  default_value: false,
160
173
  is_string: false,
161
174
  type: Boolean,
162
175
  optional: true),
163
176
  FastlaneCore::ConfigItem.new(key: :compiler_log_path,
177
+ env_name: "FL_SWIFTLINT_COMPILER_LOG_PATH",
164
178
  description: "Compiler log path when mode is :analyze",
165
179
  is_string: true,
166
180
  optional: true,