forked from rpms/leapp-repository
71 lines
3.3 KiB
Diff
71 lines
3.3 KiB
Diff
From 87f584d8f9b957b9ae0138d6963077d87ccb2067 Mon Sep 17 00:00:00 2001
|
|
From: Peter Mocary <pmocary@redhat.com>
|
|
Date: Mon, 20 Oct 2025 11:40:04 +0200
|
|
Subject: [PATCH 30/55] skip pre-generation of systemd fstab mount units during
|
|
LiveMode upgrade
|
|
|
|
The new storage initialization solution interfered with LiveMode. Since
|
|
LiveMode is a different upgrade approach, we now skip pre-generation of
|
|
systemd fstab mount units (mount_unit_generator actor) when
|
|
upgrading this way.
|
|
---
|
|
.../actors/initramfs/mount_units_generator/actor.py | 5 ++++-
|
|
.../libraries/mount_unit_generator.py | 8 ++++++--
|
|
2 files changed, 10 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/repos/system_upgrade/common/actors/initramfs/mount_units_generator/actor.py b/repos/system_upgrade/common/actors/initramfs/mount_units_generator/actor.py
|
|
index 5fe25515..dd667513 100644
|
|
--- a/repos/system_upgrade/common/actors/initramfs/mount_units_generator/actor.py
|
|
+++ b/repos/system_upgrade/common/actors/initramfs/mount_units_generator/actor.py
|
|
@@ -1,16 +1,19 @@
|
|
from leapp.actors import Actor
|
|
from leapp.libraries.actor import mount_unit_generator as mount_unit_generator_lib
|
|
-from leapp.models import TargetUserSpaceInfo, UpgradeInitramfsTasks
|
|
+from leapp.models import LiveModeConfig, TargetUserSpaceInfo, UpgradeInitramfsTasks
|
|
from leapp.tags import InterimPreparationPhaseTag, IPUWorkflowTag
|
|
|
|
|
|
class MountUnitGenerator(Actor):
|
|
"""
|
|
Sets up storage initialization using systemd's mount units in the upgrade container.
|
|
+
|
|
+ Note that this storage initialization is skipped when the LiveMode is enabled.
|
|
"""
|
|
|
|
name = 'mount_unit_generator'
|
|
consumes = (
|
|
+ LiveModeConfig,
|
|
TargetUserSpaceInfo,
|
|
)
|
|
produces = (
|
|
diff --git a/repos/system_upgrade/common/actors/initramfs/mount_units_generator/libraries/mount_unit_generator.py b/repos/system_upgrade/common/actors/initramfs/mount_units_generator/libraries/mount_unit_generator.py
|
|
index e1060559..943bddd4 100644
|
|
--- a/repos/system_upgrade/common/actors/initramfs/mount_units_generator/libraries/mount_unit_generator.py
|
|
+++ b/repos/system_upgrade/common/actors/initramfs/mount_units_generator/libraries/mount_unit_generator.py
|
|
@@ -5,7 +5,7 @@ import tempfile
|
|
from leapp.exceptions import StopActorExecutionError
|
|
from leapp.libraries.common import mounting
|
|
from leapp.libraries.stdlib import api, CalledProcessError, run
|
|
-from leapp.models import TargetUserSpaceInfo, UpgradeInitramfsTasks
|
|
+from leapp.models import LiveModeConfig, TargetUserSpaceInfo, UpgradeInitramfsTasks
|
|
|
|
|
|
def run_systemd_fstab_generator(output_directory):
|
|
@@ -295,8 +295,12 @@ def request_units_inclusion_in_initramfs(files_to_include):
|
|
|
|
|
|
def setup_storage_initialization():
|
|
- userspace_info = next(api.consume(TargetUserSpaceInfo), None)
|
|
+ livemode_config = next(api.consume(LiveModeConfig), None)
|
|
+ if livemode_config and livemode_config.is_enabled:
|
|
+ api.current_logger().debug('Pre-generation of systemd fstab mount units skipped: The LiveMode is enabled.')
|
|
+ return
|
|
|
|
+ userspace_info = next(api.consume(TargetUserSpaceInfo), None)
|
|
with mounting.NspawnActions(base_dir=userspace_info.path) as upgrade_container_ctx:
|
|
with tempfile.TemporaryDirectory(dir='/var/lib/leapp/', prefix='tmp_systemd_fstab_') as workspace_path:
|
|
run_systemd_fstab_generator(workspace_path)
|
|
--
|
|
2.51.1
|
|
|