Sha256: 3ba65b58de77870dfc3a2a774e8f475326685b25cbf97cdbe396378051dac6ce

Contents?: true

Size: 1.21 KB

Versions: 39

Compression:

Stored size: 1.21 KB

Contents

module Fog
  module DNS
    class Rackspace
      class Real
        def create_domains(domains)
          data = {
            'domains' => []
          }

          domains.each do |domain|
            domain_data =
              {
                'name' => domain[:name],
                'emailAddress' => domain[:email]
              }

            if domain.key? :records
              domain_data['recordsList'] = {
                'records' => domain[:records].map do |record|
                  record_data = {
                    'ttl' => record[:ttl],
                    'data' => record[:data],
                    'name' => record[:name],
                    'type' => record[:type],
                  }

                  if record.key? :priority
                    record_data.merge!({'priority' => record[:priority]})
                  else
                    record_data
                  end
                end
              }
            end
            data['domains'] << domain_data
          end

          request(
            :expects  => 202,
            :method   => 'POST',
            :path     => 'domains',
            :body     => Fog::JSON.encode(data)
          )
        end
      end
    end
  end
end

Version data entries

39 entries across 37 versions & 6 rubygems

Version Path
fog-rackspace-0.1.6 lib/fog/rackspace/requests/dns/create_domains.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-rackspace-0.1.5/lib/fog/rackspace/requests/dns/create_domains.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-rackspace-0.1.5/lib/fog/rackspace/requests/dns/create_domains.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-rackspace-0.1.5/lib/fog/rackspace/requests/dns/create_domains.rb
fog-rackspace-0.1.5 lib/fog/rackspace/requests/dns/create_domains.rb
fog-rackspace-0.1.4 lib/fog/rackspace/requests/dns/create_domains.rb
fog-rackspace-0.1.3 lib/fog/rackspace/requests/dns/create_domains.rb
fog-rackspace-0.1.2 lib/fog/rackspace/requests/dns/create_domains.rb
fog-rackspace-0.1.1 lib/fog/rackspace/requests/dns/create_domains.rb
fog-rackspace-0.1.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.37.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.36.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.35.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-2.0.0.pre.0 lib/fog/rackspace/requests/dns/create_domains.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-1.32.0/lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.34.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.33.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.32.0 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.31.0 lib/fog/rackspace/requests/dns/create_domains.rb
vagrant-cloudstack-1.1.0 vendor/bundle/gems/fog-1.22.1/lib/fog/rackspace/requests/dns/create_domains.rb