Hi Justing,
The `install_options` package parameter in 2.7.x was intended to be
used for specifying MSI public properties. For example, from the
reference documentation for install_options[1]:
package { 'mysql':
ensure => installed,
provider => 'msi',
source => 'N:/packages/mysql-5.5.16-winx64.msi',
install_options => { 'INSTALLDIR' => 'C:\mysql-5.5' },
}
The msi package provider will transform the hash pair into
INSTALLDIR='c:\mysql-5.5' on the command line, and will automatically
quote either the key or value if it contains spaces -- to handle
things like INSTALLDIR='c:\Program Files\Vendor\Application'
In 3.0 the `install_options` parameter has been extended to allow
single valued arguments. So you can specify things like:
package { 'mysql':
ensure => installed,
source => 'N:/packages/mysql-5.5.16-winx64.msi',
install_options => [ '/S', { 'INSTALLDIR' => 'C:\mysql-5.5' } ],
}
Note the array, which contains a single string followed by a hash
pair. This will become `/S INSTALLDIR='C:\mysql-5.5'` on the command
line.
I recommend giving the 3.0rc7 release a try[2]. It supports both MSI
and executable installers on Windows, and you can specify
uninstall_options for Windows package resources (in the same format as
install_options).
Josh
[1]
http://docs.puppetlabs.com/references/2.7.19/type.html#package
[2]
https://groups.google.com/forum/?fromgroups=#!topic/puppet-users/BCyRtDcqeBY
--
Josh Cooper
Developer, Puppet Labs