lib/puppet/provider/nameservice.rb in puppet-0.22.4 vs lib/puppet/provider/nameservice.rb in puppet-0.23.0
- old
+ new
@@ -23,26 +23,14 @@
def initvars
@checks = {}
super
end
- def list
+ def instances
objects = []
listbyname do |name|
- obj = nil
- check = model.validproperties
- if obj = model[name]
- obj[:check] = check
- else
- # unless it exists, create it as an unmanaged object
- obj = model.create(:name => name, :check => check)
- end
-
- next unless obj # In case there was an error somewhere
-
- objects << obj
- yield obj if block_given?
+ objects << new(:name => name, :ensure => :present)
end
objects
end
@@ -54,13 +42,13 @@
return nil
end
end
def options(name, hash)
- unless model.validattr?(name)
+ unless resource_type.validattr?(name)
raise Puppet::DevError, "%s is not a valid attribute for %s" %
- [name, model.name]
+ [name, resource_type.name]
end
@options ||= {}
@options[name] ||= {}
# Set options individually, so we can call the options method
@@ -87,13 +75,13 @@
end
return names
end
- def model=(model)
+ def resource_type=(resource_type)
super
- @model.validproperties.each do |prop|
+ @resource_type.validproperties.each do |prop|
next if prop == :ensure
unless public_method_defined?(prop)
define_method(prop) { get(prop) || :absent}
end
unless public_method_defined?(prop.to_s + "=")
@@ -103,17 +91,17 @@
end
# This is annoying, but there really aren't that many options,
# and this *is* built into Ruby.
def section
- unless defined? @model
+ unless defined? @resource_type
raise Puppet::DevError,
- "Cannot determine Etc section without a model"
+ "Cannot determine Etc section without a resource type"
end
- if @model.name == :group
+ if @resource_type.name == :group
"gr"
else
"pw"
end
end
@@ -144,11 +132,11 @@
# Autogenerate a value. Mostly used for uid/gid, but also used heavily
# with netinfo, because netinfo is stupid.
def autogen(field)
field = symbolize(field)
id_generators = {:user => :uid, :group => :gid}
- if id_generators[@model.class.name] == field
+ if id_generators[@resource.class.name] == field
return autogen_id(field)
else
if value = self.class.autogen_default(field)
return value
elsif respond_to?("autogen_%s" % [field])
@@ -163,15 +151,15 @@
# generate one field type per class.
def autogen_id(field)
highest = 0
group = method = nil
- case @model.class.name
+ case @resource.class.name
when :user: group = :passwd; method = :uid
when :group: group = :group; method = :gid
else
- raise Puppet::DevError, "Invalid model name %s" % model
+ raise Puppet::DevError, "Invalid resource name %s" % resource
end
# Make sure we don't use the same value multiple times
if defined? @@prevauto
@@prevauto += 1
@@ -237,11 +225,11 @@
begin
execute(cmd)
rescue Puppet::ExecutionFailure => detail
raise Puppet::Error, "Could not %s %s %s: %s" %
- [type, @model.class.name, @model.name, detail]
+ [type, @resource.class.name, @resource.name, detail]
end
end
# Does our object exist?
def exists?
@@ -264,11 +252,11 @@
# Retrieve what we can about our object
def getinfo(refresh)
if @objectinfo.nil? or refresh == true
@etcmethod ||= ("get" + self.class.section().to_s + "nam").intern
begin
- @objectinfo = Etc.send(@etcmethod, @model[:name])
+ @objectinfo = Etc.send(@etcmethod, @resource[:name])
rescue ArgumentError => detail
@objectinfo = nil
end
end
@@ -286,11 +274,11 @@
groups = []
# Reset our group list
Etc.setgrent
- user = @model[:name]
+ user = @resource[:name]
# Now iterate across all of the groups, adding each one our
# user is a member of
while group = Etc.getgrent
members = group.mem
@@ -308,21 +296,21 @@
end
# Convert the Etc struct into a hash.
def info2hash(info)
hash = {}
- self.class.model.validproperties.each do |param|
+ self.class.resource_type.validproperties.each do |param|
method = posixmethod(param)
if info.respond_to? method
hash[param] = info.send(posixmethod(param))
end
end
return hash
end
- def initialize(model)
+ def initialize(resource)
super
@objectinfo = nil
end
@@ -334,11 +322,11 @@
end
begin
execute(cmd)
rescue Puppet::ExecutionFailure => detail
raise Puppet::Error, "Could not set %s on %s[%s]: %s" %
- [param, @model.class.name, @model.name, detail]
+ [param, @resource.class.name, @resource.name, detail]
end
end
end
-# $Id: nameservice.rb 2359 2007-03-28 06:06:54Z luke $
+# $Id: nameservice.rb 2555 2007-06-08 17:20:00Z luke $