45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
# File 'lib/quiverstaskrunner/helpers/settingshelper.rb', line 45
def get_cli_settings(options={})
verbose = (defined? ARGV) && (!ARGV.nil?) && (!ARGV.empty?) && (ARGV.detect { |x| x == "-v" })
if verbose
puts "ARGV:".colorize(:yellow)
puts ARGV
end
separator = options[:sep] || "="
ignore_keys = options[:cli_params_black_list]
if defined? ARGV && !ARGV.empty?
ignore_keys_exist = (defined? ignore_keys) && (!ignore_keys.nil?) && (ignore_keys.is_a?(Array)) && (!ignore_keys.empty?)
filtered_args =
if (ignore_keys_exist)
formatted_ignore_keys = ignore_keys.map { |x| "#{x}#{separator}" }
ARGV.slice(1..-1).reject { |arg| arg.index(separator).nil? || formatted_ignore_keys.detect { |x| arg.index(x) == 0 } }
else
ARGV.slice(1..-1).reject { |arg| arg.index(separator).nil? }
end
if verbose
puts "Filtered ARGV:".colorize(:yellow)
puts filtered_args
end
return Hash[*filtered_args.map { |arg| SettingsHelper.deserialize_string_key_value_pair(arg.gsub("=>", @@escape_hash_connector).split(separator)) }.flatten]
else
return {}
end
end
|