filesystem: store the root directory in the filesystem model
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
This commit is contained in:
parent
ab626fd423
commit
c210b93458
|
@ -253,7 +253,7 @@ class FilesystemController(SubiquityTuiController, FilesystemManipulator):
|
|||
self.app.next_screen(coro)
|
||||
return
|
||||
status = await self.app.wait_with_progress(coro)
|
||||
self.model = FilesystemModel(status.bootloader)
|
||||
self.model = FilesystemModel(status.bootloader, root="/")
|
||||
self.model.load_server_data(status)
|
||||
if self.model.bootloader == Bootloader.PREP:
|
||||
self.supports_resilient_boot = False
|
||||
|
|
|
@ -1281,7 +1281,7 @@ class ActionRenderMode(enum.Enum):
|
|||
FORMAT_MOUNT = enum.auto()
|
||||
|
||||
|
||||
class FilesystemModel(object):
|
||||
class FilesystemModel:
|
||||
target = None
|
||||
|
||||
_partition_alignment_data = {
|
||||
|
@ -1330,10 +1330,11 @@ class FilesystemModel(object):
|
|||
else:
|
||||
return Bootloader.BIOS
|
||||
|
||||
def __init__(self, bootloader=None):
|
||||
def __init__(self, bootloader=None, *, root: str):
|
||||
if bootloader is None:
|
||||
bootloader = self._probe_bootloader()
|
||||
self.bootloader = bootloader
|
||||
self.root = root
|
||||
self.storage_version = 1
|
||||
self._probe_data = None
|
||||
self.dd_target: Optional[Disk] = None
|
||||
|
@ -1356,7 +1357,7 @@ class FilesystemModel(object):
|
|||
# the original state. _orig_config plays a similar role, but is
|
||||
# expressed in terms of curtin actions, which are not what we want to
|
||||
# use on the V2 storage API.
|
||||
orig_model = FilesystemModel(self.bootloader)
|
||||
orig_model = FilesystemModel(self.bootloader, root=self.root)
|
||||
orig_model.target = self.target
|
||||
orig_model.load_probe_data(self._probe_data)
|
||||
return orig_model
|
||||
|
|
|
@ -180,7 +180,7 @@ class SubiquityModel:
|
|||
self.codecs = CodecsModel()
|
||||
self.debconf_selections = DebconfSelectionsModel()
|
||||
self.drivers = DriversModel()
|
||||
self.filesystem = FilesystemModel()
|
||||
self.filesystem = FilesystemModel(root=root)
|
||||
self.identity = IdentityModel()
|
||||
self.integrity = IntegrityModel()
|
||||
self.kernel = KernelModel()
|
||||
|
|
|
@ -135,7 +135,7 @@ class FakeStorageInfo:
|
|||
|
||||
|
||||
def make_model(bootloader=None, storage_version=None):
|
||||
model = FilesystemModel()
|
||||
model = FilesystemModel(root="/tmp")
|
||||
if bootloader is not None:
|
||||
model.bootloader = bootloader
|
||||
if storage_version is not None:
|
||||
|
|
Loading…
Reference in New Issue