[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [PATCH] (take II) Use existing partitions when --onpart is used for PVs (#493065)
- From: Joel Granados <jgranado redhat com>
- To: Discussion of Development and Customization of the Red Hat Linux Installer <anaconda-devel-list redhat com>
- Subject: Re: [PATCH] (take II) Use existing partitions when --onpart is used for PVs (#493065)
- Date: Wed, 1 Apr 2009 18:35:00 +0200
code wise this looks ok.
regards.
On Wed, Apr 01, 2009 at 04:39:29PM +0200, Radek Vykydal wrote:
> Store mapping from pv names used in ks (e.g. pv.1) to existing
> partitions in ks handler and use it when processing ks commands
> referring to the names.
> Also fix some attribute references.
> ---
> kickstart.py | 16 +++++++++++-----
> 1 files changed, 11 insertions(+), 5 deletions(-)
>
> diff --git a/kickstart.py b/kickstart.py
> index 844e58c..ed59375 100644
> --- a/kickstart.py
> +++ b/kickstart.py
> @@ -619,6 +619,9 @@ class Partition(commands.partition.F9_Partition):
> if devicetree.getDeviceByName(kwargs["name"]):
> raise KickstartValueError, formatErrorMsg(self.lineno, msg="PV partition defined multiple times")
>
> + # store mapping for other ks partitioning commands
> + if kwargs.has_key("name"):
> + self.handler.onPart[kwargs["name"]] = pd.onPart
> pd.mountpoint = ""
> elif pd.mountpoint == "/boot/efi":
> type = "EFI System Partition"
> @@ -879,6 +882,8 @@ class VolGroup(commands.volgroup.FC3_VolGroup):
>
> # Get a list of all the physical volume devices that make up this VG.
> for pv in vgd.physvols:
> + # if pv is using --onpart, use original device
> + pv = self.handler.onPart.get(pv, pv)
> dev = devicetree.getDeviceByName(pv)
> if not dev:
> raise KickstartValueError, formatErrorMsg(self.lineno, msg="Tried to use undefined partition %s in Volume Group specification" % pv)
> @@ -893,12 +898,12 @@ class VolGroup(commands.volgroup.FC3_VolGroup):
>
> # If --noformat was given, there's really nothing to do.
> if not vgd.format:
> - if not vgd.name:
> + if not vgd.vgname:
> raise KickstartValueError, formatErrorMsg(self.lineno, msg="--noformat used without giving a name")
>
> - dev = devicetree.getDeviceByName(vgd.name)
> + dev = devicetree.getDeviceByName(vgd.vgname)
> if not dev:
> - raise KickstartValueError, formatErrorMsg(self.lineno, msg="No preexisting VG with the name \"%s\" was found." % vgd.name)
> + raise KickstartValueError, formatErrorMsg(self.lineno, msg="No preexisting VG with the name \"%s\" was found." % vgd.vgname)
>
> return vgd
>
> @@ -907,9 +912,9 @@ class VolGroup(commands.volgroup.FC3_VolGroup):
> # Also, we only support a subset of all the options on pre-existing
> # VGs.
> if vgd.preexist:
> - device = devicetree.getDeviceByName(vgd.name)
> + device = devicetree.getDeviceByName(vgd.vgname)
> if not device:
> - raise KicsktartValueError, formatErrorMsg(self.lineno, msg="Specified nonexistent VG %s in volgroup command" % vgd.name)
> + raise KicsktartValueError, formatErrorMsg(self.lineno, msg="Specified nonexistent VG %s in volgroup command" % vgd.vgname)
>
> devicetree.registerAction(ActionCreateFormat(device))
> else:
> @@ -1027,6 +1032,7 @@ class AnacondaKSHandler(superclass):
> self.showSteps = []
> self.anaconda = anaconda
> self.id = self.anaconda.id
> + self.onPart = {}
>
> class EarlyKSHandler(superclass):
> # This handler class only processes a couple kickstart commands. It is
> --
> 1.5.4.3
>
> _______________________________________________
> Anaconda-devel-list mailing list
> Anaconda-devel-list redhat com
> https://www.redhat.com/mailman/listinfo/anaconda-devel-list
--
Joel Andres Granados
Brno, Czech Republic, Red Hat.
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]