Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 115787 Details for
Bug 173826
netboot2 target enhancements
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch
catalyst.patch (text/plain), 7.27 KB, created by
Andrew Gaffney (RETIRED)
on 2007-04-09 05:46:07 UTC
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Andrew Gaffney (RETIRED)
Created:
2007-04-09 05:46:07 UTC
Size:
7.27 KB
patch
obsolete
>Index: modules/netboot2_target.py >=================================================================== >--- modules/netboot2_target.py (revision 1224) >+++ modules/netboot2_target.py (working copy) >@@ -10,42 +10,20 @@ > class netboot2_target(generic_stage_target): > def __init__(self,spec,addlargs): > self.required_values=[ >- "boot/kernel", >- "netboot2/builddate", >- "netboot2/packages", >- "netboot2/use" >+ "boot/kernel" > ] > self.valid_values=self.required_values[:] >- self.valid_values.extend(self.required_values) >- self.valid_values.extend(["netboot2/extra_files"]) >+ self.valid_values.extend([ >+ "netboot2/packages", >+ "netboot2/use", >+ "netboot2/packages/files", >+ "netboot2/overlay" >+ ]) > >- try: >- if addlargs.has_key("netboot2/packages"): >- if type(addlargs["netboot2/packages"]) == types.StringType: >- loopy=[addlargs["netboot2/packages"]] >- else: >- loopy=addlargs["netboot2/packages"] >- >- for x in loopy: >- self.valid_values.append("netboot2/packages/"+x+"/files") >- except: >- raise CatalystError,"configuration error in netboot2/packages." >- >- >- > generic_stage_target.__init__(self,spec,addlargs) > self.set_build_kernel_vars() >+ self.settings["merge_path"]=normpath("/tmp/image/") > >- # Merge packages into the buildroot, and pick out certain files to place in >- # /tmp/image >- self.settings["merge_path"]=normpath("/tmp/image") >- >- def set_dest_path(self): >- if self.settings.has_key("merge_path"): >- self.settings["destpath"]=normpath(self.settings["chroot_path"]+self.settings["merge_path"]) >- else: >- self.settings["destpath"]=normpath(self.settings["chroot_path"]) >- > def set_target_path(self): > self.settings["target_path"]=normpath(self.settings["storedir"]+"/builds/"+\ > self.settings["target_subpath"]+"/") >@@ -71,25 +49,12 @@ > and os.path.exists(self.settings["autoresume_path"]+"copy_files_to_image"): > print "Resume point detected, skipping target path setup operation..." > else: >- if self.settings.has_key("netboot2/packages"): >- if type(self.settings["netboot2/packages"]) == types.StringType: >- loopy=[self.settings["netboot2/packages"]] >+ if self.settings.has_key("netboot2/packages/files"): >+ if type(self.settings["netboot2/packages/files"]) == types.ListType: >+ myfiles.extend(self.settings["netboot2/packages/files"]) > else: >- loopy=self.settings["netboot2/packages"] >- >- for x in loopy: >- if self.settings.has_key("netboot2/packages/"+x+"/files"): >- if type(self.settings["netboot2/packages/"+x+"/files"]) == types.ListType: >- myfiles.extend(self.settings["netboot2/packages/"+x+"/files"]) >- else: >- myfiles.append(self.settings["netboot2/packages/"+x+"/files"]) >+ myfiles.append([self.settings["netboot2/packages/files"]]) > >- if self.settings.has_key("netboot2/extra_files"): >- if type(self.settings["netboot2/extra_files"]) == types.ListType: >- myfiles.extend(self.settings["netboot2/extra_files"]) >- else: >- myfiles.append(self.settings["netboot2/extra_files"]) >- > try: > cmd("/bin/bash "+self.settings["controller_file"]+\ > " image " + list_bashify(myfiles),env=self.env) >@@ -99,6 +64,17 @@ > > touch(self.settings["autoresume_path"]+"copy_files_to_image") > >+ def setup_overlay(self): >+ if self.settings.has_key("AUTORESUME") \ >+ and os.path.exists(self.settings["autoresume_path"]+"setup_overlay"): >+ print "Resume point detected, skipping setup_overlay operation..." >+ else: >+ if self.settings.has_key("netboot2/overlay"): >+ for x in self.settings["netboot2/overlay"]: >+ if os.path.exists(x): >+ cmd("rsync -a "+x+"/ "+\ >+ self.settings["chroot_path"], "netboot2/overlay: "+x+" copy failed.",env=self.env) >+ touch(self.settings["autoresume_path"]+"setup_overlay") > > def move_kernels(self): > # we're done, move the kernels to builds/* >@@ -112,13 +88,41 @@ > self.unbind() > raise CatalystError,"Failed to move kernel images!" > >+ def remove(self): >+ if self.settings.has_key("AUTORESUME") \ >+ and os.path.exists(self.settings["autoresume_path"]+"remove"): >+ print "Resume point detected, skipping remove operation..." >+ else: >+ if self.settings.has_key(self.settings["spec_prefix"]+"/rm"): >+ for x in self.settings[self.settings["spec_prefix"]+"/rm"]: >+ # we're going to shell out for all these cleaning operations, >+ # so we get easy glob handling >+ print "netboot2: removing " + x >+ os.system("rm -rf " + self.settings["chroot_path"] + self.settings["merge_path"] + x) > >+ def empty(self): >+ if self.settings.has_key("AUTORESUME") \ >+ and os.path.exists(self.settings["autoresume_path"]+"empty"): >+ print "Resume point detected, skipping empty operation..." >+ else: >+ if self.settings.has_key("netboot2/empty"): >+ if type(self.settings["netboot2/empty"])==types.StringType: >+ self.settings["netboot2/empty"]=self.settings["netboot2/empty"].split() >+ for x in self.settings["netboot2/empty"]: >+ myemp=self.settings["chroot_path"] + self.settings["merge_path"] + x >+ if not os.path.isdir(myemp): >+ print x,"not a directory or does not exist, skipping 'empty' operation." >+ continue >+ print "Emptying directory", x >+ os.system("rm -rf " + self.settings["chroot_path"] + self.settings["merge_path"] + x + "/*") >+ touch(self.settings["autoresume_path"]+"empty") >+ > def set_action_sequence(self): > self.settings["action_sequence"]=["unpack","unpack_snapshot","config_profile_link", > "setup_confdir","bind","chroot_setup",\ > "setup_environment","build_packages","root_overlay",\ >- "copy_files_to_image","build_kernel","move_kernels",\ >- "unbind","clean","clear_autoresume"] >+ "copy_files_to_image","setup_overlay","build_kernel","move_kernels",\ >+ "remove","empty","unbind","clean","clear_autoresume"] > > def register(foo): > foo.update({"netboot2":netboot2_target}) >Index: targets/netboot2/netboot2-copyfile.sh >=================================================================== >--- targets/netboot2/netboot2-copyfile.sh (revision 1224) >+++ targets/netboot2/netboot2-copyfile.sh (working copy) >@@ -18,4 +18,3 @@ > fi > fi > done >-echo "" >Index: targets/support/pre-kmerge.sh >=================================================================== >--- targets/support/pre-kmerge.sh (revision 1224) >+++ targets/support/pre-kmerge.sh (working copy) >@@ -29,17 +29,19 @@ > > # Set the netboot builddate/hostname in linuxrc and copy to proper arch > # directory in genkernel >- sed -e "s/@@MYDATE@@/${clst_netboot2_builddate}/g" \ >+ sed -e "s/@@MYDATE@@/$(date '+%Y%m%d')/g" \ > -e "s/@@RELVER@@/${clst_version_stamp}/g" \ >- ${clst_root_path}usr/share/genkernel/netboot/linuxrc.x \ >- > ${clst_root_path}usr/share/genkernel/${clst_hostarch}/linuxrc >+ /usr/share/genkernel/netboot/linuxrc.x \ >+ > /usr/share/genkernel/${clst_hostarch}/linuxrc > > echo ">>> Copying support files to ${clst_root_path} ..." >- cp -pPRf ${clst_root_path}usr/share/genkernel/netboot/misc/* \ >+ cp -pPRf /usr/share/genkernel/netboot/misc/* \ > ${clst_merge_path} > > echo ">>> Copying busybox config ..." >- cp -f ${clst_root_path}usr/share/genkernel/${clst_hostarch}/nb-busybox.cf \ >- ${clst_root_path}usr/share/genkernel/${clst_hostarch}/busy-config >+ cp -f /usr/share/genkernel/${clst_hostarch}/nb-busybox.cf \ >+ /usr/share/genkernel/${clst_hostarch}/busy-config > ;; > esac
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 173826
:
115787
|
115983
|
115991
|
116005