Sha256: 9ee7aa486db3c269e3ab2e8e3f55b9bffbba2744f3f0ea09aa9168108ae7a58f

Contents?: true

Size: 1.22 KB

Versions: 25

Compression:

Stored size: 1.22 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.has_key? :records
              domain_data['recordsList'] = {
                'records' => domain[:records].collect do |record|
                  record_data = {
                    'ttl' => record[:ttl],
                    'data' => record[:data],
                    'name' => record[:name],
                    'type' => record[:type],
                  }

                  if record.has_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     => MultiJson.encode(data)
          )
        end
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 7 rubygems

Version Path
brightbox-cli-0.18.1 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
michiels-fog-1.3.1 lib/fog/rackspace/requests/dns/create_domains.rb
ftl-0.2.0 vendor/bundle/gems/fog-1.3.1/lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.18.0 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.3.1 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.3.0 lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.17.5 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.2.0 lib/fog/rackspace/requests/dns/create_domains.rb
ktheory-fog-1.1.2 lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.17.4 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.17.3 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.17.2 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.17.1 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.17.0 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.1.2 lib/fog/rackspace/requests/dns/create_domains.rb
fog_tractical-1.1.4 lib/fog/rackspace/requests/dns/create_domains.rb
fog_tractical-1.1.3 lib/fog/rackspace/requests/dns/create_domains.rb
brightbox-cli-0.16.0 lib/brightbox-cli/vendor/fog/lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.1.1 lib/fog/rackspace/requests/dns/create_domains.rb
fog-1.1.0 lib/fog/rackspace/requests/dns/create_domains.rb