Sha256: 990a97e7ae2e1207d3fdcb23be4dc56a17ab1cd8e30b4de6f7cddb6d051aa6ae
Contents?: true
Size: 1.54 KB
Versions: 12
Compression:
Stored size: 1.54 KB
Contents
module Fog module DNS class Dynect class Real # Get one or more node lists # # ==== Parameters # * zone<~String> - zone to lookup node lists for # * options<~Hash> # * fqdn<~String> - fully qualified domain name of node to lookup def get_node_list(zone, options = {}) requested_fqdn = options['fqdn'] || options[:fqdn] request( :expects => 200, :method => :get, :path => ['NodeList', zone, requested_fqdn].compact.join('/') ) end end class Mock def get_node_list(zone, options = {}) raise Fog::DNS::Dynect::NotFound unless zone = self.data[:zones][zone] response = Excon::Response.new response.status = 200 data = [zone[:zone]] if fqdn = options[:fqdn] data = data | zone[:records].collect { |type, records| records.select { |record| record[:fqdn] == fqdn } }.flatten.compact else data = data | zone[:records].collect { |type, records| records.collect { |record| record[:fqdn] } }.flatten end response.body = { "status" => "success", "data" => data, "job_id" => Fog::Dynect::Mock.job_id, "msgs" => [{ "INFO" => "get_tree: Here is your zone tree", "SOURCE" => "BLL", "ERR_CD" => nil, "LVL" => "INFO" }] } response end end end end end
Version data entries
12 entries across 12 versions & 5 rubygems