[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[PATCH] Put fsprofile support back in.



---
 kickstart.py          |   15 ++++++---------
 storage/formats/fs.py |    6 +++++-
 2 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/kickstart.py b/kickstart.py
index adab33a..5ba0773 100644
--- a/kickstart.py
+++ b/kickstart.py
@@ -484,9 +484,8 @@ class LogVolData(commands.logvol.F12_LogVolData):
                                     maxsize=self.maxSizeMB,
                                     percent=self.percent)
 
-            # FIXME: no way to specify an fsprofile right now
-            # if lvd.fsprofile:
-            #     request.format.fsprofile = lvd.fsprofile
+            if self.fsprofile and hasattr(request.format, "fsprofile"):
+                request.format.fsprofile = self.fsprofile
 
             storage.createDevice(request)
 
@@ -734,9 +733,8 @@ class PartitionData(commands.partition.F12_PartData):
 
             request = storage.newPartition(**kwargs)
 
-            # FIXME: no way to specify an fsprofile right now
-            # if self.fsprofile:
-            #     request.format.fsprofile = self.fsprofile
+            if self.fsprofile and hasattr(request.format, "fsprofile"):
+                request.format.fsprofile = self.fsprofile
 
             storage.createDevice(request)
 
@@ -874,9 +872,8 @@ class RaidData(commands.raid.F12_RaidData):
             except ValueError, e:
                 raise KickstartValueError, formatErrorMsg(self.lineno, msg=str(e))
 
-            # FIXME: no way to specify an fsprofile right now
-            # if pd.fsprofile:
-            #     request.format.fsprofile = pd.fsprofile
+            if self.fsprofile and hasattr(request.format, "fsprofile"):
+                request.format.fsprofile = self.fsprofile
 
             storage.createDevice(request)
 
diff --git a/storage/formats/fs.py b/storage/formats/fs.py
index 239386d..09e764d 100644
--- a/storage/formats/fs.py
+++ b/storage/formats/fs.py
@@ -124,6 +124,7 @@ class FS(DeviceFormat):
     _defaultInfoOptions = []
     _migrationTarget = None
     _existingSizeFields = []
+    _fsProfileSpecifier = None           # mkfs option specifying fsprofile
 
     def __init__(self, *args, **kwargs):
         """ Create a FS instance.
@@ -143,10 +144,10 @@ class FS(DeviceFormat):
             raise TypeError("FS is an abstract class.")
 
         DeviceFormat.__init__(self, *args, **kwargs)
-        # TODO: fsprofiles and other ways to add format args
         self.mountpoint = kwargs.get("mountpoint")
         self.mountopts = kwargs.get("mountopts")
         self.label = kwargs.get("label")
+        self.fsprofile = kwargs.get("fsprofile")
 
         # filesystem size does not necessarily equal device size
         self._size = kwargs.get("size", 0)
@@ -297,6 +298,8 @@ class FS(DeviceFormat):
         if options and isinstance(options, list):
             argv.extend(options)
         argv.extend(self.defaultFormatOptions)
+        if self._fsProfileSpecifier and self.fsprofile:
+            argv.extend([self._fsProfileSpecifier, self.fsprofile])
         argv.append(self.device)
         return argv
     
@@ -872,6 +875,7 @@ class Ext2FS(FS):
     _infofs = "dumpe2fs"
     _defaultInfoOptions = ["-h"]
     _existingSizeFields = ["Block count:", "Block size:"]
+    _fsProfileSpecifier = "-T"
     partedSystem = fileSystemType["ext2"]
 
     def _fsckFailed(self, rc):
-- 
1.6.5.2


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]