Class: Puppet::Provider::CommandDefiner Private
- Defined in:
- lib/puppet/provider.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Internal helper class when creating commands - undocumented.
Class Method Summary collapse
Instance Method Summary collapse
- #command ⇒ Object private
- #environment(env) ⇒ Object private
-
#initialize(name, path, confiner) ⇒ CommandDefiner
constructor
private
A new instance of CommandDefiner.
- #is_optional ⇒ Object private
Constructor Details
#initialize(name, path, confiner) ⇒ CommandDefiner
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of CommandDefiner.
252 253 254 255 256 257 258 |
# File 'lib/puppet/provider.rb', line 252 def initialize(name, path, confiner) @name = name @path = path @optional = false @confiner = confiner @custom_environment = {} end |
Class Method Details
.define(name, path, confiner, &block) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
246 247 248 249 250 |
# File 'lib/puppet/provider.rb', line 246 def self.define(name, path, confiner, &block) definer = new(name, path, confiner) definer.instance_eval(&block) if block definer.command end |
Instance Method Details
#command ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
268 269 270 271 272 273 274 |
# File 'lib/puppet/provider.rb', line 268 def command if not @optional @confiner.confine :exists => @path, :for_binary => true end Puppet::Provider::Command.new(@name, @path, Puppet::Util, Puppet::Util::Execution, { :failonfail => true, :combine => true, :custom_environment => @custom_environment }) end |
#environment(env) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
264 265 266 |
# File 'lib/puppet/provider.rb', line 264 def environment(env) @custom_environment = @custom_environment.merge(env) end |
#is_optional ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
260 261 262 |
# File 'lib/puppet/provider.rb', line 260 def is_optional @optional = true end |