fastlane 1.108.0 → 1.109.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/.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
|