Class: Puppet::Provider::NameServer::CiscoNexus

Inherits:
ResourceApi::SimpleProvider
  • Object
show all
Defined in:
lib/puppet/provider/name_server/cisco_nexus.rb

Overview

Resource API provider for NameServer

Instance Method Summary collapse

Instance Method Details

#canonicalize(_context, resources) ⇒ Object



18
19
20
# File 'lib/puppet/provider/name_server/cisco_nexus.rb', line 18

def canonicalize(_context, resources)
  resources
end

#create(context, name, should) ⇒ Object



47
48
49
50
# File 'lib/puppet/provider/name_server/cisco_nexus.rb', line 47

def create(context, name, should)
  context.notice("Creating '#{name}' with #{should.inspect}")
  Cisco::NameServer.new(name)
end

#delete(context, name) ⇒ Object



52
53
54
55
56
# File 'lib/puppet/provider/name_server/cisco_nexus.rb', line 52

def delete(context, name)
  context.notice("Destroying '#{name}'")
  @name_servers = Cisco::NameServer.nameservers
  @name_servers[name].destroy
end

#get(_context, servers = nil) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/puppet/provider/name_server/cisco_nexus.rb', line 22

def get(_context, servers=nil)
  require 'cisco_node_utils'
  nameserver_instances = []
  @name_servers = Cisco::NameServer.nameservers
  if servers.nil? || servers.empty?
    @name_servers.each do |server, instance|
      nameserver_instances << get_current_state(server, instance)
    end
  else
    servers.each do |server|
      individual_server = @name_servers[server]
      next if individual_server.nil?
      nameserver_instances << get_current_state(server, individual_server)
    end
  end
  nameserver_instances
end

#get_current_state(server, _instance) ⇒ Object



40
41
42
43
44
45
# File 'lib/puppet/provider/name_server/cisco_nexus.rb', line 40

def get_current_state(server, _instance)
  {
    ensure: 'present',
    name:   server,
  }
end