fastlane 1.82.0 → 1.83.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/lib/assets/completions/completion.bash +1 -1
- data/lib/fastlane/action.rb +2 -2
- data/lib/fastlane/actions/add_git_tag.rb +7 -2
- data/lib/fastlane/actions/danger.rb +14 -1
- data/lib/fastlane/actions/gradle.rb +16 -2
- data/lib/fastlane/actions/resign.rb +15 -2
- data/lib/fastlane/helper/gradle_helper.rb +3 -3
- data/lib/fastlane/helper/sh_helper.rb +13 -10
- data/lib/fastlane/version.rb +1 -1
- metadata +16 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 60c2d35ff4c95c5f0d1d0ea6372cededfe6385e0
|
|
4
|
+
data.tar.gz: 644e24db7c298689a29b6ce5ad78a98c0922e2c4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7e4a7cc4e96d6a1039b1d555caaf565a9f663295ef53c231dbd73ff59867049467d3488a65baeff9dea66f917d7e2d7c5db3783184f4e87feb4579f7d73b86b7
|
|
7
|
+
data.tar.gz: 9d1d63ae3116d9a569345c63b8c43ebd37778825c3067ea7d19a7b36d7ee37e60f0e0c4e710f7fc1e20f6f651514a407460e07d6b4a11f28ccb3f8fd8b5fa60c
|
data/lib/fastlane/action.rb
CHANGED
|
@@ -62,8 +62,8 @@ module Fastlane
|
|
|
62
62
|
end
|
|
63
63
|
|
|
64
64
|
# to allow a simple `sh` in the custom actions
|
|
65
|
-
def self.sh(command)
|
|
66
|
-
Fastlane::Actions.
|
|
65
|
+
def self.sh(command, print_command: true, print_command_output: true)
|
|
66
|
+
Fastlane::Actions.sh_control_output(command, print_command: print_command, print_command_output: print_command_output)
|
|
67
67
|
end
|
|
68
68
|
|
|
69
69
|
# instead of "AddGitAction", this will return "add_git" to print it to the user
|
|
@@ -6,9 +6,10 @@ module Fastlane
|
|
|
6
6
|
lane_name = Actions.lane_context[Actions::SharedValues::LANE_NAME].delete(' ') # no spaces allowed
|
|
7
7
|
|
|
8
8
|
tag = options[:tag] || "#{options[:grouping]}/#{lane_name}/#{options[:prefix]}#{options[:build_number]}"
|
|
9
|
+
message = options[:message] || "#{tag} (fastlane)"
|
|
9
10
|
|
|
10
11
|
UI.message "Adding git tag '#{tag}' 🎯."
|
|
11
|
-
Actions.sh("git tag -am '#{
|
|
12
|
+
Actions.sh("git tag -am '#{message}' '#{tag}'")
|
|
12
13
|
end
|
|
13
14
|
|
|
14
15
|
def self.description
|
|
@@ -33,7 +34,11 @@ module Fastlane
|
|
|
33
34
|
env_name: "FL_GIT_TAG_BUILD_NUMBER",
|
|
34
35
|
description: "The build number. Defaults to the result of increment_build_number if you\'re using it",
|
|
35
36
|
default_value: Actions.lane_context[Actions::SharedValues::BUILD_NUMBER],
|
|
36
|
-
is_string: false)
|
|
37
|
+
is_string: false),
|
|
38
|
+
FastlaneCore::ConfigItem.new(key: :message,
|
|
39
|
+
env_name: "FL_GIT_TAG_MESSAGE",
|
|
40
|
+
description: "The tag message. Defaults to the tag's name",
|
|
41
|
+
optional: true)
|
|
37
42
|
]
|
|
38
43
|
end
|
|
39
44
|
|
|
@@ -7,6 +7,9 @@ module Fastlane
|
|
|
7
7
|
|
|
8
8
|
cmd << ['bundle exec'] if File.exist?('Gemfile') && params[:use_bundle_exec]
|
|
9
9
|
cmd << ['danger']
|
|
10
|
+
cmd << ['--verbose'] if params[:verbose]
|
|
11
|
+
|
|
12
|
+
ENV['DANGER_GITHUB_API_TOKEN'] = params[:github_api_token] if params[:github_api_token]
|
|
10
13
|
|
|
11
14
|
Actions.sh(cmd.join(' '))
|
|
12
15
|
end
|
|
@@ -25,7 +28,17 @@ module Fastlane
|
|
|
25
28
|
env_name: "FL_DANGER_USE_BUNDLE_EXEC",
|
|
26
29
|
description: "Use bundle exec when there is a Gemfile presented",
|
|
27
30
|
is_string: false,
|
|
28
|
-
default_value: true)
|
|
31
|
+
default_value: true),
|
|
32
|
+
FastlaneCore::ConfigItem.new(key: :verbose,
|
|
33
|
+
env_name: "FL_DANGER_VERBOSE",
|
|
34
|
+
description: "Show more debugging information",
|
|
35
|
+
is_string: false,
|
|
36
|
+
default_value: false),
|
|
37
|
+
FastlaneCore::ConfigItem.new(key: :github_api_token,
|
|
38
|
+
env_name: "FL_DANGER_GITHUB_API_TOKEN",
|
|
39
|
+
description: "GitHub API token for danger",
|
|
40
|
+
is_string: true,
|
|
41
|
+
optional: true)
|
|
29
42
|
]
|
|
30
43
|
end
|
|
31
44
|
|
|
@@ -46,7 +46,11 @@ module Fastlane
|
|
|
46
46
|
Actions.lane_context[SharedValues::GRADLE_FLAVOR] = flavor if flavor
|
|
47
47
|
|
|
48
48
|
# We run the actual gradle task
|
|
49
|
-
result = gradle.trigger(task: gradle_task,
|
|
49
|
+
result = gradle.trigger(task: gradle_task,
|
|
50
|
+
serial: params[:serial],
|
|
51
|
+
flags: flags.join(' '),
|
|
52
|
+
print_command: params[:print_command],
|
|
53
|
+
print_command_output: params[:print_command_output])
|
|
50
54
|
|
|
51
55
|
# If we didn't build, then we return now, as it makes no sense to search for apk's in a non-`assemble` scenario
|
|
52
56
|
return result unless task.start_with?('assemble')
|
|
@@ -125,7 +129,17 @@ module Fastlane
|
|
|
125
129
|
env_name: 'FL_ANDROID_SERIAL',
|
|
126
130
|
description: 'Android serial, wich device should be used for this command',
|
|
127
131
|
is_string: true,
|
|
128
|
-
default_value: '')
|
|
132
|
+
default_value: ''),
|
|
133
|
+
FastlaneCore::ConfigItem.new(key: :print_command,
|
|
134
|
+
env_name: 'FL_GRADLE_PRINT_COMMAND',
|
|
135
|
+
description: 'Control whether the generated Gradle command is printed as output before running it (true/false)',
|
|
136
|
+
is_string: false,
|
|
137
|
+
default_value: true),
|
|
138
|
+
FastlaneCore::ConfigItem.new(key: :print_command_output,
|
|
139
|
+
env_name: 'FL_GRADLE_PRINT_COMMAND_OUTPUT',
|
|
140
|
+
description: 'Control whether the output produced by given Gradle command is printed while running (true/false)',
|
|
141
|
+
is_string: false,
|
|
142
|
+
default_value: true)
|
|
129
143
|
]
|
|
130
144
|
end
|
|
131
145
|
|
|
@@ -6,7 +6,7 @@ module Fastlane
|
|
|
6
6
|
require 'sigh'
|
|
7
7
|
|
|
8
8
|
# try to resign the ipa
|
|
9
|
-
if Sigh::Resign.resign(params[:ipa], params[:signing_identity], params[:provisioning_profile], params[:entitlements], params[:version], params[:display_name])
|
|
9
|
+
if Sigh::Resign.resign(params[:ipa], params[:signing_identity], params[:provisioning_profile], params[:entitlements], params[:version], params[:display_name], params[:short_version], params[:bundle_version])
|
|
10
10
|
UI.success('Successfully re-signed .ipa 🔏.')
|
|
11
11
|
else
|
|
12
12
|
UI.user_error!("Failed to re-sign .ipa")
|
|
@@ -65,13 +65,26 @@ module Fastlane
|
|
|
65
65
|
end),
|
|
66
66
|
FastlaneCore::ConfigItem.new(key: :version,
|
|
67
67
|
env_name: "FL_RESIGN_VERSION",
|
|
68
|
-
description: "Version number to force resigned ipa to use",
|
|
68
|
+
description: "Version number to force resigned ipa to use. Updates both CFBundleShortVersionString and CFBundleIdentifier values in Info.plist. Applies for main app and all nested apps or extensions",
|
|
69
|
+
conflicting_options: [:short_version, :bundle_version],
|
|
69
70
|
is_string: true,
|
|
70
71
|
optional: true),
|
|
71
72
|
FastlaneCore::ConfigItem.new(key: :display_name,
|
|
72
73
|
env_name: "FL_DISPLAY_NAME",
|
|
73
74
|
description: "Display name to force resigned ipa to use",
|
|
74
75
|
is_string: true,
|
|
76
|
+
optional: true),
|
|
77
|
+
FastlaneCore::ConfigItem.new(key: :short_version,
|
|
78
|
+
env_name: "FL_RESIGN_SHORT_VERSION",
|
|
79
|
+
description: "Short version string to force resigned ipa to use (CFBundleShortVersionString)",
|
|
80
|
+
conflicting_options: [:version],
|
|
81
|
+
is_string: true,
|
|
82
|
+
optional: true),
|
|
83
|
+
FastlaneCore::ConfigItem.new(key: :bundle_version,
|
|
84
|
+
env_name: "FL_RESIGN_BUNDLE_VERSION",
|
|
85
|
+
description: "Bundle version to force resigned ipa to use (CFBundleIdentifier)",
|
|
86
|
+
conflicting_options: [:version],
|
|
87
|
+
is_string: true,
|
|
75
88
|
optional: true)
|
|
76
89
|
]
|
|
77
90
|
end
|
|
@@ -26,10 +26,10 @@ module Fastlane
|
|
|
26
26
|
end
|
|
27
27
|
|
|
28
28
|
# Run a certain action
|
|
29
|
-
def trigger(task: nil, flags: nil, serial: nil)
|
|
29
|
+
def trigger(task: nil, flags: nil, serial: nil, print_command: true, print_command_output: true)
|
|
30
30
|
android_serial = (serial != "") ? "ANDROID_SERIAL=#{serial}" : nil
|
|
31
31
|
command = [android_serial, escaped_gradle_path, task, flags].compact.join(" ")
|
|
32
|
-
Action.sh(command)
|
|
32
|
+
Action.sh(command, print_command: print_command, print_command_output: print_command_output)
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
def task_available?(task)
|
|
@@ -48,7 +48,7 @@ module Fastlane
|
|
|
48
48
|
self.tasks = []
|
|
49
49
|
|
|
50
50
|
command = [escaped_gradle_path, "tasks", "--console=plain"].join(" ")
|
|
51
|
-
output =
|
|
51
|
+
output = Action.sh(command, print_command: false, print_command_output: false)
|
|
52
52
|
output.split("\n").each do |line|
|
|
53
53
|
if (result = line.match(/(\w+)\s\-\s([\w\s]+)/))
|
|
54
54
|
self.tasks << GradleTask.new(title: result[1], description: result[2])
|
|
@@ -6,17 +6,21 @@ module Fastlane
|
|
|
6
6
|
# When running this in tests, it will return the actual command instead of executing it
|
|
7
7
|
# @param log [boolean] should fastlane print out the executed command
|
|
8
8
|
def self.sh(command, log: true)
|
|
9
|
-
|
|
9
|
+
sh_control_output(command, print_command: log, print_command_output: log)
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
def self.sh_no_action(command, log: true)
|
|
13
|
+
sh_control_output(command, print_command: log, print_command_output: log)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def self.sh_control_output(command, print_command: true, print_command_output: true)
|
|
13
17
|
# Set the encoding first, the user might have set it wrong
|
|
14
18
|
previous_encoding = [Encoding.default_external, Encoding.default_internal]
|
|
15
19
|
Encoding.default_external = Encoding::UTF_8
|
|
16
20
|
Encoding.default_internal = Encoding::UTF_8
|
|
17
21
|
|
|
18
22
|
command = command.join(' ') if command.kind_of?(Array) # since it's an array of one element when running from the Fastfile
|
|
19
|
-
UI.command(command) if
|
|
23
|
+
UI.command(command) if print_command
|
|
20
24
|
|
|
21
25
|
result = ''
|
|
22
26
|
if Helper.test?
|
|
@@ -26,7 +30,7 @@ module Fastlane
|
|
|
26
30
|
IO.popen(command, err: [:child, :out]) do |io|
|
|
27
31
|
io.sync = true
|
|
28
32
|
io.each do |line|
|
|
29
|
-
UI.command_output(line.strip) if
|
|
33
|
+
UI.command_output(line.strip) if print_command_output
|
|
30
34
|
result << line
|
|
31
35
|
end
|
|
32
36
|
io.close
|
|
@@ -34,13 +38,12 @@ module Fastlane
|
|
|
34
38
|
end
|
|
35
39
|
|
|
36
40
|
if exit_status != 0
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
end
|
|
41
|
+
message = if print_command
|
|
42
|
+
"Exit status of command '#{command}' was #{exit_status} instead of 0."
|
|
43
|
+
else
|
|
44
|
+
"Shell command exited with exit status #{exit_status} instead of 0."
|
|
45
|
+
end
|
|
46
|
+
message += "\n#{result}" if print_command_output
|
|
44
47
|
UI.user_error!(message)
|
|
45
48
|
end
|
|
46
49
|
end
|
data/lib/fastlane/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fastlane
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.83.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Felix Krause
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-04-
|
|
11
|
+
date: 2016-04-28 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: krausefx-shenzhen
|
|
@@ -148,7 +148,7 @@ dependencies:
|
|
|
148
148
|
requirements:
|
|
149
149
|
- - ">="
|
|
150
150
|
- !ruby/object:Gem::Version
|
|
151
|
-
version: 0.42.
|
|
151
|
+
version: 0.42.1
|
|
152
152
|
- - "<"
|
|
153
153
|
- !ruby/object:Gem::Version
|
|
154
154
|
version: 1.0.0
|
|
@@ -158,7 +158,7 @@ dependencies:
|
|
|
158
158
|
requirements:
|
|
159
159
|
- - ">="
|
|
160
160
|
- !ruby/object:Gem::Version
|
|
161
|
-
version: 0.42.
|
|
161
|
+
version: 0.42.1
|
|
162
162
|
- - "<"
|
|
163
163
|
- !ruby/object:Gem::Version
|
|
164
164
|
version: 1.0.0
|
|
@@ -168,7 +168,7 @@ dependencies:
|
|
|
168
168
|
requirements:
|
|
169
169
|
- - ">="
|
|
170
170
|
- !ruby/object:Gem::Version
|
|
171
|
-
version: 0.
|
|
171
|
+
version: 0.16.0
|
|
172
172
|
- - "<"
|
|
173
173
|
- !ruby/object:Gem::Version
|
|
174
174
|
version: 1.0.0
|
|
@@ -178,7 +178,7 @@ dependencies:
|
|
|
178
178
|
requirements:
|
|
179
179
|
- - ">="
|
|
180
180
|
- !ruby/object:Gem::Version
|
|
181
|
-
version: 0.
|
|
181
|
+
version: 0.16.0
|
|
182
182
|
- - "<"
|
|
183
183
|
- !ruby/object:Gem::Version
|
|
184
184
|
version: 1.0.0
|
|
@@ -188,7 +188,7 @@ dependencies:
|
|
|
188
188
|
requirements:
|
|
189
189
|
- - ">="
|
|
190
190
|
- !ruby/object:Gem::Version
|
|
191
|
-
version: 0.
|
|
191
|
+
version: 0.26.1
|
|
192
192
|
- - "<"
|
|
193
193
|
- !ruby/object:Gem::Version
|
|
194
194
|
version: 1.0.0
|
|
@@ -198,7 +198,7 @@ dependencies:
|
|
|
198
198
|
requirements:
|
|
199
199
|
- - ">="
|
|
200
200
|
- !ruby/object:Gem::Version
|
|
201
|
-
version: 0.
|
|
201
|
+
version: 0.26.1
|
|
202
202
|
- - "<"
|
|
203
203
|
- !ruby/object:Gem::Version
|
|
204
204
|
version: 1.0.0
|
|
@@ -208,7 +208,7 @@ dependencies:
|
|
|
208
208
|
requirements:
|
|
209
209
|
- - ">="
|
|
210
210
|
- !ruby/object:Gem::Version
|
|
211
|
-
version: 1.11.
|
|
211
|
+
version: 1.11.2
|
|
212
212
|
- - "<"
|
|
213
213
|
- !ruby/object:Gem::Version
|
|
214
214
|
version: 2.0.0
|
|
@@ -218,7 +218,7 @@ dependencies:
|
|
|
218
218
|
requirements:
|
|
219
219
|
- - ">="
|
|
220
220
|
- !ruby/object:Gem::Version
|
|
221
|
-
version: 1.11.
|
|
221
|
+
version: 1.11.2
|
|
222
222
|
- - "<"
|
|
223
223
|
- !ruby/object:Gem::Version
|
|
224
224
|
version: 2.0.0
|
|
@@ -308,7 +308,7 @@ dependencies:
|
|
|
308
308
|
requirements:
|
|
309
309
|
- - ">="
|
|
310
310
|
- !ruby/object:Gem::Version
|
|
311
|
-
version: 1.
|
|
311
|
+
version: 1.7.0
|
|
312
312
|
- - "<"
|
|
313
313
|
- !ruby/object:Gem::Version
|
|
314
314
|
version: 2.0.0
|
|
@@ -318,7 +318,7 @@ dependencies:
|
|
|
318
318
|
requirements:
|
|
319
319
|
- - ">="
|
|
320
320
|
- !ruby/object:Gem::Version
|
|
321
|
-
version: 1.
|
|
321
|
+
version: 1.7.0
|
|
322
322
|
- - "<"
|
|
323
323
|
- !ruby/object:Gem::Version
|
|
324
324
|
version: 2.0.0
|
|
@@ -388,7 +388,7 @@ dependencies:
|
|
|
388
388
|
requirements:
|
|
389
389
|
- - ">="
|
|
390
390
|
- !ruby/object:Gem::Version
|
|
391
|
-
version: 0.6.
|
|
391
|
+
version: 0.6.2
|
|
392
392
|
- - "<"
|
|
393
393
|
- !ruby/object:Gem::Version
|
|
394
394
|
version: 1.0.0
|
|
@@ -398,7 +398,7 @@ dependencies:
|
|
|
398
398
|
requirements:
|
|
399
399
|
- - ">="
|
|
400
400
|
- !ruby/object:Gem::Version
|
|
401
|
-
version: 0.6.
|
|
401
|
+
version: 0.6.2
|
|
402
402
|
- - "<"
|
|
403
403
|
- !ruby/object:Gem::Version
|
|
404
404
|
version: 1.0.0
|
|
@@ -428,7 +428,7 @@ dependencies:
|
|
|
428
428
|
requirements:
|
|
429
429
|
- - ">="
|
|
430
430
|
- !ruby/object:Gem::Version
|
|
431
|
-
version: 0.
|
|
431
|
+
version: 0.5.0
|
|
432
432
|
- - "<"
|
|
433
433
|
- !ruby/object:Gem::Version
|
|
434
434
|
version: 1.0.0
|
|
@@ -438,7 +438,7 @@ dependencies:
|
|
|
438
438
|
requirements:
|
|
439
439
|
- - ">="
|
|
440
440
|
- !ruby/object:Gem::Version
|
|
441
|
-
version: 0.
|
|
441
|
+
version: 0.5.0
|
|
442
442
|
- - "<"
|
|
443
443
|
- !ruby/object:Gem::Version
|
|
444
444
|
version: 1.0.0
|