help-cfengine
[Top][All Lists]
Advanced

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

Re: Patch to add install action to packages:


From: David Douthitt
Subject: Re: Patch to add install action to packages:
Date: Mon, 28 Feb 2005 12:27:22 -0600
User-agent: Mozilla Thunderbird 1.0 (Macintosh/20050120)

Phil D'Amore wrote:
Don't forget AIX, IRIX, blah blah blah.  You or anyone else that
needs them are more than welcome to write support for them.  Have
fun! :)

There are already tools to manage packages in each environment; cfengine shouldn't replicate their code.

I hope I'm not too late in coming to this discussion, but I would suggest that it might be better to have a generic packaging set up, and use that instead.

The thing you need to understand here is that is this matched to the *database* used to store the package metadata. Every database
requires different commands to get the job of querying it done.

These different commands should be abstracted. If I want to know if a package is installed, then a command PkgInstalled should be sufficient.

For you other point, if RPM was replaced with something else later
on, then it would have a new name, and a different database query
method. You can only abstract things so much before you have to deal
with the fact that all of these databases are totally different, and
you had better know which one you are selecting.  Making the names
generic is pointless because you lose the ability to select, and we
start making ASSumptions of which database to use based on useless
data such as the host OS.  They need to be distinct for the exact
reason you state in your example.

Not so. First of all, the backend database could be anything. RPM could change from db3 to mysql, or who knows what else.

Consider apt-get. I can get onto a properly configured Red Hat system or a Debian system, use the same command - and not even realize that the packaging used is completely different.

It should be this way for cfengine, too.

As far as "losing the ability to select" - this is not what I had in mind. The names should be generic - the configuration should be separated and set up by the user. Thus if "PkgInstallCmd" on a Solaris system uses RPM, what of it? Configure it that way.... and likewise, "PkgEraseCmd" and so forth.

I'm not refering to taking the ability to choose the packaging method away from the user - even on the fly - but to taking away the package specific naming scheme...

--
David Douthitt
UNIX System Administrator
Linux+, LPIC-1, RHCE
HP-UX, Unixware, Linux, FreeBSD, OpenBSD
Member: ACM, USENIX/SAGE




reply via email to

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