fastlane 1.108.0 → 1.109.0
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/register_devices.rb +1 -1
- data/lib/fastlane/commands_generator.rb +26 -0
- data/lib/fastlane/environment_printer.rb +56 -13
- data/lib/fastlane/fast_file.rb +6 -0
- data/lib/fastlane/helper/sh_helper.rb +1 -0
- data/lib/fastlane/setup/.DS_Store +0 -0
- data/lib/fastlane/version.rb +1 -1
- metadata +10 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a7f4c46599885e13190587692976328b3d42ca96
|
4
|
+
data.tar.gz: 44b833e203c19182405dcd916040979dae25b32d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc927f1489ead8bb48983e134ec6225a6449784df170d31a4753420c2f47bf977e08d8414d39e24729e4330cc0b3a6df9227f777571b394eb2688bab198ba8ff
|
7
|
+
data.tar.gz: 35ed1904bcd783fc8ffe4dff400c6e36b60a569f6fe937398d5971e1e4fb0efeb0414f15212fbdf03d9ba048bf3aa6bdcb90588e10a367154318ba5dc3ae641f
|
data/lib/.DS_Store
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -65,7 +65,7 @@ module Fastlane
|
|
65
65
|
optional: true),
|
66
66
|
FastlaneCore::ConfigItem.new(key: :devices_file,
|
67
67
|
env_name: "FL_REGISTER_DEVICES_FILE",
|
68
|
-
description: "Provide a path to the devices to register",
|
68
|
+
description: "Provide a path to a file with the devices to register. For the format of the file see the examples",
|
69
69
|
optional: true,
|
70
70
|
verify_block: proc do |value|
|
71
71
|
UI.user_error!("Could not find file '#{value}'") unless File.exist?(value)
|
@@ -13,6 +13,11 @@ module Fastlane
|
|
13
13
|
$verbose = true if ARGV.include?("--verbose")
|
14
14
|
$capture_output = true if ARGV.include?("--capture_output")
|
15
15
|
|
16
|
+
# has to be checked here - in case we wan't to troubleshoot plugin related issues
|
17
|
+
if ARGV.include?("--troubleshoot")
|
18
|
+
self.confirm_troubleshoot
|
19
|
+
end
|
20
|
+
|
16
21
|
if $capture_output
|
17
22
|
# Trace mode is enabled
|
18
23
|
# redirect STDOUT and STDERR
|
@@ -42,6 +47,26 @@ module Fastlane
|
|
42
47
|
end
|
43
48
|
end
|
44
49
|
|
50
|
+
def self.confirm_troubleshoot
|
51
|
+
if Helper.is_ci?
|
52
|
+
UI.error "---"
|
53
|
+
UI.error "You are trying to use '--troubleshoot' on CI"
|
54
|
+
UI.error "this option is not usable in CI, as it is insecure"
|
55
|
+
UI.error "---"
|
56
|
+
UI.user_error!("Do not use --troubleshoot in CI")
|
57
|
+
end
|
58
|
+
# maybe already set by 'start'
|
59
|
+
return if $troubleshoot
|
60
|
+
UI.error "---"
|
61
|
+
UI.error "Are you sure you want to enable '--troubleshoot'?"
|
62
|
+
UI.error "All commmands will run in full unfiltered output mode."
|
63
|
+
UI.error "Sensitive data, like passwords, could be printed to the log."
|
64
|
+
UI.error "---"
|
65
|
+
if UI.confirm("Do you really want to enable --troubleshoot")
|
66
|
+
$troubleshoot = true
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
45
70
|
def run
|
46
71
|
program :version, Fastlane::VERSION
|
47
72
|
program :description, [
|
@@ -56,6 +81,7 @@ module Fastlane
|
|
56
81
|
|
57
82
|
global_option('--verbose') { $verbose = true }
|
58
83
|
global_option('--capture_output', 'Captures the output of the current run, and generates a markdown issue template') { $capture_output = true }
|
84
|
+
global_option('--troubleshoot', 'Enables extended verbose mode. Use with caution, as this even includes ALL sensitive data. Cannot be used on CI.')
|
59
85
|
|
60
86
|
always_trace!
|
61
87
|
|
@@ -78,6 +78,16 @@ module Fastlane
|
|
78
78
|
env_output
|
79
79
|
end
|
80
80
|
|
81
|
+
# We have this as a separate method, as this has to be handled
|
82
|
+
# slightly differently, depending on how fastlane is being called
|
83
|
+
def self.gems_to_check
|
84
|
+
if Helper.contained_fastlane?
|
85
|
+
Gem::Specification
|
86
|
+
else
|
87
|
+
Gem.loaded_specs.values
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
81
91
|
def self.print_loaded_fastlane_gems
|
82
92
|
# fastlanes internal gems
|
83
93
|
env_output = "### fastlane gems\n\n"
|
@@ -85,14 +95,15 @@ module Fastlane
|
|
85
95
|
table << "| Gem | Version | Update-Status |\n"
|
86
96
|
table << "|-----|---------|------------|\n"
|
87
97
|
fastlane_tools = Fastlane::TOOLS + [:fastlane_core, :credentials_manager]
|
88
|
-
|
98
|
+
|
99
|
+
gems_to_check.each do |current_gem|
|
89
100
|
update_status = "N/A"
|
90
101
|
|
91
|
-
next unless fastlane_tools.include?(
|
102
|
+
next unless fastlane_tools.include?(current_gem.name.to_sym)
|
92
103
|
begin
|
93
|
-
update_url = FastlaneCore::UpdateChecker.generate_fetch_url(
|
104
|
+
update_url = FastlaneCore::UpdateChecker.generate_fetch_url(current_gem.name)
|
94
105
|
latest_version = FastlaneCore::UpdateChecker.fetch_latest(update_url)
|
95
|
-
if Gem::Version.new(
|
106
|
+
if Gem::Version.new(current_gem.version) == Gem::Version.new(latest_version)
|
96
107
|
update_status = "✅ Up-To-Date"
|
97
108
|
else
|
98
109
|
update_status = "🚫 Update availaible"
|
@@ -100,7 +111,7 @@ module Fastlane
|
|
100
111
|
rescue
|
101
112
|
update_status = "💥 Check failed"
|
102
113
|
end
|
103
|
-
table << "| #{
|
114
|
+
table << "| #{current_gem.name} | #{current_gem.version} | #{update_status} |\n"
|
104
115
|
end
|
105
116
|
|
106
117
|
rendered_table = MarkdownTableFormatter.new table
|
@@ -117,9 +128,9 @@ module Fastlane
|
|
117
128
|
|
118
129
|
table = "| Gem | Version |\n"
|
119
130
|
table << "|-----|---------|\n"
|
120
|
-
|
121
|
-
unless Fastlane::TOOLS.include?(
|
122
|
-
table << "| #{
|
131
|
+
gems_to_check.each do |current_gem|
|
132
|
+
unless Fastlane::TOOLS.include?(current_gem.name.to_sym)
|
133
|
+
table << "| #{current_gem.name} | #{current_gem.version} |\n"
|
123
134
|
end
|
124
135
|
end
|
125
136
|
rendered_table = MarkdownTableFormatter.new table
|
@@ -162,20 +173,52 @@ module Fastlane
|
|
162
173
|
require "openssl"
|
163
174
|
|
164
175
|
env_output = "### Stack\n\n"
|
165
|
-
product, version, build =
|
176
|
+
product, version, build = "Unknown"
|
177
|
+
os_version = "UNKNOWN"
|
178
|
+
|
179
|
+
if Helper.mac?
|
180
|
+
product, version, build = `sw_vers`.strip.split("\n").map { |line| line.split(':').last.strip }
|
181
|
+
os_version = version
|
182
|
+
end
|
183
|
+
|
184
|
+
if Helper.linux?
|
185
|
+
# this should work on pretty much all linux distros
|
186
|
+
os_version = `uname -a`.strip
|
187
|
+
version = ""
|
188
|
+
build = `uname -r`.strip
|
189
|
+
product = `cat /etc/issue.net`.strip
|
190
|
+
|
191
|
+
distro_guesser = {
|
192
|
+
fedora: "/etc/fedora-release",
|
193
|
+
debian_based: "/etc/debian_version",
|
194
|
+
suse: "/etc/SUSE-release",
|
195
|
+
mandrake: "/etc/mandrake-release"
|
196
|
+
}
|
197
|
+
|
198
|
+
distro_guesser.each do |dist, vers|
|
199
|
+
os_version = "#{dist} " + File.read(vers).strip if File.exist?(vers)
|
200
|
+
version = os_version
|
201
|
+
end
|
202
|
+
end
|
203
|
+
|
166
204
|
table_content = {
|
167
205
|
"fastlane" => Fastlane::VERSION,
|
168
|
-
"OS" =>
|
206
|
+
"OS" => os_version,
|
169
207
|
"Ruby" => RUBY_VERSION,
|
170
208
|
"Bundler?" => Helper.bundler?,
|
171
|
-
"Xcode Path" => Helper.xcode_path,
|
172
|
-
"Xcode Version" => Helper.xcode_version,
|
173
209
|
"Git" => `git --version`.strip.split("\n").first,
|
174
210
|
"Installation Source" => $PROGRAM_NAME,
|
175
211
|
"Host" => "#{product} #{version} (#{build})",
|
176
212
|
"Ruby Lib Dir" => RbConfig::CONFIG['libdir'],
|
177
|
-
"OpenSSL Version" => OpenSSL::OPENSSL_VERSION
|
213
|
+
"OpenSSL Version" => OpenSSL::OPENSSL_VERSION,
|
214
|
+
"Is contained" => Helper.contained_fastlane?.to_s
|
178
215
|
}
|
216
|
+
|
217
|
+
if Helper.mac?
|
218
|
+
table_content["Xcode Path"] = Helper.xcode_path
|
219
|
+
table_content["Xcode Version"] = Helper.xcode_version
|
220
|
+
end
|
221
|
+
|
179
222
|
table = ["| Key | Value |"]
|
180
223
|
table += table_content.collect { |k, v| "| #{k} | #{v} |" }
|
181
224
|
|
data/lib/fastlane/fast_file.rb
CHANGED
@@ -189,6 +189,12 @@ module Fastlane
|
|
189
189
|
FastlaneRequire.install_gem_if_needed(gem_name: gem_name, require_gem: true)
|
190
190
|
end
|
191
191
|
|
192
|
+
def generated_fastfile_id(id)
|
193
|
+
# This value helps us track success/failure metrics for Fastfiles we
|
194
|
+
# generate as part of an automated process.
|
195
|
+
ENV['GENERATED_FASTFILE_ID'] = id
|
196
|
+
end
|
197
|
+
|
192
198
|
def import(path = nil)
|
193
199
|
UI.user_error!("Please pass a path to the `import` action") unless path
|
194
200
|
|
@@ -19,6 +19,7 @@ module Fastlane
|
|
19
19
|
# @param print_command_output [Boolean] Should we print the command output during execution
|
20
20
|
# @param error_callback [Block] A block that's called if the command exits with a non-zero status
|
21
21
|
def self.sh_control_output(command, print_command: true, print_command_output: true, error_callback: nil)
|
22
|
+
print_command = print_command_output = true if $troubleshoot
|
22
23
|
# Set the encoding first, the user might have set it wrong
|
23
24
|
previous_encoding = [Encoding.default_external, Encoding.default_internal]
|
24
25
|
Encoding.default_external = Encoding::UTF_8
|
Binary file
|
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.
|
4
|
+
version: 1.109.0
|
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-11-
|
18
|
+
date: 2016-11-15 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: krausefx-shenzhen
|
@@ -225,7 +225,7 @@ dependencies:
|
|
225
225
|
requirements:
|
226
226
|
- - ">="
|
227
227
|
- !ruby/object:Gem::Version
|
228
|
-
version: 0.55.
|
228
|
+
version: 0.55.1
|
229
229
|
- - "<"
|
230
230
|
- !ruby/object:Gem::Version
|
231
231
|
version: 1.0.0
|
@@ -235,7 +235,7 @@ dependencies:
|
|
235
235
|
requirements:
|
236
236
|
- - ">="
|
237
237
|
- !ruby/object:Gem::Version
|
238
|
-
version: 0.55.
|
238
|
+
version: 0.55.1
|
239
239
|
- - "<"
|
240
240
|
- !ruby/object:Gem::Version
|
241
241
|
version: 1.0.0
|
@@ -735,12 +735,15 @@ files:
|
|
735
735
|
- README.md
|
736
736
|
- bin/fastlane
|
737
737
|
- "bin/\U0001F680"
|
738
|
+
- lib/.DS_Store
|
739
|
+
- lib/assets/.DS_Store
|
738
740
|
- lib/assets/Actions.md.erb
|
739
741
|
- lib/assets/AppfileTemplate
|
740
742
|
- lib/assets/AppfileTemplateAndroid
|
741
743
|
- lib/assets/AvailablePlugins.md.erb
|
742
744
|
- lib/assets/DefaultFastfileTemplate
|
743
745
|
- lib/assets/FastfileTemplateAndroid
|
746
|
+
- lib/assets/completions/.DS_Store
|
744
747
|
- lib/assets/completions/completion.bash
|
745
748
|
- lib/assets/completions/completion.sh
|
746
749
|
- lib/assets/completions/completion.zsh
|
@@ -751,6 +754,7 @@ files:
|
|
751
754
|
- lib/assets/s3_plist_template.erb
|
752
755
|
- lib/assets/s3_version_template.erb
|
753
756
|
- lib/fastlane.rb
|
757
|
+
- lib/fastlane/.DS_Store
|
754
758
|
- lib/fastlane/action.rb
|
755
759
|
- lib/fastlane/action_collector.rb
|
756
760
|
- lib/fastlane/actions/README.md
|
@@ -987,6 +991,7 @@ files:
|
|
987
991
|
- lib/fastlane/plugins/template/spec/%plugin_name%_action_spec.rb.erb
|
988
992
|
- lib/fastlane/plugins/template/spec/spec_helper.rb.erb
|
989
993
|
- lib/fastlane/runner.rb
|
994
|
+
- lib/fastlane/setup/.DS_Store
|
990
995
|
- lib/fastlane/setup/crashlytics_beta.rb
|
991
996
|
- lib/fastlane/setup/crashlytics_beta_command_line_handler.rb
|
992
997
|
- lib/fastlane/setup/crashlytics_beta_info.rb
|
@@ -1020,7 +1025,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1020
1025
|
version: '0'
|
1021
1026
|
requirements: []
|
1022
1027
|
rubyforge_project:
|
1023
|
-
rubygems_version: 2.
|
1028
|
+
rubygems_version: 2.2.2
|
1024
1029
|
signing_key:
|
1025
1030
|
specification_version: 4
|
1026
1031
|
summary: The easiest way to automate beta deployments and releases for your iOS and
|