module ChefConfig::Mixin::FuzzyHostnameMatcher

Public Instance Methods

fuzzy_hostname_match?(hostname, match) click to toggle source
# File lib/chef-config/mixin/fuzzy_hostname_matcher.rb, line 41
def fuzzy_hostname_match?(hostname, match)
  # Do greedy matching by adding wildcard if it is not specified
  match = "*" + match unless match.start_with?("*")
  Fuzzyurl.matches?(Fuzzyurl.mask(hostname: match), hostname)
end
fuzzy_hostname_match_any?(hostname, matches) click to toggle source

Check to see if a hostname matches a match string. Used to see if hosts fall under our no_proxy config

@param [String] hostname the hostname to check @param [String] matches the pattern to match

@return [Boolean]

# File lib/chef-config/mixin/fuzzy_hostname_matcher.rb, line 31
def fuzzy_hostname_match_any?(hostname, matches)
  if hostname && matches
    return matches.to_s.split(/\s*,\s*/).compact.any? do |m|
      fuzzy_hostname_match?(hostname, m)
    end
  end

  false
end