[Pyb-developer] RE: pyb collaboration
Status: Alpha
Brought to you by:
aeden
From: Andy R. <an...@re...> - 2004-04-23 21:41:06
|
Hi folks. I just joined. I am starting a campaign for 'best practice standards in enterprise deployment' in Python, something my company needs badly, and one big item on my wish list is something like Ant. There are several contenders but this looks like the simplest and cleanest so far... I'd like to ask a few questions about where pyb might go, subject to sufficient resources. 0. GPL: fine for now, but if Guido agreed to get it into the standard Python library one day (which is BSD/LGPL-like), would you accept? (we can dream....) 1. Ant has a standard way to keep config info external to the build script (ftp servers, hosts, passwords); you can thus safely check in build scripts and have a config file in each environment. Is this desirable? 2. filesets as objects: The copy task and friends seem to be just walking the tree under where you start with include and exclude filters. Is this just a starting point or do you feel it is the optimum solution? I have seen half a dozen classes like filesets in Ant, including one buried in distutils, and everyone doing deployment stuff implements one. I'd like to see one as a standard Python library module one day. I also implemented the 'superglob' (e.g. include "spam/**/*.py") which I find very nice expressive syntax, and can contribute this if desired. 3. Python versus XML: should build scripts be Python forever, or would a mapping from XML be useful later? (I have a 50/50 split with people I have talked to, I also tend to feel GUIs to build/edit build scripts are good, if further off..) 4. tasks as objects vs. tasks as functions. The latter is the way you have gone and Java has no functions :-) I wonder if the former would be more useful if you ever want to (a) instantiate from xml (i.e. have enough metadata to know the type of arguments) (b) give them all a channel for logging stuff as they do their work (c) create generic GUI dialogs for building scripts (d) have some global context for tasks (e.g. to externally store and make available 5. Scons (scons.sourceforge.net) is really moving ahead in the C/C++ domain. It deals with different issues. But key people in the python world who don't have experience of enterprise server stuff have said and will say again "why are you duplicating this"? Any ideas how to define the difference? Has anyone here looked at scons to see if the models could be merged or share tasks? I have no strong feelings on any of the above, just want to get a sense of where you are heading.. Thanks, Andy Robinson CEO/Chief Architect, ReportLab Europe Ltd. |