[blivet:master 00/26] RAID patches

David Lehman dlehman at redhat.com
Wed Jun 4 14:40:18 UTC 2014


On 05/29/2014 01:47 PM, mulhern wrote:
> These patches will be vaguely remniscent of the last set of RAID related
> patches I sent out, but not all that close.
>
> The changes require an anaconda patch.
>
> The first four are nice and simple.
> The very last is only related to RAID because I felt
> I had to understand the method in order to understand device populateKSData()
> methods, and to understand it I had to think about, so I ended up rewriting it.
>
> mulhern (26):
>    Import name 'lvm' instead of names from lvm package.
>    Comment mdraid.mdcreate() and update tests appropriately.
>    Remove DMRaidArrayDevice.members property.
>    Extract selection of members in completed() into a separate method.
>    No longer use _standard_levels as the default set of RAID levels.
>    Adjust RaidLevel hierarchy so that all raid level objects extend
>      RAIDLevel
>    Allow the RAID object itself to be a valid RAID descriptor for lookup.
>    Move Container class to raid package and tidy it up
>    Add Linear and Single to the RAID classes.
>    Add a has_redundancy method that returns True if there is actual
>      redundancy
>    Add an is_uniform property to the RAID levels.
>    Add a Dup class to the various descendants of RAIDLevel.
>    Make createBitmap() a property and update tests appropriately.
>    Use has_redundancy raid property when checking whether a device is
>      removable
>    Update the mdraid.mdadd comments
>    Use has_redundancy property to decide how to add a member to an array.
>    Check for required methods in MDRaidLevels.isRaidLevel.
>    Remove getRaidLevel() from mdraid file and make RAID_levels public
>    Add "linear" to mdraid's list of supported raid levels.
>    Add lists of supported RAID levels for btrfs and lvm
>    Make BTRFS devices use RAID objects instead of strings for levels
>    Put get_supported_raid_levels in devicefactory.py
>    Distribute devicefactory.get_raid_level within devices classes.
>    Make all devicefactory classes uses RAID objects instead of strings.
>    Move the code for getting a space requirement from devicefactory to
>      raid.
>    Simplify a small chunk of Blivet.updateKSData()
>
>   blivet/__init__.py                   |  12 +-
>   blivet/devicefactory.py              | 137 ++++++++++------
>   blivet/devicelibs/btrfs.py           |  10 +-
>   blivet/devicelibs/lvm.py             |   3 +
>   blivet/devicelibs/mdraid.py          |  64 +++-----
>   blivet/devicelibs/raid.py            | 297 +++++++++++++++++++++++++----------
>   blivet/devices.py                    | 186 +++++++++++++++++-----
>   tests/devicefactory_test.py          |  26 +--
>   tests/devicelibs_test/mdraid_test.py |  21 +--
>   tests/devicelibs_test/raid_test.py   |  73 ++++-----
>   tests/devices_test.py                |  58 +++++--
>   tests/devicetree_test.py             |   2 +-
>   12 files changed, 590 insertions(+), 299 deletions(-)

ACK



More information about the anaconda-patches mailing list