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
Class Method Details
.env(key, default = nil, suffix: @envname, equals: nil, ignore: nil) ⇒ Object
8 9 10 11 12 13 |
# File 'lib/squared/common/utils.rb', line 8 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
19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/squared/common/utils.rb', line 19 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
55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/squared/common/utils.rb', line 55 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
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/squared/common/utils.rb', line 34 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 >= 0 && key <= 2 end default end |
.env_value(key, default = '', suffix: nil) ⇒ Object
15 16 17 |
# File 'lib/squared/common/utils.rb', line 15 def env_value(key, default = '', suffix: nil) suffix && (ret = ENV["#{key}_#{suffix}"]) ? ret : ENV.fetch(key, default) end |