On Thursday, May 23, 2013 at 5:10:48 AM UTC+8, Kevin D wrote:
>
> Matt,
>
> I tried your class in my test environment. Here are my findings:
>
> Using Microsoft's Process Monitor
> <http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx>, we
> capture Puppet's call to MSIEXE, the "command line" value reads:
>
> msiexec.exe /qn /no restart /i \\\\example.com\\temp\\python-2.7.3.amd64.msi
> INSTALLDIR=C:\python27 ALLUSERS=1
>
> It makes sense that you are getting an error because msiexec cannot find
> "\\\\example.com\\temp\\python-2.7.3.amd64.msi".
>
> In order to successfully install, change the "source" line single quotes
> (') to double quotes("). On next Puupet run, Process Monitor "command
> line" value reads:
>
> msiexec.exe /qn /no restart /i \\example.com\temp\python-2.7.3.amd64.msi
> INSTALLDIR=C:\python27 ALLUSERS=1
>
>
> *Another note:*Using Microsoft's orca.exe
> <http://msdn.microsoft.com/en-us/library/windows/desktop/aa370557%28v=vs.85%29.aspx>,
>
> the "python-2.7.3.amd64.msi" doesn't contain properties for INSTALLDIR or
> ALLUSERS. These aren't msiexec default properties either. As a result,
> these parameters are being ignored by msiexec. You wouldn't notice this
> because the values you happen provided for these errant keys are the
> defaults. If you comment the " install_options" line, it will still
> install in C:\Python27 for all users.
>
> If you wanted to specify a custom install directory, you would need to use
> TARGETDIR.
> If you wanted to restrict user access, you would need to use WHICHUSERS.
> WHICHUSERS accepts "ALL" or "JUSTME"
>
> To install for the current user in specified directory "C:\python273"
>
> install_options => [ { 'TARGETDIR' => 'C:\python273' }, { 'WHICHUSERS' =>
> 'JUSTME' } ],
>
>
> Here is your stanza fixed (with the install_options line optional [since
> you are using the defaults]):
>
> class python::install {
> package { 'python':
> ensure => installed,
> provider => 'msi',
> source => "\\\\example.com
> \\software\\python\\python-2.7.3.amd64.msi",
> #install_options => [ { 'TARGETDIR' => 'C:\python27' }, {
> 'WHICHUSER => 'ALL' } ],
> }
> }
>
> I hope this helps.
>
> -Kev
>
Hi I've been trying to execute what you have checked done here but i still
get the error of "does not know how to install, here is my code:
package { "python-2.7.3.amd64":
ensure => 'installed',
source => "${$installexec}/python-2.7.3.amd64",
install_options => [{'TARGETDIR' => 'c:/python27'} ,
{'WHICHUSERS' => 'ALL'} ]
}
can you help me?
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/c999ebc1-ef6b-46f9-aa4b-d01b140be0c8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.