Class: Puppet::Provider::NameService::ObjectAdd

Inherits:
Puppet::Provider::NameService show all
Defined in:
lib/puppet/provider/nameservice/objectadd.rb

Direct Known Subclasses

PW

Constant Summary

Constants inherited from Puppet::Provider

Confine

Constants included from Util::Logging

Util::Logging::FILE_AND_LINE, Util::Logging::FILE_NO_LINE, Util::Logging::MM, Util::Logging::NO_FILE_LINE, Util::Logging::SUPPRESS_FILE_LINE

Constants included from Util

Util::AbsolutePathPosix, Util::AbsolutePathWindows, Util::DEFAULT_POSIX_MODE, Util::DEFAULT_WINDOWS_MODE

Constants included from Util::POSIX

Util::POSIX::LOCALE_ENV_VARS, Util::POSIX::USER_ENV_VARS

Constants included from Util::SymbolicFileMode

Util::SymbolicFileMode::SetGIDBit, Util::SymbolicFileMode::SetUIDBit, Util::SymbolicFileMode::StickyBit, Util::SymbolicFileMode::SymbolicMode, Util::SymbolicFileMode::SymbolicSpecialToBit

Constants included from Util::Docs

Util::Docs::HEADER_LEVELS

Instance Attribute Summary

Attributes inherited from Puppet::Provider

#resource

Attributes included from Util::Docs

#doc, #nodoc

Instance Method Summary collapse

Methods inherited from Puppet::Provider::NameService

#autogen, autogen_default, autogen_defaults, autogen_id, #comments_insync?, #create, #delete, #ensure, #exists?, #get, #getinfo, #groups, #info2hash, #initialize, initvars, instances, listbyname, #munge, option, options, resource_type=, section, #set, #unmunge, validate, verify

Methods inherited from Puppet::Provider

#<=>, #clear, #command, command, commands, declared_feature?, default?, default_match, defaultfor, execfail, #execfail, execpipe, #execpipe, execute, #execute, fact_match, feature_match, #flush, #get, has_command, #initialize, initvars, #inspect, instances, mk_resource_methods, #name, optional_commands, post_resource_eval, prefetch, #set, specificity, supports_parameter?, #to_s

Methods included from Util::Logging

#clear_deprecation_warnings, #debug, #deprecation_warning, #format_exception, #get_deprecation_offender, #log_and_raise, #log_deprecations_to_file, #log_exception, #puppet_deprecation_warning, #send_log, setup_facter_logging!, #warn_once

Methods included from Util

absolute_path?, benchmark, chuser, clear_environment, default_env, deterministic_rand, deterministic_rand_int, exit_on_fail, get_env, get_environment, logmethods, merge_environment, path_to_uri, pretty_backtrace, replace_file, safe_posix_fork, set_env, symbolizehash, thinmark, uri_encode, uri_query_encode, uri_to_path, which, withenv, withumask

Methods included from Util::POSIX

#get_posix_field, #gid, #idfield, #methodbyid, #methodbyname, #search_posix_field, #uid

Methods included from Util::SymbolicFileMode

#normalize_symbolic_mode, #symbolic_mode_to_int, #valid_symbolic_mode?

Methods included from Util::Docs

#desc, #dochook, #doctable, #markdown_definitionlist, #markdown_header, #nodoc?, #pad, scrub

Methods included from Util::Warnings

clear_warnings, debug_once, notice_once, warnonce

Methods included from Confiner

#confine, #confine_collection, #suitable?

Methods included from Util::Errors

#adderrorcontext, #devfail, #error_context, #exceptwrap, #fail

Constructor Details

This class inherits a constructor from Puppet::Provider::NameService

Instance Method Details

#deletecmdObject



5
6
7
# File 'lib/puppet/provider/nameservice/objectadd.rb', line 5

def deletecmd
  [command(:delete), @resource[:name]]
end

#flag(name) ⇒ Object

Determine the flag to pass to our command.



10
11
12
13
# File 'lib/puppet/provider/nameservice/objectadd.rb', line 10

def flag(name)
  name = name.intern if name.is_a? String
  self.class.option(name, :flag) || "-" + name.to_s[0,1]
end

#modifycmd(param, value) ⇒ Object



15
16
17
18
19
20
21
22
23
24
# File 'lib/puppet/provider/nameservice/objectadd.rb', line 15

def modifycmd(param, value)
  cmd = [command(param.to_s =~ /password_.+_age/ ? :password : :modify)]
  cmd << flag(param) << value
  if @resource.allowdupe? && ((param == :uid) || (param == :gid and self.class.name == :groupadd))
    cmd << "-o"
  end
  cmd << @resource[:name]

  cmd
end

#posixmethod(name) ⇒ Object



26
27
28
29
30
31
# File 'lib/puppet/provider/nameservice/objectadd.rb', line 26

def posixmethod(name)
  name = name.intern if name.is_a? String
  method = self.class.option(name, :method) || name

  method
end