[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[PATCH] Add a property to Platform for accessing boot stage1 constraints.
- From: David Lehman <dlehman redhat com>
- To: anaconda-devel-list redhat com
- Subject: [PATCH] Add a property to Platform for accessing boot stage1 constraints.
- Date: Mon, 27 Jun 2011 15:12:18 -0500
---
pyanaconda/bootloader.py | 29 ++++++++++++-----------------
pyanaconda/platform.py | 12 ++++++++++++
2 files changed, 24 insertions(+), 17 deletions(-)
diff --git a/pyanaconda/bootloader.py b/pyanaconda/bootloader.py
index 4c495d2..039cd59 100644
--- a/pyanaconda/bootloader.py
+++ b/pyanaconda/bootloader.py
@@ -412,7 +412,7 @@ class BootLoader(object):
@property
def device_descriptions(self):
- return self.platform._boot_descriptions
+ return self.platform.bootStage1ConstraintDict["descriptions"]
#
# constraint checking for target devices
@@ -581,13 +581,7 @@ class BootLoader(object):
return False
description = self.device_description(device)
- device_types = self.platform._boot_stage1_device_types
- format_types = self.platform._boot_stage1_format_types
- mountpoints = self.platform._boot_stage1_mountpoints
- raid_levels = self.platform._boot_stage1_raid_levels
- raid_member_types = self.platform._boot_stage1_raid_member_types
- raid_metadata = self.platform._boot_stage1_raid_metadata
- max_end_mb = self.platform._boot_stage1_max_end_mb
+ constraint = self.platform.bootStage1ConstraintDict
if self.stage2_is_valid_stage1 and device == self.stage2_device:
# special case
@@ -598,7 +592,7 @@ class BootLoader(object):
self.warnings = []
return valid
- if not self._device_type_match(device, device_types):
+ if not self._device_type_match(device, constraint["device_types"]):
self.errors.append(_("The %s cannot be of type %s")
% (description, device.type))
valid = False
@@ -612,14 +606,15 @@ class BootLoader(object):
valid = False
if not self._is_valid_location(device,
- max_mb=max_end_mb,
+ max_mb=constraint["max_end_mb"],
desc=description):
valid = False
- if not self._is_valid_md(device, device_types=device_types,
- raid_levels=raid_levels,
- metadata=raid_metadata,
- member_types=raid_member_types,
+ if not self._is_valid_md(device,
+ device_types=constraint["device_types"],
+ raid_levels=constraint["raid_levels"],
+ metadata=constraint["raid_metadata"],
+ member_types=constraint["raid_member_types"],
desc=description):
valid = False
@@ -632,8 +627,8 @@ class BootLoader(object):
valid = False
if not self._is_valid_format(device,
- format_types=format_types,
- mountpoints=mountpoints,
+ format_types=constraint["format_types"],
+ mountpoints=constraint["mountpoints"],
desc=description):
valid = False
@@ -654,7 +649,7 @@ class BootLoader(object):
of all valid target devices, sorted by device type, then sorted
according to our drive ordering.
"""
- device_types = self.platform._boot_stage1_device_types
+ device_types = self.platform.bootStage1ConstraintDict["device_types"]
slots = [[] for t in device_types]
for device in self.storage.devices:
idx = self._device_type_index(device, device_types)
diff --git a/pyanaconda/platform.py b/pyanaconda/platform.py
index 93cd2f8..893a3c3 100644
--- a/pyanaconda/platform.py
+++ b/pyanaconda/platform.py
@@ -75,6 +75,18 @@ class Platform(object):
"""The default disklabel type for this architecture."""
return self.diskLabelTypes[0]
+ @property
+ def bootStage1ConstraintDict(self):
+ d = {"device_types": self._boot_stage1_device_types,
+ "format_types": self._boot_stage1_format_types,
+ "mountpoints": self._boot_stage1_mountpoints,
+ "max_end_mb": self._boot_stage1_max_end_mb,
+ "raid_levels": self._boot_stage1_raid_levels,
+ "raid_metadata": self._boot_stage1_raid_metadata,
+ "raid_member_types": self._boot_stage1_raid_member_types,
+ "descriptions": self._boot_descriptions}
+ return d
+
def requiredDiskLabelType(self, device_type):
return None
--
1.7.3.4
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]