Thanks Jacob..  I'll try this out.  I was also thinking about hosting
our own apt repo and then we could use "apt" instead of "dpkg"

On Oct 8, 7:26 pm, Jacob Helwig <[email protected]> wrote:
> On Fri, 08 Oct 2010 16:20:39 -0700, Jacob Helwig wrote:
> > Date: Fri, 8 Oct 2010 16:20:39 -0700
> > From: Jacob Helwig <[email protected]>
> > To: [email protected]
> > Subject: Re: [Puppet Users] Re: How to update a package using puppet and a
> >  .deb file
> > User-Agent: Mutt/1.5.20 (2009-06-14)
> > Message-ID: <[email protected]>
>
> > On Fri, 08 Oct 2010 13:53:26 -0700, Tim C wrote:
>
> > > On Oct 7, 11:46 am, Tim C <[email protected]> wrote:
> > > > I am trying to figure out the proper way to update/upgrade a deb
> > > > package using puppet from a local source deb file. My current config
> > > > looks like this...
>
> > > > class adobe-air-2-0-4 {
>
> > > >   file { "/opt/air-debs":
> > > >     ensure => directory
> > > >   }
>
> > > >   file { "/opt/air-debs/adobeair-2.0.4.deb":
> > > >     owner   => root,
> > > >     group   => root,
> > > >     mode    => 644,
> > > >     ensure  => present,
> > > >     source  => "puppet://puppet/adobe-air-2-0-4/adobeair-2.0.4.deb"
> > > >   }
>
> > > >   package { "adobeair":
> > > >     provider => dpkg,
> > > >     ensure => installed,
> > > >     source => "/opt/air-debs/adobeair-2.0.4.deb"
> > > >   }
>
> > > > }
>
> > > > I first copy the deb file down to the client machine and then use
> > > > 'package' with the provider set to 'dpkg'. This works and I get the
> > > > correct version installed.
>
> > > > My question is what is the proper way to update this package in the
> > > > future. Can I simply change out the source file and puppet will know
> > > > that it's a different version and update this package? How does puppet
> > > > determine what version of a package it has installed versus the
> > > > version of the source deb file?
>
> > > > I am pretty new to puppet, so if you have an suggestions for
> > > > improvements to my existing config they are very much appreciated.
>
> > > > I have also posted this question 
> > > > here...http://serverfault.com/questions/188632/how-to-update-a-package-using...
>
> > > Can anyone help me with this or point me in the right direction?  Do I
> > > have to use a package repository to ensure a correct version or can I
> > > do it using the approach below?
>
> > Tim,
>
> > I've never really used the dpkg provider before, but a quick test seems
> > to indicate that just changing the source file isn't sufficient to get
> > the new version installed.
>
> > Installing first with:
>
> > package { "puppet-dashboard":
> >   provider => dpkg,
> >   ensure   => installed,
> >   source   => "/tmp/puppet-dashboard_1.0.4rc2-1_all.deb"
> > }
>
> > Then changing the source to be:
>
> > package { "puppet-dashboard":
> >   provider => dpkg,
> >   ensure   => installed,
> >   source   => "/tmp/puppet-dashboard_1.0.4rc2-2_all.deb"
> > }
>
> > The 1.0.4rc2-2 version is not installed.
>
> > Off hand, I'm not sure what the right way to do it would be, but I can
> > confirm that just changing the source with the dpkg provider is not
> > sufficient.
>
> > --
> > Jacob Helwig
>
> Well, Nan just suggested that we try "ensure => latest", and that _does_
> get it to upgrade the package, when the source line is changed.
>
> So... Something like the following for the package should get what you
> want:
>
> package { "puppet-dashboard":
>   provider => dpkg,
>   ensure   => latest,
>   source   => "/tmp/puppet-dashboard_1.0.4rc2-1_all.deb"
>
> }
>
> --
> Jacob Helwig
>
>  signature.asc
> < 1KViewDownload

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" 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-users?hl=en.

Reply via email to