FHS, zopectl, #925, Re: [Zope-dev] 2.7 installation
Shane Hathaway
shane@zope.com
Fri, 20 Jun 2003 10:37:33 -0400
Jean Jordaan wrote:
>> It *sounds* like it's being suggested that we replace "make"
>
>
> That's correct, though Aap can usefully do much more than make,
> such as fetching remote sources and managing CVS checkouts/-ins.
This is the kind of thing I'm interested in. I don't need a make
replacement, I need a way to manage combinations of software. I have
the following essential use cases:
1. Zope Corp.'s customer needs to install 15-20 particular versions of
software that ZC ships to them (including Python, Zope, ZRS, Zope
products, Spread, and some scripts.) The customer needs the process of
installing to take a minimum of effort, therefore all packages should be
bundled into a single archive and the whole build process should be
automated. Zope Corp. needs to be sure that the customer installs
exactly the right versions of software. Once the software is installed,
the customer should be able to run some tests to verify correct
installation.
2. When Zope Corp. ships a new version of the software to the customer,
the process of upgrading should be as simple as the first installation.
The upgrade process should remove old files before installing new files.
I also have the following important, but not essential, use cases:
3. It should be possible to find out easily what software versions and
CVS tags the customer is using. Therefore, all software versions and
CVS tags should be managed in a central place, ideally in a single,
short file.
4. It should be easy to build the software from scratch. This primarily
serves the needs of developers, but it also serves customers who want to
build the software on their own systems rather than use binary packages.
5. The software should be managed independently of the operating system.
The system might have a stock version of Python 2.1.2 installed, but
my software requires Python 2.1.3 with large file support and a patch to
distutils.
So, does a-a-p or scons do those things? (This might be too much to
ask, but my little prototype software combination manager does almost
all of these things.)
Shane