fastlane 1.105.2 → 1.105.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/.DS_Store +0 -0
- data/lib/assets/.DS_Store +0 -0
- data/lib/assets/completions/.DS_Store +0 -0
- data/lib/fastlane/.DS_Store +0 -0
- data/lib/fastlane/actions/.DS_Store +0 -0
- data/lib/fastlane/actions/badge.rb +15 -0
- data/lib/fastlane/actions/crashlytics.rb +1 -1
- data/lib/fastlane/actions/device_grid/.DS_Store +0 -0
- data/lib/fastlane/actions/set_github_release.rb +3 -2
- data/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +1 -1
- data/lib/fastlane/lane_manager.rb +6 -0
- data/lib/fastlane/plugins/plugin_info.rb +3 -1
- data/lib/fastlane/plugins/plugin_info_collector.rb +21 -1
- data/lib/fastlane/plugins/template/.rubocop.yml +36 -0
- data/lib/fastlane/plugins/template/lib/fastlane/plugin/%plugin_name%/actions/%plugin_name%_action.rb.erb +9 -0
- data/lib/fastlane/version.rb +1 -1
- metadata +24 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: da5ecd261ef3458981590b6615a7b3792cf38878
|
4
|
+
data.tar.gz: b94708d6fe39e77647cad23e216fcb3fada423e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: be576aed7bab0da1a505f6304cf77bbe938f964b75dcf7cb773167a15723b5bb45e8860639acdbfe92747ea8e9c9a33cba97ca02f9e6350281d27a0808e995bc
|
7
|
+
data.tar.gz: 8ce022ea7257265780fd6621acb86b0be0a3d882e182a031ba39611de98640a9f45a3ff2e350e89db819023a3c7e13b0dc280372f481e3f3482bea3efae624a4
|
data/lib/.DS_Store
CHANGED
Binary file
|
Binary file
|
Binary file
|
data/lib/fastlane/.DS_Store
CHANGED
Binary file
|
Binary file
|
@@ -3,6 +3,7 @@ module Fastlane
|
|
3
3
|
class BadgeAction < Action
|
4
4
|
def self.run(params)
|
5
5
|
Actions.verify_gem!('badge')
|
6
|
+
check_imagemagick!
|
6
7
|
require 'badge'
|
7
8
|
options = {
|
8
9
|
dark: params[:dark],
|
@@ -140,6 +141,20 @@ module Fastlane
|
|
140
141
|
def self.is_supported?(platform)
|
141
142
|
[:ios, :mac, :android].include?(platform)
|
142
143
|
end
|
144
|
+
|
145
|
+
def self.check_imagemagick!
|
146
|
+
return if `which convert`.include?('convert')
|
147
|
+
|
148
|
+
UI.error("You have to install ImageMagick to use `badge`")
|
149
|
+
UI.error("")
|
150
|
+
UI.error("Install it using:")
|
151
|
+
UI.command("brew update && brew install imagemagick")
|
152
|
+
UI.error("")
|
153
|
+
UI.error("If you don't have homebrew, visit http://brew.sh")
|
154
|
+
|
155
|
+
UI.user_error!("Install ImageMagick and start your lane again!")
|
156
|
+
end
|
157
|
+
private_class_method :check_imagemagick!
|
143
158
|
end
|
144
159
|
end
|
145
160
|
end
|
@@ -101,7 +101,7 @@ module Fastlane
|
|
101
101
|
end),
|
102
102
|
FastlaneCore::ConfigItem.new(key: :api_token,
|
103
103
|
env_name: "CRASHLYTICS_API_TOKEN",
|
104
|
-
description: "Crashlytics
|
104
|
+
description: "Crashlytics API Key",
|
105
105
|
verify_block: proc do |value|
|
106
106
|
UI.user_error!("No API token for Crashlytics given, pass using `api_token: 'token'`") unless value && !value.empty?
|
107
107
|
end),
|
Binary file
|
@@ -65,10 +65,10 @@ module Fastlane
|
|
65
65
|
UI.error("Release on tag #{params[:tag_name]} already exists!")
|
66
66
|
when 404
|
67
67
|
UI.error(response.body)
|
68
|
-
UI.user_error!("Repository #{params[:repository_name]} cannot be found, please double check its name and that you provided a valid API token (
|
68
|
+
UI.user_error!("Repository #{params[:repository_name]} cannot be found, please double check its name and that you provided a valid API token (GITHUB_API_TOKEN)")
|
69
69
|
when 401
|
70
70
|
UI.error(response.body)
|
71
|
-
UI.user_error!("You are not authorized to access #{params[:repository_name]}, please make sure you provided a valid API token
|
71
|
+
UI.user_error!("You are not authorized to access #{params[:repository_name]}, please make sure you provided a valid API token (GITHUB_API_TOKEN)")
|
72
72
|
else
|
73
73
|
if response[:status] != 200
|
74
74
|
UI.error("GitHub responded with #{response[:status]}:#{response[:body]}")
|
@@ -188,6 +188,7 @@ module Fastlane
|
|
188
188
|
env_name: "FL_GITHUB_RELEASE_API_TOKEN",
|
189
189
|
description: "Personal API Token for GitHub - generate one at https://github.com/settings/tokens",
|
190
190
|
is_string: true,
|
191
|
+
default_value: ENV["GITHUB_API_TOKEN"],
|
191
192
|
optional: false),
|
192
193
|
FastlaneCore::ConfigItem.new(key: :tag_name,
|
193
194
|
env_name: "FL_SET_GITHUB_RELEASE_TAG_NAME",
|
@@ -114,7 +114,7 @@ module Fastlane
|
|
114
114
|
FastlaneCore::ConfigItem.new(key: :api_token,
|
115
115
|
env_name: "CRASHLYTICS_API_TOKEN",
|
116
116
|
optional: true,
|
117
|
-
description: "Crashlytics
|
117
|
+
description: "Crashlytics API Key",
|
118
118
|
verify_block: proc do |value|
|
119
119
|
UI.user_error!("No API token for Crashlytics given, pass using `api_token: 'token'`") if value.to_s.length == 0
|
120
120
|
end),
|
@@ -38,6 +38,12 @@ module Fastlane
|
|
38
38
|
|
39
39
|
platform, lane = choose_lane(ff, platform) unless lane
|
40
40
|
|
41
|
+
# xcodeproj has a bug in certain versions that causes it to change directories
|
42
|
+
# and not return to the original working directory
|
43
|
+
# https://github.com/CocoaPods/Xcodeproj/issues/426
|
44
|
+
# Setting this environment variable causes xcodeproj to work around the problem
|
45
|
+
ENV["FORK_XCODE_WRITING"] = "true" unless platform == 'android'
|
46
|
+
|
41
47
|
load_dot_env(env)
|
42
48
|
|
43
49
|
started = Time.now
|
@@ -5,12 +5,14 @@ module Fastlane
|
|
5
5
|
attr_reader :gem_name
|
6
6
|
attr_reader :email
|
7
7
|
attr_reader :summary
|
8
|
+
attr_reader :details
|
8
9
|
|
9
|
-
def initialize(plugin_name, author, email, summary)
|
10
|
+
def initialize(plugin_name, author, email, summary, details)
|
10
11
|
@plugin_name = plugin_name
|
11
12
|
@author = author
|
12
13
|
@email = email
|
13
14
|
@summary = summary
|
15
|
+
@details = details
|
14
16
|
end
|
15
17
|
|
16
18
|
def gem_name
|
@@ -9,8 +9,9 @@ module Fastlane
|
|
9
9
|
author = collect_author(detect_author)
|
10
10
|
email = collect_email(detect_email)
|
11
11
|
summary = collect_summary
|
12
|
+
details = collect_details
|
12
13
|
|
13
|
-
PluginInfo.new(plugin_name, author, email, summary)
|
14
|
+
PluginInfo.new(plugin_name, author, email, summary, details)
|
14
15
|
end
|
15
16
|
|
16
17
|
#
|
@@ -147,5 +148,24 @@ module Fastlane
|
|
147
148
|
def summary_valid?(summary)
|
148
149
|
!summary.to_s.strip.empty?
|
149
150
|
end
|
151
|
+
#
|
152
|
+
# Summary
|
153
|
+
#
|
154
|
+
|
155
|
+
def collect_details
|
156
|
+
details = nil
|
157
|
+
loop do
|
158
|
+
details = @ui.input("\nPlease enter a detailed description of this fastlane plugin:")
|
159
|
+
break if details_valid?(details)
|
160
|
+
|
161
|
+
@ui.message('A detailed description is required.')
|
162
|
+
end
|
163
|
+
|
164
|
+
details
|
165
|
+
end
|
166
|
+
|
167
|
+
def details_valid?(details)
|
168
|
+
!details.to_s.strip.empty?
|
169
|
+
end
|
150
170
|
end
|
151
171
|
end
|
@@ -2,6 +2,42 @@
|
|
2
2
|
Style/ClassCheck:
|
3
3
|
EnforcedStyle: kind_of?
|
4
4
|
|
5
|
+
# .length == 0 is also good, we don't always want .zero?
|
6
|
+
Style/NumericPredicate:
|
7
|
+
Enabled: false
|
8
|
+
|
9
|
+
# this would cause errors with long lanes
|
10
|
+
Metrics/BlockLength:
|
11
|
+
Enabled: false
|
12
|
+
|
13
|
+
# certificate_1 is an okay variable name
|
14
|
+
Style/VariableNumber:
|
15
|
+
Enabled: false
|
16
|
+
|
17
|
+
# This is used a lot across the fastlane code base for config files
|
18
|
+
Style/MethodMissing:
|
19
|
+
Enabled: false
|
20
|
+
|
21
|
+
#
|
22
|
+
# File.chmod(0777, f)
|
23
|
+
#
|
24
|
+
# is easier to read than
|
25
|
+
#
|
26
|
+
# File.chmod(0o777, f)
|
27
|
+
#
|
28
|
+
Style/NumericLiteralPrefix:
|
29
|
+
Enabled: false
|
30
|
+
|
31
|
+
#
|
32
|
+
# command = (!clean_expired.nil? || !clean_pattern.nil?) ? CLEANUP : LIST
|
33
|
+
#
|
34
|
+
# is easier to read than
|
35
|
+
#
|
36
|
+
# command = !clean_expired.nil? || !clean_pattern.nil? ? CLEANUP : LIST
|
37
|
+
#
|
38
|
+
Style/TernaryParentheses:
|
39
|
+
Enabled: false
|
40
|
+
|
5
41
|
# It's better to be more explicit about the type
|
6
42
|
Style/BracesAroundHashParameters:
|
7
43
|
Enabled: false
|
@@ -13,6 +13,15 @@ module Fastlane
|
|
13
13
|
["<%= author.gsub('"', "'") %>"]
|
14
14
|
end
|
15
15
|
|
16
|
+
def self.return_value
|
17
|
+
# If your method provides a return value, you can describe here what it does
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.details
|
21
|
+
# Optional:
|
22
|
+
"<%= details.gsub('"', "'") %>"
|
23
|
+
end
|
24
|
+
|
16
25
|
def self.available_options
|
17
26
|
[
|
18
27
|
# FastlaneCore::ConfigItem.new(key: :your_option,
|
data/lib/fastlane/version.rb
CHANGED
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: 1.105.
|
4
|
+
version: 1.105.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Felix Krause
|
@@ -15,7 +15,7 @@ authors:
|
|
15
15
|
autorequire:
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
|
-
date: 2016-10-
|
18
|
+
date: 2016-10-18 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: krausefx-shenzhen
|
@@ -83,14 +83,20 @@ dependencies:
|
|
83
83
|
requirements:
|
84
84
|
- - ">="
|
85
85
|
- !ruby/object:Gem::Version
|
86
|
-
version: 0.2.
|
86
|
+
version: 0.2.4
|
87
|
+
- - "<"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 1.0.0
|
87
90
|
type: :runtime
|
88
91
|
prerelease: false
|
89
92
|
version_requirements: !ruby/object:Gem::Requirement
|
90
93
|
requirements:
|
91
94
|
- - ">="
|
92
95
|
- !ruby/object:Gem::Version
|
93
|
-
version: 0.2.
|
96
|
+
version: 0.2.4
|
97
|
+
- - "<"
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: 1.0.0
|
94
100
|
- !ruby/object:Gem::Dependency
|
95
101
|
name: terminal-notifier
|
96
102
|
requirement: !ruby/object:Gem::Requirement
|
@@ -219,7 +225,7 @@ dependencies:
|
|
219
225
|
requirements:
|
220
226
|
- - ">="
|
221
227
|
- !ruby/object:Gem::Version
|
222
|
-
version: 0.52.
|
228
|
+
version: 0.52.3
|
223
229
|
- - "<"
|
224
230
|
- !ruby/object:Gem::Version
|
225
231
|
version: 1.0.0
|
@@ -229,7 +235,7 @@ dependencies:
|
|
229
235
|
requirements:
|
230
236
|
- - ">="
|
231
237
|
- !ruby/object:Gem::Version
|
232
|
-
version: 0.52.
|
238
|
+
version: 0.52.3
|
233
239
|
- - "<"
|
234
240
|
- !ruby/object:Gem::Version
|
235
241
|
version: 1.0.0
|
@@ -253,7 +259,7 @@ dependencies:
|
|
253
259
|
requirements:
|
254
260
|
- - ">="
|
255
261
|
- !ruby/object:Gem::Version
|
256
|
-
version: 0.16.
|
262
|
+
version: 0.16.2
|
257
263
|
- - "<"
|
258
264
|
- !ruby/object:Gem::Version
|
259
265
|
version: 1.0.0
|
@@ -263,7 +269,7 @@ dependencies:
|
|
263
269
|
requirements:
|
264
270
|
- - ">="
|
265
271
|
- !ruby/object:Gem::Version
|
266
|
-
version: 0.16.
|
272
|
+
version: 0.16.2
|
267
273
|
- - "<"
|
268
274
|
- !ruby/object:Gem::Version
|
269
275
|
version: 1.0.0
|
@@ -273,7 +279,7 @@ dependencies:
|
|
273
279
|
requirements:
|
274
280
|
- - ">="
|
275
281
|
- !ruby/object:Gem::Version
|
276
|
-
version: 0.
|
282
|
+
version: 0.36.0
|
277
283
|
- - "<"
|
278
284
|
- !ruby/object:Gem::Version
|
279
285
|
version: 1.0.0
|
@@ -283,7 +289,7 @@ dependencies:
|
|
283
289
|
requirements:
|
284
290
|
- - ">="
|
285
291
|
- !ruby/object:Gem::Version
|
286
|
-
version: 0.
|
292
|
+
version: 0.36.0
|
287
293
|
- - "<"
|
288
294
|
- !ruby/object:Gem::Version
|
289
295
|
version: 1.0.0
|
@@ -433,7 +439,7 @@ dependencies:
|
|
433
439
|
requirements:
|
434
440
|
- - ">="
|
435
441
|
- !ruby/object:Gem::Version
|
436
|
-
version: 1.11.
|
442
|
+
version: 1.11.3
|
437
443
|
- - "<"
|
438
444
|
- !ruby/object:Gem::Version
|
439
445
|
version: 2.0.0
|
@@ -443,7 +449,7 @@ dependencies:
|
|
443
449
|
requirements:
|
444
450
|
- - ">="
|
445
451
|
- !ruby/object:Gem::Version
|
446
|
-
version: 1.11.
|
452
|
+
version: 1.11.3
|
447
453
|
- - "<"
|
448
454
|
- !ruby/object:Gem::Version
|
449
455
|
version: 2.0.0
|
@@ -679,14 +685,14 @@ dependencies:
|
|
679
685
|
requirements:
|
680
686
|
- - "~>"
|
681
687
|
- !ruby/object:Gem::Version
|
682
|
-
version: 0.
|
688
|
+
version: 0.44.0
|
683
689
|
type: :development
|
684
690
|
prerelease: false
|
685
691
|
version_requirements: !ruby/object:Gem::Requirement
|
686
692
|
requirements:
|
687
693
|
- - "~>"
|
688
694
|
- !ruby/object:Gem::Version
|
689
|
-
version: 0.
|
695
|
+
version: 0.44.0
|
690
696
|
- !ruby/object:Gem::Dependency
|
691
697
|
name: rest-client
|
692
698
|
requirement: !ruby/object:Gem::Requirement
|
@@ -730,12 +736,14 @@ files:
|
|
730
736
|
- bin/fastlane
|
731
737
|
- "bin/\U0001F680"
|
732
738
|
- lib/.DS_Store
|
739
|
+
- lib/assets/.DS_Store
|
733
740
|
- lib/assets/Actions.md.erb
|
734
741
|
- lib/assets/AppfileTemplate
|
735
742
|
- lib/assets/AppfileTemplateAndroid
|
736
743
|
- lib/assets/AvailablePlugins.md.erb
|
737
744
|
- lib/assets/DefaultFastfileTemplate
|
738
745
|
- lib/assets/FastfileTemplateAndroid
|
746
|
+
- lib/assets/completions/.DS_Store
|
739
747
|
- lib/assets/completions/completion.bash
|
740
748
|
- lib/assets/completions/completion.sh
|
741
749
|
- lib/assets/completions/completion.zsh
|
@@ -789,6 +797,7 @@ files:
|
|
789
797
|
- lib/fastlane/actions/delete_keychain.rb
|
790
798
|
- lib/fastlane/actions/deliver.rb
|
791
799
|
- lib/fastlane/actions/deploygate.rb
|
800
|
+
- lib/fastlane/actions/device_grid/.DS_Store
|
792
801
|
- lib/fastlane/actions/device_grid/README.md
|
793
802
|
- lib/fastlane/actions/dotgpg_environment.rb
|
794
803
|
- lib/fastlane/actions/download.rb
|
@@ -1013,7 +1022,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1013
1022
|
version: '0'
|
1014
1023
|
requirements: []
|
1015
1024
|
rubyforge_project:
|
1016
|
-
rubygems_version: 2.6.
|
1025
|
+
rubygems_version: 2.6.6
|
1017
1026
|
signing_key:
|
1018
1027
|
specification_version: 4
|
1019
1028
|
summary: The easiest way to automate building and releasing your iOS and Android apps
|