leapp-repository/SOURCES/0012-LiveMode-Add-etc-crypttab-file-to-the-target-userspa.patch
2025-12-01 09:14:24 +00:00

47 lines
1.8 KiB
Diff

From 601c26f795a7b2f6cb553c656112235d17137b8f Mon Sep 17 00:00:00 2001
From: karolinku <kkula@redhat.com>
Date: Tue, 16 Sep 2025 15:58:29 +0200
Subject: [PATCH 12/55] LiveMode: Add /etc/crypttab file to the target
userspace container
When upgrading with LiveMode, the auto-unlock of encrypted devices
fails because the /etc/crypttab configuration file is not present inside
the squashfs, causing the boot process to fail.
This change copy /etc/crypttab file to the target userspace container
during the upgrade process, allowing encrypted devices to be properly
unlocked.
Jira: RHEL-90098
---
.../common/actors/checkluks/libraries/checkluks.py | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/repos/system_upgrade/common/actors/checkluks/libraries/checkluks.py b/repos/system_upgrade/common/actors/checkluks/libraries/checkluks.py
index 57a94e9d..aac171a7 100644
--- a/repos/system_upgrade/common/actors/checkluks/libraries/checkluks.py
+++ b/repos/system_upgrade/common/actors/checkluks/libraries/checkluks.py
@@ -3,6 +3,7 @@ from leapp.libraries.common.config.version import get_source_major_version
from leapp.libraries.stdlib import api
from leapp.models import (
CephInfo,
+ CopyFile,
DracutModule,
LuksDumps,
StorageInfo,
@@ -156,7 +157,10 @@ def check_invalid_luks_devices():
'tpm2-tools',
'tpm2-abrmd'
]
- api.produce(TargetUserSpaceUpgradeTasks(install_rpms=required_crypt_rpms))
+ api.produce(TargetUserSpaceUpgradeTasks(
+ copy_files=[CopyFile(src="/etc/crypttab")],
+ install_rpms=required_crypt_rpms)
+ )
api.produce(UpgradeInitramfsTasks(include_dracut_modules=[
DracutModule(name='clevis'),
DracutModule(name='clevis-pin-tpm2')
--
2.51.1