Hello:

We at Ariel are testing out both the Ant and RPM tools to help implement an
automated build and release environment.  The obvious question ensues: what
about an Ant task to control RPM?

Ant is (roughly) a replacement for Make, using XML build files instead of Makefiles and
written in 100% java. In order to extend its capabilities, you write a new subclass
of "Task" in java and add it to a jar file-- rather than writing a make rule using a
pseudo shell language. It is super portable-- as portable as java.


RPM (RPM Package Manager, formerly known as the Redhat Package Manager)
does things like preparing packages, installing them, validating them,
configuring them, building, etc. The "spec" file is roughly RPM's version of the
Ant "build.xml" file.


As for the integration, at the very least the Ant task could call RPM with certain options.
But perhaps it could even help automate the creation of new RPM spec files?


Challenges: RPM is written in C. I don't believe that it is open source.
It requires a UNIX like environment in order to
run including shells, certain GNU shared libraries, and the berkeley database.
The RPM spec file looks alot like a Makefile, with all of its "wrinkles." On the whole,
RPM is crying out to be rewritten using Java and XML IMHO ;-)


Anyway, has anyone else had this crazy idea?

Have any of the other Ant tasks had to call native code libraries? Is it folly to even
think about it? Should it instead be done by punting and calling out to a shell task?


Thanks for any and all advice,

--Craeg Strong
Ariel Partners LLC



Reply via email to