[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: method to check for package installation
From: |
Chip Seraphine |
Subject: |
Re: method to check for package installation |
Date: |
Wed, 28 Apr 2004 08:59:42 -0500 |
User-agent: |
KMail/1.5.4 |
Consistency is good, but so is not spending too much effort on code you intend
to junk in the forseeable future.
I gave up on thinking too hard about that same problem because RPM and Sol pkg
are just fundamentally different animals. RPM is a lot better than Sol is at
relocation, noninteractive installs, transparent upgrades, diagnostics, etc,
and I was sort of crippling myself by trying to treat them as
interchangeable. (ObligEcumenicalRemark: Sol pkgs have their advantages
too!)
Anyway, I wrote a module in Perl to handle the package updates (it reads a
list of desired packages and versions from files based on the defined
classes) and now use packages: (plus a smaller perl script) to handle the
RPMs. When The Time Comes, I will happily junk the Sol pkg module and write
another packages: section, but I figured there is no reason to spend time
having my package-module support RPM when that is a dead end.
On Wednesday 28 April 2004 08:06, Christian Pearce wrote:
> Chip,
>
> Yea I saw you guys were having issues with it. I am currently using
> 2.1.4. I would like to move to packaging. I want it to support Solaris
> first. I don't know if I will personally get a chance to write any of
> that. Have there been requests in the past? The reason I still with
> this way of doing it is for consistency.
>
> On Wed, 2004-04-28 at 09:01, Chip Seraphine wrote:
> > Be careful if you are using the latest versions.... ReturnsZero() has not
been
> > working lately for me (and some others on the list).
> >
> >
> > On Wednesday 28 April 2004 07:17, Christian Pearce wrote:
> > > Graham,
> > >
> > > I have been doing this for years.
> > >
> > > control:
> > >
> > > logwatch_rev = ( "5.1-1" )
> > > logwatch_package = ( "logwatch-$(logwatch_rev).noarch.rpm" )
> > >
> > > groups:
> > > # Test to see if logwatch is installed.
> > > logwatch_installed = ( ReturnsZero(${rpm} -q --quiet logwatch) )
> > >
> > > # Test to see if logwatch is upgraded to the latest version.
> > > logwatch_upgraded = ( ReturnsZero(${rpm} -q --quiet
> > > logwatch-${logwatch_rev}) )
> > >
> > >
> > >
> > > On Tue, 2004-04-27 at 20:38, Graham Allan wrote:
> > > > I'm trying to write a method file to check if a particular RPM package
> > > > is installed, and if not, install it.
> > > >
> > > > So far I've completely failed to make cfengine check whether a package
> > > > is installed, when the package name is held in a variable.
> > > >
> > > > Attempts 1 and 2 were to define a class.
> > > >
> > > > classes:
> > > > package_installed = ( '/bin/rpm -q ${packagename}' )
> > > >
> > > > and...
> > > >
> > > > classes:
> > > > package_installed = ( ReturnsZero(/bin/rpm -q ${packagename}) )
> > > >
> > > > Attempt 3 was use use the "packages" action.
> > > >
> > > > packages:
> > > > any::
> > > > $(packagename) pkgmgr=rpm define=package_installed
> > > >
> > > >
> > > > In every case, the cfengine output shows that rpm is being called to
> > > > check for a literal "${packagename}" package - the variable is not
> > > > getting substituted. The same commands work fine when they contain the
> > > > literal package name.
> > > >
> > > > Is there any way I've missed that might make this work?
> > > >
> > > > G.
> > > --
> > > Christian Pearce
> > > http://www.commnav.com
> > > http://www.perfectorder.com
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > Help-cfengine mailing list
> > > Help-cfengine@gnu.org
> > > http://mail.gnu.org/mailman/listinfo/help-cfengine
> > >
> --
> Christian Pearce
> http://www.commnav.com
> http://www.perfectorder.com
>
>
- Re: method to check for package installation, (continued)
Re: method to check for package installation, Mark . Burgess, 2004/04/28
Re: method to check for package installation, Christian Pearce, 2004/04/28
Re: method to check for package installation, Ed Brown, 2004/04/28
Re: method to check for package installation, David Kewley, 2004/04/28