Class: Puppet::Provider::Comware

Inherits:
Puppet::Provider
  • Object
show all
Defined in:
lib/puppet/provider/comware/comware_parent.rb

Direct Known Subclasses

Interface, L2Interface, L2vpn, Lagg, Vlan, Vsi, Vte, Vxlan

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#ndev_resObject

Returns the value of attribute ndev_res.



6
7
8
# File 'lib/puppet/provider/comware/comware_parent.rb', line 6

def ndev_res
  @ndev_res
end

Class Method Details

.mk_netdev_resource_methodsObject



63
64
65
66
67
68
69
70
# File 'lib/puppet/provider/comware/comware_parent.rb', line 63

def self.mk_netdev_resource_methods
  (resource_type.validproperties - [:ensure]).sort.each do |prop|
    prop_sym = Facter.value(:puppetversion).to_i >= 3 ? prop.intern : symbolize(prop)
    define_method(prop_sym) do
      netdev_res_property( prop_sym )
    end
  end
end

.mk_netdev_xml_change_methodsObject



53
54
55
56
57
58
59
60
61
# File 'lib/puppet/provider/comware/comware_parent.rb', line 53

def self.mk_netdev_xml_change_methods
  (resource_type.validproperties - [:ensure]).sort.each do |prop|
    method_name = "xml_change_#{prop}"
    prop_sym = Facter.value(:puppetversion).to_i >= 3 ? method_name.intern : symbolize(method_name)
    define_method(method_name) do |xml|

    end
  end
end

Instance Method Details

#config_del(name) ⇒ Object



40
41
42
# File 'lib/puppet/provider/comware/comware_parent.rb', line 40

def config_del( name )
  @ndev_res.del name
end

#config_update(name) ⇒ Object



35
36
37
38
# File 'lib/puppet/provider/comware/comware_parent.rb', line 35

def config_update( name )
  @ndev_res.update name
  @@netdev.edit_config( @ndev_res )
end

#createObject



8
9
10
11
# File 'lib/puppet/provider/comware/comware_parent.rb', line 8

def create
  @ndev_res[:netconf_op] = Netconf::Operation::CREATE
  Puppet.debug( "#{self.resource.type}: CREATE #{resource[:name]}" )
end

#destroyObject



13
14
15
16
17
# File 'lib/puppet/provider/comware/comware_parent.rb', line 13

def destroy
  @ndev_res[:netconf_op] = Netconf::Operation::DELETE
  Puppet.debug( "#{self.resource.type}:: DESTROY #{resource[:name]}" )
  config_del resource[:name]
end

#exists?Boolean

Returns:

  • (Boolean)


19
20
21
22
23
24
# File 'lib/puppet/provider/comware/comware_parent.rb', line 19

def exists?
  Puppet.debug( "#{self.resource.type}: checking #{resource[:name]}" )
  return false unless netdev_res_exists?
  @ndev_res[:netconf_op] = Netconf::Operation::MERGE
  true
end

#flushObject



26
27
28
29
30
31
32
33
# File 'lib/puppet/provider/comware/comware_parent.rb', line 26

def flush
  if defined? @ndev_res[:name]
    Puppet.debug( "#{self.resource.type}:: Flusing #{resource[:name]}" )
    config_update resource[:name]
  else
    Puppet.debug( "#{self.resource.type}:: Nothing to flush #{resource[:name]}" )
  end
end

#netdev_create(args) ⇒ Object



44
45
46
47
# File 'lib/puppet/provider/comware/comware_parent.rb', line 44

def netdev_create(args)
  @@netdev ||= NetdevComware::Device.new(args)
  netdev_get
end

#netdev_getObject



49
50
51
# File 'lib/puppet/provider/comware/comware_parent.rb', line 49

def netdev_get
  return (@@netdev.ready) ? @@netdev : nil
end

#netdev_res_property(key) ⇒ Object



72
73
74
# File 'lib/puppet/provider/comware/comware_parent.rb', line 72

def netdev_res_property(key)
  @ndev_res[key]
end

#netdev_resxml_create_top(xml) ⇒ Object



84
85
86
# File 'lib/puppet/provider/comware/comware_parent.rb', line 84

def netdev_resxml_create_top( xml )
  netdev_resxml_top( xml )
end

#netdev_resxml_delete(xml) ⇒ Object



92
93
94
# File 'lib/puppet/provider/comware/comware_parent.rb', line 92

def netdev_resxml_delete( xml )
  netdev_resxml_top( xml )
end

#netdev_resxml_edit(xml) ⇒ Object



96
97
98
# File 'lib/puppet/provider/comware/comware_parent.rb', line 96

def netdev_resxml_edit(xml)
    return xml
end

#netdev_resxml_merge_top(xml) ⇒ Object



80
81
82
# File 'lib/puppet/provider/comware/comware_parent.rb', line 80

def netdev_resxml_merge_top( xml )
  netdev_resxml_top( xml )
end

#netdev_resxml_replace_top(xml) ⇒ Object



88
89
90
# File 'lib/puppet/provider/comware/comware_parent.rb', line 88

def netdev_resxml_replace_top( xml )
  netdev_resxml_top( xml )
end

#netdev_resxml_table_nameObject



100
101
102
# File 'lib/puppet/provider/comware/comware_parent.rb', line 100

def netdev_resxml_table_name
  ''
end

#netdev_resxml_top(xml) ⇒ Object



76
77
78
# File 'lib/puppet/provider/comware/comware_parent.rb', line 76

def netdev_resxml_top( xml )
  return xml
end