Issue #8410 has been updated by Josh Cooper.

Category set to windows
Estimated time set to 32.00

The exec provider will likely call SUIDManager.run_and_capture, which calls 
Puppet::Util.execute, but there are two problems on Windows:

* The call to Process.create (using win32/process) returns a ProcessInfo struct 
instead of an array. It needs to call the waitpid2 method with the 
ProcessInfo.process_id field. Also note that the Process.create method closes 
the child process HANDLE (in the ProcessInfo struct), so don't try to use that 
HANDLE. See http://rubydoc.info/gems/win32-process/0.6.5/Process:create
* On Unix, the parent forks a child, and the child perform the exec. But on 
Windows, the parent process calls Process.create directly and it is not wrapped 
in a begin-ensure block, so if there is an error, e.g. program doesn't exist, 
the execute method won't raise an ExecutionFailure like it does on Unix.

----------------------------------------
Feature #8410: Exec provider for Windows
https://projects.puppetlabs.com/issues/8410

Author: Jacob Helwig
Status: Accepted
Priority: Normal
Assignee: 
Category: windows
Target version: 
Affected Puppet version: 
Keywords: 
Branch: 


Basic ability to run commands.

Commands must either be present in PATH, or fully specified.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to