These two patches separate any specific target information from the generic target modules. Each module can now stand on its own. Adding a new module only needs to modify the valid_build_targets array in catalyst_support.py Reproducible: Always Steps to Reproduce: 1. run catalyst 2. 3. Actual Results: Catalyst works as advertised however adding modules is not as easy as it could be. Expected Results: catalyst should function the same as it did before these patches.
Created attachment 43653 [details, diff] This patch defines the routines needed to fill the self.settings variable
Created attachment 43654 [details, diff] The second patch in this set that finishes cleaning specific target information in a generic target class
Created attachment 43655 [details, diff] The second patch in this set that finishes cleaning specific target information in a generic target class ... fixes a bug found in the previous patch The second patch in this set that finishes cleaning specific target information in a generic target class fixes the set_action_sequence in grp_target.py and livecd_stage2.py
Created attachment 43662 [details, diff] fixed a missing default case in the previous patch
Created attachment 43664 [details, diff] fixed another little default case issue
Created attachment 43729 [details, diff] Separation of class logic Found a typo in the embedded module. This patch corrects that.
OK. I am just now getting a chance to look into this. So I need just the first and last patches, correct?
Yes that is correct. Apply the first one first and then the last one.
OK... This is added into CVS and will show up in 1.1.2, which I will release in the next few days.
OK... these patches completely broke building... If you want, I can get you a copy of the current CVS for you to work from, since it would take you a while to do so via viewcvs). Anyway, I reverted these two patches and livecd-stage1 building worked again. I'll be honest, I don't know python, so I can't tell you where the problem was with it. .....and now I know to leave the python-fu to zhen and for me to stick with the shell-fu
Created attachment 47598 [details, diff] Separation of class logic - making catalyst more modular
I applied the patch and got the following... # catalyst-cvs -f livecd-stage1-environmental.spec Gentoo Catalyst, version 1.1.2 Copyright 2003-2004 The Gentoo Foundation Distributed under the GNU General Public License version 2 Using default Catalyst configuration file, /etc/catalyst/catalyst.conf Setting storedir to default value "/var/tmp/catalyst" Setting portdir to default value "/usr/portage" Setting distdir to config file value "/usr/portage/distfiles" Setting options to config file value "ccache pkgcache" Setting sharedir to config file value "/var/cvsroot/gentoo/src/catalyst" Compiler cache support enabled. Package cache support enabled. Envscript support enabled. Traceback (most recent call last): File "/var/cvsroot/gentoo/src/catalyst/catalyst", line 278, in ? targetmap=import_modules() File "/var/cvsroot/gentoo/src/catalyst/catalyst", line 133, in import_modules module=imp.load_module(x,fh,"modules/"+x+".py",(".py","r",imp.PY_SOURCE)) File "modules/embedded_target.py", line 85 print "embedded stage path is "self.settings["stage_path"] ^ SyntaxError: invalid syntax
Created attachment 47624 [details, diff] Separation of class logic - making catalyst more modular This fixes the print statement bug
Catalyst 1.1.2 is now out!