Module: Datadog::Core::Environment::VariableHelpers
- Extended by:
- VariableHelpers
- Included in:
- VariableHelpers
- Defined in:
- lib/datadog/core/environment/variable_helpers.rb
Overview
Defines helper methods for environment
Instance Method Summary collapse
-
#env_to_bool(var, default = nil, deprecation_warning: true) ⇒ Boolean, default
Reads an environment variable as a Boolean.
-
#env_to_float(var, default = nil, deprecation_warning: true) ⇒ Float, default
Reads an environment variable as a Float.
-
#env_to_int(var, default = nil, deprecation_warning: true) ⇒ Integer, default
Reads an environment variable as an Integer.
-
#env_to_list(var, default = [], comma_separated_only:, deprecation_warning: true) ⇒ Array<Object>, default
Parses comma- or space-separated lists.
Instance Method Details
#env_to_bool(var, default = nil, deprecation_warning: true) ⇒ Boolean, default
Reads an environment variable as a Boolean.
21 22 23 24 |
# File 'lib/datadog/core/environment/variable_helpers.rb', line 21 def env_to_bool(var, default = nil, deprecation_warning: true) var = decode_array(var, deprecation_warning) var && ENV.key?(var) ? ENV[var].to_s.strip.downcase == 'true' : default end |
#env_to_float(var, default = nil, deprecation_warning: true) ⇒ Float, default
Reads an environment variable as a Float.
49 50 51 52 |
# File 'lib/datadog/core/environment/variable_helpers.rb', line 49 def env_to_float(var, default = nil, deprecation_warning: true) var = decode_array(var, deprecation_warning) var && ENV.key?(var) ? ENV[var].to_f : default end |
#env_to_int(var, default = nil, deprecation_warning: true) ⇒ Integer, default
Reads an environment variable as an Integer.
35 36 37 38 |
# File 'lib/datadog/core/environment/variable_helpers.rb', line 35 def env_to_int(var, default = nil, deprecation_warning: true) var = decode_array(var, deprecation_warning) var && ENV.key?(var) ? ENV[var].to_i : default end |
#env_to_list(var, default = [], comma_separated_only:, deprecation_warning: true) ⇒ Array<Object>, default
Parses comma- or space-separated lists.
If a comma is present, then the list is considered comma-separated. Otherwise, it is considered space-separated.
After the entries are separated, commas and whitespaces that are either trailing or leading are trimmed.
Empty entries, after trimmed, are also removed from the result.
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/datadog/core/environment/variable_helpers.rb', line 71 def env_to_list(var, default = [], comma_separated_only:, deprecation_warning: true) var = decode_array(var, deprecation_warning) if var && ENV.key?(var) value = ENV[var] values = if value.include?(',') || comma_separated_only value.split(',') else value.split(' ') # rubocop:disable Style/RedundantArgument end values.map! do |v| v.gsub!(/\A[\s,]*|[\s,]*\Z/, '') v.empty? ? nil : v end values.compact! values else default end end |