Sha256: 10170036d8fe6bfdf5c47f05860cca746a304ba58125d7abd210e0bf37d2b9ac
Contents?: true
Size: 1.29 KB
Versions: 53
Compression:
Stored size: 1.29 KB
Contents
require 'fog/core/model' require 'fog/dynect/models/dns/records' module Fog module DNS class Dynect class Zone < Fog::Model identity :domain attribute :domain, :aliases => 'zone' attribute :email, :aliases => 'rname' attribute :serial attribute :serial_style attribute :ttl attribute :type, :aliases => 'zone_type' def initialize(attributes={}) super end def destroy requires :domain service.delete_zone(domain) true end undef_method :domain= def domain=(new_domain) attributes[:domain] = new_domain.split('/').last end def publish requires :identity data = service.put_zone(identity, 'publish' => true) true end def records @records ||= Fog::DNS::Dynect::Records.new(:zone => self, :service => service) end def nameservers raise 'nameservers Not Implemented' end def save self.ttl ||= 3600 requires :domain, :email, :ttl data = service.post_zone(email, ttl, domain).body['data'] merge_attributes(data) true end end end end end
Version data entries
53 entries across 53 versions & 3 rubygems