Lorenzo Jesús Cubero
2013-Oct-23 14:12 UTC
[Puppet Users] Upgrading a .msi package through Puppet
Hey! I would like to be able of upgrade a windows application just copying the .msi file into a ../module/files directory, without having to modify any manifest. Something like: file { ''C:\\files\\packages\\Package.msi'': ensure => present, source => ''puppet:///modules/SOME-MODULE/packages/Package.msi'', } package { ''Package'': ensure => installed, provider => ''windows'', source => ''C:\\files\\packages\\Package.msi'', } The main problem I''m facing is to tell Puppet to install the latest version, without defining the specific package. I would like to do something like "version => latest". Any ideas on where to begin? -- 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+unsubscribe@googlegroups.com. To post to this group, send email to puppet-users@googlegroups.com. Visit this group at http://groups.google.com/group/puppet-users. For more options, visit https://groups.google.com/groups/opt_out.
Rob Reynolds
2013-Oct-23 18:18 UTC
Re: [Puppet Users] Upgrading a .msi package through Puppet
Take a look at https://projects.puppetlabs.com/issues/21133. I''m not sure if there is an ensure => latest yet or not. On Wed, Oct 23, 2013 at 9:12 AM, Lorenzo Jesús Cubero <lj.cubero@gmail.com>wrote:> > Hey! I would like to be able of upgrade a windows application just copying > the .msi file into a ../module/files directory, without having to modify > any manifest. > Something like: > > file { ''C:\\files\\packages\\Package.msi'': > ensure => present, > source => > ''puppet:///modules/SOME-MODULE/packages/Package.msi'', > } > > package { ''Package'': > ensure => installed, > provider => ''windows'', > source => ''C:\\files\\packages\\Package.msi'', > } > > The main problem I''m facing is to tell Puppet to install the latest > version, without defining the specific package. I would like to do > something like "version => latest". > > Any ideas on where to begin? > > -- > 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+unsubscribe@googlegroups.com. > To post to this group, send email to puppet-users@googlegroups.com. > Visit this group at http://groups.google.com/group/puppet-users. > For more options, visit https://groups.google.com/groups/opt_out. >-- Rob Reynolds Developer, Puppet Labs Join us at PuppetConf 2014, September 23-24 in San Francisco -- 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+unsubscribe@googlegroups.com. To post to this group, send email to puppet-users@googlegroups.com. Visit this group at http://groups.google.com/group/puppet-users. For more options, visit https://groups.google.com/groups/opt_out.
Lorenzo Jesús Cubero
2013-Oct-30 12:15 UTC
Re: [Puppet Users] Upgrading a .msi package through Puppet
Thanks Rob for guiding me. The ensure => latest feature is not ready yet, because it requires an upgradeable provider. What seems to be solved is ensure => ''0.0.1''. At the link you provide they made the windows provider versionable. (That requires facter version => 1.7.3-rc1) I managed to apply it to Puppet, so I can do something like: package { ''App'': ensure => ''0.1.1'', provider => ''windows'', source => ''C:\\files\\packages\\App.msi'', } Which installs a specific package without uninstalling any previous version already installed... wierd :( Any hint? On Wednesday, October 23, 2013 8:18:34 PM UTC+2, Rob Reynolds wrote:> > Take a look at https://projects.puppetlabs.com/issues/21133. I''m not sure > if there is an ensure => latest yet or not. > > > On Wed, Oct 23, 2013 at 9:12 AM, Lorenzo Jesús Cubero <lj.c...@gmail.com<javascript:> > > wrote: > >> >> Hey! I would like to be able of upgrade a windows application just >> copying the .msi file into a ../module/files directory, without having to >> modify any manifest. >> Something like: >> >> file { ''C:\\files\\packages\\Package.msi'': >> ensure => present, >> source => >> ''puppet:///modules/SOME-MODULE/packages/Package.msi'', >> } >> >> package { ''Package'': >> ensure => installed, >> provider => ''windows'', >> source => ''C:\\files\\packages\\Package.msi'', >> } >> >> The main problem I''m facing is to tell Puppet to install the latest >> version, without defining the specific package. I would like to do >> something like "version => latest". >> >> Any ideas on where to begin? >> >> -- >> 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...@googlegroups.com <javascript:>. >> To post to this group, send email to puppet...@googlegroups.com<javascript:> >> . >> Visit this group at http://groups.google.com/group/puppet-users. >> For more options, visit https://groups.google.com/groups/opt_out. >> > > > > -- > Rob Reynolds > Developer, Puppet Labs > > Join us at PuppetConf 2014, September 23-24 in San Francisco >-- 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+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/958adf6c-b9ce-453c-a24c-c92db2ac5ac8%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Rob Reynolds
2013-Oct-30 18:54 UTC
Re: [Puppet Users] Upgrading a .msi package through Puppet
I am curious if you have also looked at the other package providers that are out there - http://forge.puppetlabs.com/modules?q=windows+package I can tell you that the chocolatey provider does allow ensure => latest. Also the version on github is being improved to add source in addition to other things and will be updated sometime in the future. To answer your question about the uninstall with the windows package built-in provider, are you seeing this with all MSIs or just a specific one (perhaps that was custom built)? MSIs should upgrade themselves, unless there is an error in the MSI installer logic. Or if the logic allowed side by side installs, in which case I don''t think the provider takes that into account. On Wed, Oct 30, 2013 at 7:15 AM, Lorenzo Jesús Cubero <lj.cubero@gmail.com>wrote:> > Thanks Rob for guiding me. > > The ensure => latest feature is not ready yet, because it requires an > upgradeable provider. > > What seems to be solved is ensure => ''0.0.1''. > > At the link you provide they made the windows provider versionable. (That > requires facter version => 1.7.3-rc1) > > I managed to apply it to Puppet, so I can do something like: > > > package { ''App'': > ensure => ''0.1.1'', > provider => ''windows'', > source => ''C:\\files\\packages\\App.msi'', > } > > > Which installs a specific package without uninstalling any previous > version already installed... wierd :( > > Any hint? > > > On Wednesday, October 23, 2013 8:18:34 PM UTC+2, Rob Reynolds wrote: > >> Take a look at https://projects.**puppetlabs.com/issues/21133<https://projects.puppetlabs.com/issues/21133>. >> I''m not sure if there is an ensure => latest yet or not. >> >> >> On Wed, Oct 23, 2013 at 9:12 AM, Lorenzo Jesús Cubero <lj.c...@gmail.com>wrote: >> >>> >>> Hey! I would like to be able of upgrade a windows application just >>> copying the .msi file into a ../module/files directory, without having to >>> modify any manifest. >>> Something like: >>> >>> file { ''C:\\files\\packages\\Package.**msi'': >>> ensure => present, >>> source => ''puppet:///modules/SOME-** >>> MODULE/packages/Package.msi'', >>> } >>> >>> package { ''Package'': >>> ensure => installed, >>> provider => ''windows'', >>> source => ''C:\\files\\packages\\Package.**msi'', >>> } >>> >>> The main problem I''m facing is to tell Puppet to install the latest >>> version, without defining the specific package. I would like to do >>> something like "version => latest". >>> >>> Any ideas on where to begin? >>> >>> -- >>> 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...@**googlegroups.com. >>> To post to this group, send email to puppet...@googlegroups.com. >>> >>> Visit this group at http://groups.google.com/**group/puppet-users<http://groups.google.com/group/puppet-users> >>> . >>> For more options, visit https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>> . >>> >> >> >> >> -- >> Rob Reynolds >> Developer, Puppet Labs >> >> Join us at PuppetConf 2014, September 23-24 in San Francisco >> > -- > 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+unsubscribe@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/puppet-users/958adf6c-b9ce-453c-a24c-c92db2ac5ac8%40googlegroups.com > . > > For more options, visit https://groups.google.com/groups/opt_out. >-- Rob Reynolds Developer, Puppet Labs Join us at PuppetConf 2014, September 23-24 in San Francisco -- 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+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/CAMJiBK6fWbudYR5zJ0vjTaL%3Dq8PvWNWJJ_34Bs6ARjnZ_HfxLQ%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.
Josh Cooper
2013-Oct-31 04:00 UTC
Re: [Puppet Users] Upgrading a .msi package through Puppet
Hi Lorenzo, On Wed, Oct 30, 2013 at 11:54 AM, Rob Reynolds <rob@puppetlabs.com> wrote:> I am curious if you have also looked at the other package providers that > are out there - http://forge.puppetlabs.com/modules?q=windows+package > I can tell you that the chocolatey provider does allow ensure => latest. > Also the version on github is being improved to add source in addition to > other things and will be updated sometime in the future. > > To answer your question about the uninstall with the windows package > built-in provider, are you seeing this with all MSIs or just a specific one > (perhaps that was custom built)? MSIs should upgrade themselves, unless > there is an error in the MSI installer logic. Or if the logic allowed side > by side installs, in which case I don''t think the provider takes that into > account. >I agree with Rob, it sounds like the MSI is not authored correctly. Typically, each version of an MSI for a given product should have the same UpgradeCode, so that Windows recognizes that you are installing a new version of an existing product. If on the other hand, the product can co-exist with older versions, then you''ll need to treat them as independent `package` resources in your manifests. Josh -- Josh Cooper Developer, Puppet Labs -- 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+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/CA%2Bu97um0CzDe3tpn4R1qi2OZFZ6GKW%2BXs4WcbiWnY%2Bt7WQ6t6g%40mail.gmail.com. For more options, visit https://groups.google.com/groups/opt_out.
Lorenzo Jesús Cubero
2013-Nov-04 15:13 UTC
Re: [Puppet Users] Upgrading a .msi package through Puppet
Dear Rob and Josh, Indeed it was all about a custom build msi being unable to upgrade himself. All the packages have the same UpgradeCode, so I will keep investigating. Thank you both for your time. Lorenzo On Thursday, October 31, 2013 5:00:24 AM UTC+1, Josh Cooper wrote:> > Hi Lorenzo, > > > On Wed, Oct 30, 2013 at 11:54 AM, Rob Reynolds <r...@puppetlabs.com<javascript:> > > wrote: > >> I am curious if you have also looked at the other package providers that >> are out there - http://forge.puppetlabs.com/modules?q=windows+package >> I can tell you that the chocolatey provider does allow ensure => latest. >> Also the version on github is being improved to add source in addition to >> other things and will be updated sometime in the future. >> >> To answer your question about the uninstall with the windows package >> built-in provider, are you seeing this with all MSIs or just a specific one >> (perhaps that was custom built)? MSIs should upgrade themselves, unless >> there is an error in the MSI installer logic. Or if the logic allowed side >> by side installs, in which case I don''t think the provider takes that into >> account. >> > > I agree with Rob, it sounds like the MSI is not authored correctly. > Typically, each version of an MSI for a given product should have the same > UpgradeCode, so that Windows recognizes that you are installing a new > version of an existing product. If on the other hand, the product can > co-exist with older versions, then you''ll need to treat them as independent > `package` resources in your manifests. > > Josh > > -- > Josh Cooper > Developer, Puppet Labs >-- 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+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/147372e7-ea0a-45fd-9208-85290a6289de%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.