Hi Adam

On Thu, Aug 16, 2012 at 3:19 PM, ad <adam.denn...@gmail.com> wrote:
> Jeff,
>
> Just to give you more ideas, and as someone who tends to reinvint wheels,
> what I do for this sort of thing on Windows is make custom types and use
> Ruby to handle download, unzip, md5, etc. Here's how a couple custom types I
> use look in a Puppet manifest:
>
>     media_player_msi { 'ensure_msi_version':
>         ensure          => present,
>         version         => $version,
>         download_dir    => $download_dir,
>         schedule        => 'msi_upgrades',
>         require         => Media_Player_Stage_Msi['ensure_msi_download'],
>         notify          => Exec['reboot'],
>     }
>
> I have a standardlib type module with generic functions for things like
> download, md5, etc. that are used in other custom types. Lacking a robust
> shell, tools, and package management on Windows, I find this approach
> cleaner than trying to ship binaries and use cmd.exe.
>

It would be great to get this on the forge, would you be willing to publish it?

> Also, check out Ruby's win32 stuff, or even just wmic. You may find working
> with MSI's easier this way than using the 2.7x type in Puppet.

Be careful with wmic and msi's. Simply enumerating the list of
installed products will cause wmi to perform a consistency check
across all installed products[1]. Probably not what you wanted!

I've made some improvements to the MSI package provider on Windows in
2.7.19[2] (currently in rc and will be out "soon"). It would be great
if you could give that a try.

Also, we'll have support for executable packages in 3.x[3].

And, Rich has a package provider using chocolately (a la apt-get for
windows)[4][5].

Josh

[1] http://gregramsey.net/2012/02/20/win32_product-is-evil/
[2] http://projects.puppetlabs.com/issues/11868
[3] http://projects.puppetlabs.com/issues/11870
[4] https://github.com/rismoney/puppet-chocolatey
[5] http://projects.puppetlabs.com/issues/15541

-- 
Josh Cooper
Developer, Puppet Labs

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to