help-cfengine
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: method to check for package installation


From: David Kewley
Subject: Re: method to check for package installation
Date: Wed, 28 Apr 2004 11:57:43 -0700
User-agent: KMail/1.5

Graham Allan wrote on Tuesday 27 April 2004 17:38:
> I'm trying to write a method file to check if a particular RPM package
> is installed, and if not, install it.

Here's my simple solution to installing all the rpms that we need.

I define yum package groups in the yum repository's yumgroups.xml, then I 
have cfengine do, e.g.

  yum -d1 -e0 -y groupinstall "CS Workstation"

where "CS Workstation" is the name of the package group that all 
workstations in the Computer Science department need.  Yum takes care of 
all the needed packages, and all their dependencies, and any updates to any 
of them, in one fell swoop.  It really is a one-liner in cfengine, one that 
only takes 10 seconds or so to execute on a modern machine that needs no 
packages updated or installed.  So I run it every hour.

The key, of course, is constructing the yumgroups.xml in such a way that 
it's easy to add a new package at any time (so that the sysadmin energy 
barrier to adding packages is low).  I do that with a python script that I 
can describe and possibly distribute if desired.  The package groups are 
defined in a simple directory/file structure, one file per package group, 
and the file can include comments for documentation and nearly-arbitrary 
whitespace for readability.

David





reply via email to

[Prev in Thread] Current Thread [Next in Thread]