Tinderbox script: added newuse, tinderbox and grp targets added support for overridin...
authorEric Edgar <rocket@gentoo.org>
Tue, 22 Nov 2005 20:36:18 +0000 (20:36 +0000)
committerEric Edgar <rocket@gentoo.org>
Tue, 22 Nov 2005 20:36:18 +0000 (20:36 +0000)
git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/catalyst/trunk@908 d1e1f19c-881f-0410-ab34-b69fee027534

ChangeLog
examples/grp_template.spec
examples/livecd-stage1_template.spec
examples/stage4_template.spec
modules/grp_target.py
modules/tinderbox_target.py
targets/tinderbox/tinderbox-chroot.sh

index dfb5e2a3385682dfdb62719a95dd287cffdd3500..7da9adeff3b280ef654c933a3a8cba1ad5efbe97 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/ChangeLog,v 1.395 2005/11/22 19:30:10 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/ChangeLog,v 1.396 2005/11/22 20:36:17 rocket Exp $
+
+  22 Nov 2005; Eric Edgar <rocket@gentoo.org> examples/grp_template.spec,
+  examples/livecd-stage1_template.spec, examples/stage4_template.spec,
+  modules/grp_target.py, modules/tinderbox_target.py,
+  targets/tinderbox/tinderbox-chroot.sh:
+  Tinderbox script: added newuse, tinderbox and grp targets added support for
+  overriding the pkgcache location via pkgcache_path - pkgcache_path:
+  /path/to/cache in the spec file, updated example specs to note pkgcache_path
 
   22 Nov 2005; Chris Gianelloni <wolf31o2@gentoo.org> files/catalyst.conf:
   Added portdir example to catalyst.conf for bug #113272.
index 7aea887fa5e064d5238c92eea57d64d0e0fa6e76..2bcaf6eb351a8a0e5b953589576bf8af270a9ac5 100644 (file)
@@ -56,6 +56,13 @@ distcc_hosts:
 # portage_confdir: /etc/portage
 portage_confdir:
 
+# This allows the optional directory containing the output packages for catalyst.
+# Mainly used as a way for different spec files to access the same cache directory
+# Default behavior is for this location to be autogenerated by catalyst based on the spec file.
+# example:
+# pkgcache_path: /tmp/packages
+pkgcache_path:
+
 # Since GRP is capable of building packages/source sets for more than one CD,
 # this defines the layout for the directories under $clst_sharedir/builds.
 # example:
index e09c1ea5ec4b98fb161f680a48c4255950a85896..69241594d8260ab0a3bb2952fac9252e0a0fef65 100644 (file)
@@ -56,6 +56,13 @@ distcc_hosts:
 # portage_confdir: /etc/portage
 portage_confdir:
 
+# This allows the optional directory containing the output packages for catalyst.
+# Mainly used as a way for different spec files to access the same cache directory
+# Default behavior is for this location to be autogenerated by catalyst based on the spec file.
+# example:
+# pkgcache_path: /tmp/packages
+pkgcache_path:
+
 # The livecd-stage1 target is where you will build packages for your CD.  These
 # packages can be built with customized USE settings.  The settings here are
 # additive to the default USE configured by the profile.  For building release
index fad01b20203620703385a46cab3508ea892280ec..8de0415a13876cabde6f31365fd4a961de67943f 100644 (file)
@@ -56,6 +56,13 @@ distcc_hosts:
 # portage_confdir: /etc/portage
 portage_confdir:
 
+# This allows the optional directory containing the output packages for catalyst.
+# Mainly used as a way for different spec files to access the same cache directory
+# Default behavior is for this location to be autogenerated by catalyst based on the spec file.
+# example: 
+# pkgcache_path: /tmp/packages
+pkgcache_path:
+
 # The stage4-stage1 target is where you will build packages for your CD.  These
 # packages can be built with customized USE settings.  The settings here are
 # additive to the default USE configured by the profile.  For building release
@@ -73,18 +80,6 @@ stage4/use:
 # stage4/packages: livecd-tools dhcpcd acpid apmd gentoo-sources kudzu-knoppix hotplug coldplug fxload irssi gpm syslog-ng parted links raidtools dosfstools nfs-utils jfsutils xfsprogs e2fsprogs reiserfsprogs ntfsprogs pwgen rp-pppoe screen mirrorselect penggy iputils hwdata-knoppix hwsetup lvm2 evms vim pptpclient mdadm ethtool wireless-tools prism54-firmware wpa_supplicant
 stage4/packages:
 
