Module: Squared::Common::Utils
- Defined in:
- lib/squared/common/utils.rb
Class Method Summary collapse
- .env(key, default = nil, suffix: @envname, equals: nil, ignore: nil) ⇒ Object
- .env_bool(key, default = false, suffix: nil) ⇒ Object
- .env_match(key, default = nil, suffix: nil, options: 0, timeout: nil) ⇒ Object
- .env_pipe(key, default = 1, suffix: nil, root: nil) ⇒ Object
- .env_value(key, default = '', suffix: nil) ⇒ Object
- .task_invoke(*cmd, args: [], exception: true, warning: true) ⇒ Object
- .task_invoked?(*args) ⇒ Boolean
- .task_join(*val) ⇒ Object
Class Method Details
.env(key, default = nil, suffix: @envname, equals: nil, ignore: nil) ⇒ Object
38 39 40 41 42 43 |
# File 'lib/squared/common/utils.rb', line 38 def env(key, default = nil, suffix: @envname, equals: nil, ignore: nil) ret = env_value(key, suffix: suffix) return ret == equals.to_s unless equals.nil? ret.empty? || (ignore && as_a(ignore).any? { |val| ret == val.to_s }) ? default : ret end |
.env_bool(key, default = false, suffix: nil) ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/squared/common/utils.rb', line 49 def env_bool(key, default = false, suffix: nil) if key.is_a?(::String) case env_value(key, suffix: suffix) when '' default when '0', 'false' false else true end else key.nil? ? default : key end end |
.env_match(key, default = nil, suffix: nil, options: 0, timeout: nil) ⇒ Object
85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'lib/squared/common/utils.rb', line 85 def env_match(key, default = nil, suffix: nil, options: 0, timeout: nil) case (ret = env_value(key, suffix: suffix)) when '' default when '0' false when '1' true else ::Regexp.new(ret, , timeout: timeout) end end |
.env_pipe(key, default = 1, suffix: nil, root: nil) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/squared/common/utils.rb', line 64 def env_pipe(key, default = 1, suffix: nil, root: nil) if default.is_a?(::String) begin default = (root ? root.join(default) : ::Pathname.new(default)).realdirpath rescue StandardError => e default = 1 warn e end end case key when ::String case (ret = env_value(key, suffix: suffix)) when '0', '1', '2' return ret.to_i end when ::Numeric return key if key.between?(0, 2) end default end |
.env_value(key, default = '', suffix: nil) ⇒ Object
45 46 47 |
# File 'lib/squared/common/utils.rb', line 45 def env_value(key, default = '', suffix: nil) suffix && (ret = ENV["#{key}_#{suffix}"]) ? ret : ENV.fetch(key, default) end |
.task_invoke(*cmd, args: [], exception: true, warning: true) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/squared/common/utils.rb', line 11 def task_invoke(*cmd, args: [], exception: true, warning: true) cmd.each { |name| ::Rake::Task[name].invoke(*args) } rescue StandardError => e raise if exception warn e if warning end |
.task_invoked?(*args) ⇒ Boolean
30 31 32 33 34 35 36 |
# File 'lib/squared/common/utils.rb', line 30 def task_invoked?(*args) ::Rake::Task.tasks.any? do |obj| next unless obj.already_invoked args.any? { |val| val.is_a?(::Regexp) ? val.match?(obj.name) : val == obj.name } end end |
.task_join(*val) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/squared/common/utils.rb', line 19 def task_join(*val) case val.size when 1 val[0].to_s when 2 "#{val[0]}:#{val[1]}" else val.join(':') end end |