* Sat Dec 13 2025 marcus.schaefer@gmail.com
- Bump Migration changelog version: 2.1.29
* Sat Dec 13 2025 marcus.schaefer@gmail.com
- Fix mount_system unit
The mount_system unit unconditionally bind mounts /run locations
into the system to migrate. If the migration system doesn't
provide these mountpoints e.g /run/NetworkManager on a SLE12-to-15
migration the mount_system unit fails and the entire migration
fails because of this mandatory unit to fail. We really have to
be more careful when writing DMS code.
* Sat Dec 13 2025 marcus.schaefer@gmail.com
- Run ssh precheck only for SLE16 target
The check for the ssh default settings change should
only be performed for migrations to SLE16
* Fri Dec 12 2025 jorik.cronenberg@suse.com
- Only generate wicked xml if service is the active network
* Thu Dec 11 2025 marcus.schaefer@suse.com
- Fix unit link check and no use of path.join
Checking the unit link must be done with islink() because exists()
follows the link which is not correct when checking on behalf of
/system-root. For the same reason os.path.join should not be used
for link targets not resolvable in the context of the caller.
* Thu Dec 11 2025 marcus.schaefer@suse.com
- Fixed migration live image package requires
When the containment rpm package, packages the live migration
ISO image into an rpm package it also adds the run_migration
tool to the package. The latest changes to run_migration code
however also requires the new suse-migration-scripts package
which was not yet required. This commit fixes it
* Wed Dec 10 2025 marcus.schaefer@suse.com
- Update setup_host_network service
So far the service to clone the network setup from the host into
the live migration system was only able to replicate the standard
network setup from data in /etc/sysconfig/network. This patch
makes the service to also replicate NetworkManager connections
if NetworkManager is the active networking setup on the host
to migrate. In addition the wicked-to-networkmanager migration
only runs if wicked is the active networking setup on the
host to migrate.
This covers the following use cases:
1. SLE15 to SLE16 migration if the (sle15)host to migrate is NetworkManager based
2. SLE16 to SLE_next_generation where NetworkManager is the default
This does NOT cover the SLE12 to SLE15 migration if the (sle12)host
is NetworkManager based. That's because the SLE15 migration
live images are not NetworkManager based and cannot setup the
network even with the bind mounted etc/NetworkManager data.
* Tue Dec 09 2025 marcus.schaefer@suse.com
- Fix backup processing
The rsync call is done relative to the system-root path.
This means that all files added to the files-from file
for the rsync call must not be prefixed with that
system-root path
* Tue Dec 09 2025 marcus.schaefer@suse.com
- Fix log handler setup
Messages got duplicated if log streams are added multiple
times to the logger instance. As such only add handlers
if there are none.
* Tue Dec 09 2025 marcus.schaefer@suse.com
- Drop and backup /etc/sysconfig/network
On successful wicked to NetworkManager migration the data
in /etc/sysconfig/network is no longer needed. There will
be a backup of the data available in /var/migration
Version: 2.1.26-160000.1.1
* Mon Oct 27 2025 marcus.schaefer@suse.com
- Bump version: 2.1.25 → 2.1.26
* Mon Oct 27 2025 marcus.schaefer@suse.com
- Bump Migration changelog version: 2.1.26
* Thu Oct 23 2025 marcus.schaefer@suse.com
- Set systemd offline for Zypper in chroot mode
Calling zypper in a new system root should be done in
offline systemd mode to prevent package scripts to access
services not necessarily present
* Wed Oct 22 2025 marcus.schaefer@suse.com
- Fix apparmor install procedure
The apparmor to selinux unit install the selinux pattern after
the main migration has been performed. This zypper call has to
happen inside of the new root system otherwise repo access
is denied on e.g cloud systems which holds the registration
information in the installed system.
* Tue Oct 21 2025 marcus.schaefer@suse.com
- Fixed azuremetadata device lookup
On Azure the azuremetadata call is prepared with the --device
option pointing to the disk containing the system. This disk
device is obtained via the get_root_disk_device method which
makes use of the findmnt tool to read the device that contains
the root filesystem mountpoint. If that filesystem is using
sophisticated technology like subvolumes on btrfs, findmnt
reports this information in addition to the actual unix block
device in brackets [...]. For the logic flow of get_root_disk_device
this extra information broke the subsequent lsblk call. This
commit strips eventually existing extra block device information
from the findmnt call output.
* Mon Oct 20 2025 marcus.schaefer@suse.com
- Use of f-strings not allowed in the DMS
The code has to stay compatible with python 3.4 because
SLE12-to-SLE15 migrations has to continue to work. On
SLE12 only python 3.4 exists. This commit fixes the
code that used f-strings executed on python 3.4.
This is related to bsc#1248137
* Thu Oct 16 2025 jorik.cronenberg@suse.com
- Simplify interface naming by disabling predictable names at boot
Currently our most difficult problem with regards to the network interface
naming scheme is that when the migration image boots the interfaces get
predictable names like 'enp1s0' which we then have to revert/write custom rules
around. To simplify this we can install a file at
/etc/systemd/network/99-default.link. This skips all naming schemes and the
kernel names are used. Then we can remove this file again and copy over all the
necessary udev rules and link files from the host and with udevadm trigger apply
these. This should imitate the behavior of the final migrated system most
closely.
* Wed Oct 15 2025 marcus.schaefer@gmail.com
- Fixed test_check_lsm_migration unit test
The test did not mock shutil.which and thus was really
looking for the tool to be present on the system. If
not present on the system the test failed. This commit
fixes it.
* Wed Oct 15 2025 jorik.cronenberg@suse.com
- Fix setup_host_network_test by mocking os.makedirs
When '/etc/udev/' doesn't exist the test fails. But the call should be mocked
anyway and not actually executed on the system.
* Wed Oct 15 2025 cfamullaconrad@suse.com
- wicked2nm: log network state on nm-online failure
Version: 2.1.23-160000.1.1
* Fri Sep 19 2025 marcus.schaefer@suse.com
- Activation packages can no longer be noarch
As we have architectures that does not support the grub
based activation and therefore an ExclusiveArch setup in
the spec, the package can no longer be noarch
* Fri Sep 19 2025 marcus.schaefer@suse.com
- Bump version: 2.1.22 → 2.1.23
* Fri Sep 19 2025 marcus.schaefer@suse.com
- Bump Migration changelog version: 2.1.23
* Fri Sep 19 2025 marcus.schaefer@suse.com
- Fix update of image .changes files
We want a new entry with each version change but
bumpversion modifies the existing version changelog
entries which is unwanted. Thus the .changes files
got dropped from .bumpversion.cfg and a little
helper tool to handle the .changes entry was added
and called through the Makefile
* Fri Sep 19 2025 marcus.schaefer@suse.com
- Bump version: 2.1.21 → 2.1.22
* Fri Sep 19 2025 yu.daike@suse.com
- architecture check before allowing migration to be activated
SLE16 will panic on CPUs older than x86_64_v1 (i.e. x86_64). To
avoid panicing the system we check for the architecture before
activating the migration.
Co-authored-by: Marcus Schäfer <marcus.schaefer@suse.com>
* Thu Sep 18 2025 jorik.cronenberg@suse.com
- Improve error logs when wicked2nm fails
* Mon Sep 15 2025 marcus.schaefer@suse.com
- Bump version: 2.1.20 → 2.1.21
* Mon Sep 15 2025 marcus.schaefer@suse.com
- Include image changelog to version bump
Make sure the image changelog file also contains an entry
to match with the version of the DMS
* Mon Sep 15 2025 marcus.schaefer@suse.com
- Bump version: 2.1.19 → 2.1.20