-
-# The cdfstype is used to determine what sort of CD we should build.  This is
-# used to set the type of loopback filesystem that we will use on our CD.
-# Possible options are as follows:
-# squashfs - This gives the best compression, but requires a kernel patch.
-# zisofs - This uses in-kernel compression and is supported on all platforms.
-# normal - This creates a loop without compression.
-# noloop - This copies the files to the CD directly, withuot using a loopback.
-# example:
-# stage4/fstype: squashfs
-stage4/fstype:
-
 # A fsscript is simply a shell script that is copied into the chroot of the CD
 # after the kernel(s) and any external modules have been compiled and is 
 # executed within the chroot.  It can contain any commands that are available
index 9ddc3ee62962778764ee7428fd1f8646f69373a2..02ff1f683e6c766d120c293bd8e4ef1484576a18 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/modules/grp_target.py,v 1.14 2005/08/09 14:12:26 rocket Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/modules/grp_target.py,v 1.15 2005/11/22 20:36:18 rocket Exp $
 
 """
 The builder class for GRP (Gentoo Reference Platform) builds.
@@ -45,6 +45,13 @@ class grp_target(generic_stage_target):
                                self.unbind()
                                raise CatalystError,"GRP build aborting due to error."
 
+        def set_pkgcache_path(self):
+            if self.settings.has_key("pkgcache_path"):
+                if type(self.settings["pkgcache_path"]) != types.StringType:
+                    self.settings["pkgcache_path"]=normpath(string.join(self.settings["pkgcache_path"]))
+            else:
+                generic_stage_target.set_pkgcache_path(self)
+
        def set_action_sequence(self):
            self.settings["action_sequence"]=["unpack","unpack_snapshot",\
                                "config_profile_link","setup_confdir","bind","chroot_setup",\
index e19acec843dbc5a3c9d030bb801a43cd5674b533..3feedb375853711dc7c39ed2375dba5b128173ca 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/modules/tinderbox_target.py,v 1.13 2005/11/02 21:54:29 rocket Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/modules/tinderbox_target.py,v 1.14 2005/11/22 20:36:18 rocket Exp $
 
 """
 builder class for the tinderbox target
@@ -27,6 +27,14 @@ class tinderbox_target(generic_stage_target):
                except CatalystError:
                        self.unbind()
                        raise CatalystError,"Tinderbox aborting due to error."
+
+        def set_pkgcache_path(self):
+            if self.settings.has_key("pkgcache_path"):
+                if type(self.settings["pkgcache_path"]) != types.StringType:
+                    self.settings["pkgcache_path"]=normpath(string.join(self.settings["pkgcache_path"]))
+            else:
+                generic_stage_target.set_pkgcache_path(self)
+       
        def set_cleanables(self):
            self.settings["cleanables"]=["/etc/resolv.conf","/var/tmp/*","/root/*",\
                                        "/usr/portage"]
index ca6d5be6086e156f18241db38a00d96c1a02e125..ebabfc697e1e3308fda57662b8c165b1e4398cdc 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/bash
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/targets/tinderbox/tinderbox-chroot.sh,v 1.13 2005/10/06 20:56:54 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo/src/catalyst/targets/tinderbox/tinderbox-chroot.sh,v 1.14 2005/11/22 20:36:18 rocket Exp $
 
 . /tmp/chroot-functions.sh
 
@@ -26,7 +26,7 @@ for x in ${clst_tinderbox_packages}
 do
        if [ -n "${clst_VERBOSE}" ]
        then
-               emerge --usepkg --buildpkg -vp $x
+               emerge --usepkg --buildpkg --newuse -vp $x
                echo "Press any key within 15 seconds to pause the build..."
                read -s -t 15 -n 1
                if [ $? -eq 0 ]
@@ -38,7 +38,7 @@ do
 
        mkdir -p /tmp/packages/$x
        export PORT_LOGDIR="/tmp/packages/$x"
-       emerge --usepkg --buildpkg $x
+       emerge --usepkg --buildpkg --newuse $x
        
        if [ "$?" != "0" ]
        then