Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

suse-migration-services-2.1.13-160000.1.1 RPM for noarch

From OpenSuSE Leap 16.0 for noarch

Name: suse-migration-services Distribution: SUSE Linux 16
Version: 2.1.13 Vendor: SUSE LLC <https://www.suse.com/>
Release: 160000.1.1 Build date: Thu Jul 31 10:44:20 2025
Group: System/Management Build host: reproducible
Size: 14826 Source RPM: suse-migration-services-2.1.13-160000.1.1.src.rpm
Packager: https://www.suse.com/
Url: https://github.com/SUSE/suse-migration-services
Summary: SUSE Distribution Migration Services
Systemd services to prepare and run a distribution migration process.

Provides

Requires

License

GPL-3.0+

Changelog

* Thu Jul 31 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.12 → 2.1.13
* Wed Jul 30 2025 marcus.schaefer@suse.com
  - Increase python test matrix
    Make sure to test the code against python versions
    used on SLFO:Main
* Wed Jul 30 2025 dirk@dmllr.de
  - Remove redundanct requires on itself
    This is just always satisfied, no need to specify it.
* Wed Jul 30 2025 marcus.schaefer@suse.com
  - Fix ordering of pre-checks and actual migration
    Make sure the pre-checks service runs before the actual migration.
    As pre-checks are also called with the --fix option it is mandatory
    to run it prior the actual migration such that fixes becomes
    effective. This is related to #341
* Tue Jul 22 2025 marcus.schaefer@suse.com
  - Add SLES15-Migration target to Makefile
* Tue Jul 22 2025 marcus.schaefer@suse.com
  - Fix suse-migration-console-log service
    The console logging was based on forcing a dialog program on the
    main console. If the main console also runs a getty which is by
    default the case we run into several signal conflicts. This battle
    is always won by the getty because it restarts always whereas the
    console log service only restarts on failure. This leads to very
    weird conditions such as no log displayed on the console at all
    up to only a fraction of the log shown leading to wrong assumptions
    on the current state of the migration. This commit now changes
    the following:
    1. The console log is forced into its own tty (8) and the
    service actively switches to this terminal
    2. If the dialog ends (e.g user hits Exit) the service
    switches back to the first virtual terminal and restarts
    after 10 seconds. This is enough time to stop the
    log service in case it's unwanted, e.g. for debugging
    on this console
    3. The dialog logging does no longer run on serial terminals.
    dialog does not really support to work well on serial
    consoles. The output is often completely broken and input
    sequences requires its own terminal. If the migration
    system is accessed from a terminal that doesn't show
    progress information a message in etc/motd has been
    added which provides information how to see progress
* Tue Jul 22 2025 marcus.schaefer@suse.com
  - Fix typo in README_QA
    Fix wrong package name due to a rename of the test VM packages
* Wed Jul 16 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.11 → 2.1.12
* Wed Jul 16 2025 fcrozat@suse.com
  - Add support to enable single rpm transaction for upgrade
    Allow to enable or disable libzypp single rpm transaction mode
    Co-authored-by: Yu Daike <yu.daike@suse.com>
* Tue Jul 15 2025 nicholas.yang@suse.com
  - enable suse-migration-ha.service in the migration image
* Tue Jul 15 2025 nicholas.yang@suse.com
  - Migration for high availability extension
    Added suse-migration-ha.service to call crm to run ha migration when
    /etc/corosync/corosync.conf exists in the system-root.
* Tue Jul 08 2025 fcrozat@suse.com
  - RPM wrapper fixes
    Add support for BUILD_DISTURL if available
    Ensure source rpm is made available when building RPM wrapper and
    embed changelog into rpm wrapper. Add missing requires to rpm
    wrapper
* Fri Jul 04 2025 fcrozat@suse.com
  - cleanup specfile to follow python singlespec policy
* Fri Jun 27 2025 fcrozat@suse.com
  - ensure sle16 images can build on all supported platforms
* Mon Jun 23 2025 marcus.schaefer@gmail.com
  - Update bumpversion config
    Include sle16 container build to version bump
* Mon Jun 23 2025 marcus.schaefer@gmail.com
  - Bump version: 2.1.10 → 2.1.11
* Mon Jun 16 2025 fcrozat@suse.com
  - handle selinux boot option when using kexec
* Fri Jun 13 2025 fcrozat@suse.com
  - ensure migration to SLES16 uses selinux, not apparmor
* Fri Jun 13 2025 fcrozat@suse.com
  - improve os-release parsing
    properly ignore comments, empty lines
* Thu Jun 12 2025 fcrozat@suse.com
  - ensure SLES16 is also detected in SCC precheck
* Thu Jun 05 2025 nicholas.yang@suse.com
  - Add high availablity extension check
    Add a check to call ha checks provided by crmsh. If ha cluster config
    files exist and crmsh is installed and up to date, this module calls
    crmsh as a subprocess to run the checks. The result is printed to stdout
    directly by crmsh.
* Wed Jun 04 2025 marcus.schaefer@suse.com
  - Fix package names for python packages on SLE16
* Wed Jun 04 2025 marcus.schaefer@suse.com
  - Fix package names for python packages on SLE16
* Wed Jun 04 2025 marcus.schaefer@suse.com
  - Relax on the shim-install call
    The DMS tries to make the system gain secure boot capabilities.
    However, several reasons e.g. system was not EFI based can
    cause an error when attempting the setup. This action should
    not cause the entire migration to fail. The DMS upgrades a
    system based on the content of the existing disk layout.
    If the disk layout to begin with is not suitable for EFI
    or secure boot, the DMS will not interfere with the foundation
    of the system during upgrade. However, in such a case the
    DMS should still be able to upgrade the OS.
* Tue May 13 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.9 → 2.1.10
* Mon May 05 2025 marcus.schaefer@suse.com
  - Fixup package name for SLE16 container
    python3-gcemetadata was renamed to python-gcemetadata in SLE16
* Mon May 05 2025 marcus.schaefer@suse.com
  - Fixup package name for SLE16
    python3-gcemetadata was renamed to python-gcemetadata in SLE16
* Fri Apr 04 2025 marcus.schaefer@suse.com
  - Fix changelog references for activation packages
* Thu Apr 03 2025 marcus.schaefer@suse.com
  - Fix and cleanup update_bootloader service
    The service tries to install the shim package by a chroot call
    into the upgraded system. This is not going to work for several
    reasons. First and foremost the call is interactive and was missing
    several zypper options to allow this to be done non-interactive.
    Second zypper from the DMS host should be called in the same way
    as it was done during the actual migrate service for consistency
    and stability reasons. When zypper has worked during the migrate
    service it's likely to work for subsequent calls too. In addition
    to the actual zypper call I reduced the code at several stages.
    There is no need to catch an exception from Command.run to
    raise the same exception (DistMigrationCommandException) that
    would be done by Command.run itself. Also the command interface
    logs the executed command. There is no reason to log the same
    information again. This reduces the implementation by a number
    of superfluous code and test code.
* Thu Apr 03 2025 marcus.schaefer@suse.com
  - Revert "do not try to install shim on Legacy BIOS"
    This reverts commit 87c269cc0d5dbcf6188761716903fcc25c6a5294.
    The boot mode can be changed for existing instances. Thus
    the migration should setup for this option in any case
* Wed Apr 02 2025 marcus.schaefer@suse.com
  - Add product migration check
    Add check which sends an API call to the registration server
    migrations API to ask for the possible upgrade path. This is
    acually the same call done by the zypper migration plugin but
    prior the actual migration starts. The request can only be
    issued if product and credentials data as well as the
    registration server URL could be found on the system to
    migrate. If the required information to issue the request
    cannot be found, the check is skipped. In case the regsitration
    server responds with an error, the pre-check prints this
    information such that the user knows about the issue prior
    starting the migration. The error information sent from the
    registration server could also include instructions how to
    fix the situation such that a migration can succeed. For
    example on LTSS registered systems the request will respond
    with an error message that products with activated LTSS
    cannot be migrated and how to call SUSEConnect to disable
    LTSS such that a migration will become possible.
* Mon Mar 31 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.8 → 2.1.9
* Wed Mar 26 2025 marcus.schaefer@gmail.com
  - Update README_QA
* Tue Mar 18 2025 marcus.schaefer@suse.com
  - Fix suse-migration-pre-checks package requires
    We are using the entry point mechanics which requires
    setuptools for older python versions.
* Mon Mar 03 2025 fcrozat@suse.com
  - update service.tree documentation
* Mon Mar 03 2025 fcrozat@suse.com
  - ensure btrfs post migration snapshot after other migrations
    selinux and NetworkManager migration should be part of post snapshot
* Fri Feb 28 2025 fcrozat@suse.com
  - hardcode path for update-bootloader
    symlink seems to not play well with chroot
* Thu Feb 27 2025 fcrozat@suse.com
  - do not try to install shim on Legacy BIOS
* Thu Feb 27 2025 marcus.schaefer@suse.com
  - Fixed suse-migration-sle16-activation spec
    All packages for the DMS must build from the same source tarball
* Thu Feb 27 2025 marcus.schaefer@suse.com
  - There is no SLES-release package
* Thu Feb 27 2025 marcus.schaefer@suse.com
  - Add missing changelog reference for sle16
* Thu Feb 27 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.7 → 2.1.8
* Tue Feb 25 2025 fcrozat@suse.com
  - ensure bootloader is updated before rebooting
* Thu Feb 20 2025 marcus.schaefer@suse.com
  - Add missing tests for btrfs services
* Thu Feb 20 2025 fcrozat@suse.com
  - Create btrfs snapshots before and after migration
    SLE16 btrfs snapshot creation
* Thu Feb 20 2025 marcus.schaefer@suse.com
  - Add missing tests for wicked_migration
* Thu Feb 20 2025 fcrozat@suse.com
  - Wicked to NetworkManager migration
    SLE16 wicked migration
* Thu Feb 20 2025 fcrozat@suse.com
  - ensure suse-migration-apparmor-selinux is build with poetry
    Add missing entry points to pyproject
* Wed Feb 19 2025 marcus.schaefer@suse.com
  - Added tests and fixes for apparmor unit
    The latest submission for the apparmor unit code did not provide
    any tests and was also producing some linter errors. This
    commit fixes it
* Wed Feb 19 2025 fcrozat@suse.com
  - Add migration.noreboot support on kernel boot
    This prevent auto-reboot once all migration tasks are done, for debugging purpose
* Wed Feb 19 2025 fcrozat@suse.com
  - Apparmor to selinux for SLE16
    new service to migration grub from apparmor to selinux
* Wed Feb 19 2025 marcus.schaefer@suse.com
  - Move to poetry
    Keep an obsolete setup.py and MANIFEST.in file which is
    required to build the package for SLE12 which has a
    very old py3.4
* Wed Feb 19 2025 fcrozat@suse.com
  - Create a SLE 16 migration image
    initial sles16 migration image
* Wed Feb 19 2025 fcrozat@suse.com
  - use requisite for systemd units
    ensure some migration tasks are only executed if previous one were succesfull
* Fri Feb 07 2025 marcus.schaefer@suse.com
  - Fixed style and added tests for last merge commit
* Tue Feb 04 2025 fcrozat@suse.com
  - ensure /run is available in chroot
* Tue Jan 21 2025 marcus.schaefer@suse.com
  - Add --from option for update_changelog.py
    This is used to create the changes information for the
    activation package properly
* Tue Jan 21 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.6 → 2.1.7
* Fri Jan 17 2025 marcus.schaefer@suse.com
  - Bump version: 2.1.5 → 2.1.6
* Thu Jan 16 2025 rjschwei@suse.com
  - Add option to create a solver test case
    During the migration we may run into a situation where a package shows up
    on the migrated system and we need to understand why this happened. Creating
    a solver test case allows us to debug such issues.
* Mon Jan 13 2025 fcrozat@suse.com
  - use findmnt instead of blkid for root detection
    it works better with btrfs setup
* Thu Jan 09 2025 marcus.schaefer@suse.com
  - Fixed changes inconsistencies again
    Add missing bsc references
* Thu Jan 09 2025 marcus.schaefer@suse.com
  - Fixed changes inconsistencies
    Several changelog entries of the submitted package contains
    bugzilla references which are not part of the git log.
    Something that should never happen but well. This commit
    updates the release tool to the latest version and adds
    a new .changes and .changes.ref file within the inconsistencies
    got fixed. In addition no longer existing e-mail addresses
    will be replaced by their successor
* Wed Jan 08 2025 marcus.schaefer@gmail.com
  - Bump version: 2.1.4 → 2.1.5
* Wed Jan 08 2025 marcus.schaefer@gmail.com
  - Include container version to .bumpversion.cfg
* Wed Jan 08 2025 marcus.schaefer@gmail.com
  - Bump version: 2.1.3 → 2.1.4
* Wed Jan 08 2025 marcus.schaefer@gmail.com
  - Bugzilla reference commit
    The bug fixed #294 from SUSE/fix_prepare_service_variable_access
    was reported later in bugzilla. This commit creates a reference
    from PR #294 to bsc#1234803
* Wed Dec 18 2024 marcus.schaefer@gmail.com
  - Clarify on the default migration path in the docs
    The description about the only supported migration path in the
    public cloud was hard to understand from a todays perspective
    and should be reworded for better clarity. This commit does
    that and also adds information about the possibility to
    specify the migration product to overwrite the default
    This Fixes #306
* Wed Dec 04 2024 marcus.schaefer@gmail.com
  - Add --migration-system option to migrate tool
    Allow to specify which runtime container should be used to
    run the migration process
* Wed Dec 04 2024 marcus.schaefer@gmail.com
  - Update container build
    Allow to build migration container also for SLE16.
    haveged and ifplugd are packages that no longer exists for SLE16.
    However they are also not needed for the SLE15 container use
    case. Removing them allows to build for both targets from the
    same description
* Wed Dec 04 2024 marcus.schaefer@gmail.com
  - Fix spec file for python migration module
    Build correct python version dependant module package
* Wed Nov 20 2024 marcus.schaefer@gmail.com
  - Followup fix for the cleanup method
    Do not treat the lazy umount as an error condition and
    continue the cleanup of data. If a busy state cannot
    be resolved it will fail at a later stage which is fine.
* Fri Nov 08 2024 marcus.schaefer@gmail.com
  - Bump version: 2.1.2 → 2.1.3
* Fri Nov 08 2024 marcus.schaefer@gmail.com
  - Fixed cleanup in container based migration
    prior deletion of the container storage it needs to
    be released from any mount process that could hold a
    busy state on it
* Fri Nov 08 2024 erico.mendonca@gmail.com
  - Fix ISO location logic in 99_migration
    There is code in the grub script which checks if the location of the installed live
    migration ISO file is on the same root device than (/). After the move of the
    installation target to "/migration-image", that location check is no longer needed.
    This commit drops the extra checks for /usr/share and /usr
    Co-authored-by: Marcus Schäfer <marcus.schaefer@gmail.com>
* Wed Nov 06 2024 marcus.schaefer@gmail.com
  - Increase version for SLES15-Migration package
    The version of the SLES15-Migration package is taken from the
    kiwi image description. Thus the bump of the version has
    happened in this file. In addition a proper version constraint
    to the suse-migration-sle15-activation package was added
    due to the latest change from commit #1dbb055bc which now
    installs the migration live ISO from the SLES15-Migration
    package to /migration-image and no longer to /usr/share/migration-image
* Thu Oct 31 2024 marcus.schaefer@gmail.com
  - Bump version: 2.1.0 → 2.1.1
* Wed Oct 30 2024 marcus.schaefer@gmail.com
  - Load lvm module in grub mode
    If the DMS live ISO loopback boot runs on a machine
    that has root (/) on LVM we need to load lvm in grub
    to be able to read from the root of the toplevel
    volume
* Wed Oct 30 2024 marcus.schaefer@gmail.com
  - Install migration live image to /migration-image
    This change helps to run migrations on systems which stores
    /usr/share in a special way, e.g. as LVM volume or other
    type that cannot be read via the loopback grub or kexec
    method. This Fixes #277
* Wed Oct 30 2024 marcus.schaefer@gmail.com
  - Add package sources for suse-migration-rpm
    The suse-migration-rpm package contains an OBS hook
    script which turns the migration live ISO image into
    a package named according to the name of the image
    name attribute. In our case: SLES15-Migration. The
    sources of this package was not maintained in any
    git repository but are tightly coupled to the live
    image build which resides here. Thus and to complete
    the source gap we have for the DMS this commit adds
    the sources for the meta package here
* Wed Oct 30 2024 marcus.schaefer@gmail.com
  - Bump version: 2.0.41 → 2.1.0
* Fri Oct 25 2024 marcus.schaefer@gmail.com
  - Added Test Plan
    Add information how to test the DMS
* Mon Oct 21 2024 marcus.schaefer@gmail.com
  - Bump version: 2.0.40 → 2.0.41
* Mon Oct 21 2024 marcus.schaefer@gmail.com
  - Be more specific on the scope of the project
* Mon Sep 23 2024 marcus.schaefer@gmail.com
  - Update README
    Fix contents of the README, point to the SUSE docs and
    fix symlinks and other information
* Mon Sep 23 2024 marcus.schaefer@gmail.com
  - Add success indicator flag file
    Added /var/log/distro_migration.exitcode to be written
    by the migrate service. The file contains the exit code
    from the zypper process and is used in the migrate tool
    to know about the overall state of the migration process.
    The migrate tool initializes the flag file with a failed
    value.
* Sun Sep 22 2024 marcus.schaefer@gmail.com
  - Fix/Refactor DMS packaging
    Add tox target to test implementation against py 3.6 and 3.11 stack
    Actually also wanted to add py3.4 but none of the github runners
    offers such an old python stack
    Add mypy tests. This is enabled to make sure we get notified
    if static type checking is enabled in the code. In this case we
    will be able to check if the affected code part is allowed to
    use type checking because the pre-checks python code must not
    use this feature of python as it is expected to run on SLE12
    with py3.4
    Fixup the overall python packaging. The former version of the
    package stack duplicates the module code in conflicting packages
    and also packaged python byte code binaries. This commit
    refactors the packaging such that the python module code is
    packages as a proper %{pythons}-migration package which can
    build for different python versions. The spec file change
    is done in a similar way to allow SLE12 and SLE15 builds as
    we do it for other PCT python modules. The respective DMS
    packages suse-migration-services, suse-migration-pre-checks
    can now simply require the DMS python stack and package only
    the main entry-point commands and services. This also allows
    to add further implementations to the DMS without ending
    in a package nightmare
    Fixup unit tests to finally get back to 100% test coverage
    as it was before I left the project. I'm not sure who tought
    it would be a good idea to weaken --cov-fail-under
* Sun Sep 22 2024 marcus.schaefer@gmail.com
  - Fixed reading of extra config file
    The MigrationConfig() was read in only once in the mount
    service. However for the container use case there is mount
    service. Thus the config file information was missing.
    For a more robust availability of the config information
    this patch adds the reading to all services that consumes it.
    In addition the change also prevents writing an 'all' status
    from systemd to the log file. This information is not relevant
    as the log contains information about the service runs. The data
    also floods the log with a lot of useless information and
    makes debugging more complicated
* Sun Sep 22 2024 marcus.schaefer@gmail.com
  - Fixed prepare service variable access
    The variable cloud_register_certs_path can be accessed
    uninitialized. This patch makes sure it is only accessed
    when suse_cloud_regionsrv_setup exists
* Sun Sep 22 2024 marcus.schaefer@gmail.com
  - Open fstab file only if it exists
* Tue Aug 13 2024 fmccarthy@suse.com
  - Bump version: 2.0.39 → 2.0.40
* Tue Aug 13 2024 jana.jaeger@suse.com
  - add metadata and revhistory and article ID
* Tue Aug 13 2024 fmccarthy@suse.com
  - SLES12 SP4 no longer a supported migration starting point.
* Thu Aug 08 2024 fmccarthy@suse.com
  - Switch default target and ISO backing distro SLE 15 SP3
    Update documentation to reflect new default target.
    Update image build config.kiwi to build the ISO image based upon
    SLE 15 SP3.
    Update unit tests to reflect new default target.
    Co-Authored-By: yarunachalam <yarunachalam@suse.com>
* Thu Aug 08 2024 fmccarthy@suse.com
  - Remove custom legacy ruby based zypper-migration script
    The install of the legacy zypper-migration-plugin script was previously
    removed from the kiwi file.
* Wed Apr 10 2024 fmccarthy@suse.com
  - Rename overlay zypper-migration plugin with -ruby suffix
* Wed Apr 03 2024 fmccarthy@suse.com
  - Fix update-bootloader to run after grub-setup  bsc#1222258
    Also checked to ensure that the sequencing for all systemd services
    now matches the ordering specified in helper/system.tree.
* Thu Mar 07 2024 fmccarthy@suse.com
  - Bump version: 2.0.38 → 2.0.39
* Thu Mar 07 2024 fmccarthy@suse.com
  - Address RPM spec file and config.kiwi dependency issues bsc#1219004
    Update the syse-migration-services RPM spec file dependencies to use
    suseconnect-ng rather than the legacy SUSEConnect.  While the existing
    dependency specification works with zypper dependency resolution, it
    doesn't work with the build service package resolution mechanism and
    breaks the build of the SLE 15 SP1 ISO image containing the package.
    Also update the config.kiwi used to build the SLE 15 SP1 ISO image to
    explicitly install suseconnect-ng and remove zypper-migration-plugin,
    which conflicts with suseconnect-ng.
* Mon Feb 05 2024 fmccarthy@suse.com
  - Bump version: 2.0.37 → 2.0.38
* Thu Feb 01 2024 fmccarthy@suse.com
  - Address nose tests deprecation issues
    The Python 3.8 CI testing is failing with an error because we haven't
    addressed the nose tests support deprecation by renaming the setup()
    method to setup_method().
* Fri Jan 26 2024 fmccarthy@suse.com
  - Bind mount the configured certs location bsc#1219004
    When the migration is running ensure that the correct certs directory
    is bind mounted from the /system-root into the ISO boot's runtime
    environment, by retrieving the configured server.certlocation setting
    from the /system-root/etc/regionserverclnt.cfg file. Default to the
    new cert location if a cert location cannot be determined.
    Log a message when no certs are present in the cert location, checking
    in the system being migrated, and after the bind mount of that path
    into the ISO runtime environment.
    Add unit tests for new get_regionsrv_certs_path() function and tweak
    some existing tests, that depend upon mocking calls to builtin.open(),
    so that they mock any calls to get_regionsrv_certs_path() so as to
    avoid triggering additional open() calls that would break those tests.
* Mon Oct 02 2023 jeremy.moffitt@suse.com
  - Remove target information that was confusing customers. Clarify SP4 support timeline
* Tue Aug 08 2023 marcus.schaefer@gmail.com
  - Added mailmap
    Don't lose contributions of the past ;)
* Thu Jul 27 2023 kberger@suse.com
  - Update kiwi config files to match current build versions
* Mon Jul 24 2023 jeremy.moffitt@suse.com
  - Clarify supported versions of SLES
* Tue Jul 18 2023 fs@suse.de
  - Added block marker to listings to increase readability
* Tue Jul 18 2023 fs@suse.de
  - Fixing variablelists that caused validation errors
* Tue Jul 11 2023 jeremy.moffitt@suse.com
  - Doc updates to install, migration, and after migration sections
* Mon Jul 10 2023 kberger@suse.com
  - update spec file
* Mon Jul 10 2023 kberger@suse.com
  - update spec file
* Thu Jun 08 2023 jeremy.moffitt@suse.com
  - Add clarifying text for partition requirements
* Thu Jun 01 2023 tom_schr@web.de
  - Use latest SUSE stylesheet (2022 layout)
* Thu Jun 01 2023 tom_schr@web.de
  - Add missing metadata for docs.suse.com
    The Docmanager tags are used for the "Edit source" and
    "Report bug" links.
    This change adds the latter.
* Fri Mar 31 2023 kberger@suse.com
  - cache file location debug added
    add update_bootloader to address bsc#1211240
    Bump version: 2.0.36 → 2.0.37
* Wed Mar 22 2023 kberger@suse.com
  - Add fixes to make updatesmtcache work correctly bsc#1209591
* Wed Mar 15 2023 kberger@suse.com
  - Add option to skip bind mount entries in fstab bsc#1209304
    Bump version: 2.0.35 → 2.0.36
* Thu Dec 08 2022 kberger@suse.com
  - Use bind mount when needed, to ensure the resolv.conf in the root_path contains proper settings bsc#1206194
    Fix kernel check when there is no entry for 'multiversion =' bsc#1206701
    Bump version: 2.0.34 → 2.0.35
* Thu Aug 25 2022 kberger@suse.com
  - Bump version: 2.0.33 → 2.0.34
* Wed Aug 24 2022 kberger@suse.com
  - add check for smt cache files
* Wed Jun 01 2022 kberger@suse.com
  - Update document version and authors
* Wed May 25 2022 kberger@suse.com
  - Enable prechecks as a systemd process
* Fri Apr 29 2022 kberger@suse.com
  - Add an EnvironmentFile to suse-migration-prepare.service bsc#1199028
    Bump version: 2.0.32 → 2.0.33
* Tue Apr 26 2022 keith.berger@suse.com
  - Update pre_checks_test.py
* Tue Apr 26 2022 keith.berger@suse.com
  - Update pre_checks.py
* Tue Apr 26 2022 keith.berger@suse.com
  - Update kernels.py
* Mon Apr 18 2022 kberger@suse.com
  - Add fix option to pre-checks
* Mon Apr 18 2022 kberger@suse.com
  - Remove --no-kernel from host independant initrd
* Mon Apr 18 2022 kberger@suse.com
  - Add an unsupported caveat for hpc
* Tue Apr 12 2022 kberger@suse.com
  - Add multiversion kernel checks to pre-checks
* Fri Apr 01 2022 kberger@suse.com
  - Enable prechecks for SLES15-Migration
* Mon Mar 07 2022 jesus.bv@suse.com
  - Add fix for setup in tests
* Mon Mar 07 2022 jesus.bv@suse.com
  - Change verbosity for verbose
    - Update:
    - doc
    - schema
    - reading config file
    - tests
* Mon Feb 28 2022 kberger@suse.com
  - Add more details around migration_proudct
* Fri Feb 18 2022 kberger@suse.com
  - Add an option to create a 'fat' initrd
    This change adds a new systemd service, regenerate-initrd that is
    responsible for running the dracut command when the config setting
    'build_host_independent_initrd' is enabled.
    This service is configured to run before the kernel-load service
    and allows a new initrd to be created after the migration is complete
    and before the final system reboot is performed.
* Wed Feb 09 2022 kberger@suse.com
  - Fix pytest 7 compatibility
* Tue Jan 25 2022 jesus.bv@suse.com
  - Mock lsblk call
    - Mocks the command call for tests that run in
    an environment with no partitions or
    partitions have not been defined
* Mon Dec 13 2021 jesus.bv@suse.com
  - Add zypper migration plugin verbosity
    Run the zypper migration plugin with verbosity option
    for debuggin purposes
    This Fixes #230 and bsc#1191634
* Tue Nov 30 2021 jesus.bv@suse.com
  - Add migration_product to documentation
    This Fixes #229
* Mon Nov 29 2021 jesus.bv@suse.com
  - Show config file content in the migration log
    This Fixes #228
* Wed Oct 06 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.31 → 2.0.32
* Tue Oct 05 2021 jesus.bv@suse.com
  - Add test for fstab with no options
* Thu Sep 30 2021 rjschwei@suse.com
  - - Handle fstab entries that have no fs options specified
* Fri Sep 17 2021 jesus.bv@suse.com
  - Add blank line to fix checks
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup migrate test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup path test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup mount system test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup product setup test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup grub setup test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup kernel load
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup prepare test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup ssh keys test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup reboot test
* Thu Sep 16 2021 jesus.bv@suse.com
  - Regroup command test
* Wed Sep 15 2021 jesus.bv@suse.com
  - Regroup logger test
* Wed Sep 15 2021 jesus.bv@suse.com
  - Regroup pre checks test
* Wed Sep 15 2021 jesus.bv@suse.com
  - Regroup SUSEProduct test
* Wed Sep 15 2021 jesus.bv@suse.com
  - Regroup SUSEConnect test
* Wed Sep 15 2021 jesus.bv@suse.com
  - Refactor reboot tests
* Fri Aug 27 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.30 → 2.0.31
* Fri Aug 27 2021 rjschwei@suse.com
  - Remove SMT references (#223)
    SMT is no longer supported by SUSE and users are encouraged to migrate
    to RMT. We want users to use RMT servers, or SCC as targets for receiving
    system updates. Also improve requirements description and make the requirements
    for the repository server more explicit w.r.t. availability of the proper channels.
* Wed Aug 25 2021 jesus.bv@suse.com
  - Add comment for lower case and reflect that on test
* Fri Aug 13 2021 jesus.bv@suse.com
  - Update env and log it
    - In case of preserving the proxy file
    add those settings to the environment
    before starting the migration
    - Log environment variables, this information
    is helpful if a proxy is set (see bsc#1188594)
* Thu Aug 12 2021 jesus.bv@suse.com
  - Remove no-cd option from zypper-migration command
* Wed Aug 11 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.29 → 2.0.30
* Wed Aug 11 2021 jesus.bv@suse.com
  - Add valid remote repo prefix (#220)
    Add valid remote repo prefix
    Add plugin:/susecloud prefix for repositories checking
    Remove extra Logger definitions to avoid duplicate entries
* Mon Aug 09 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.28 → 2.0.29
* Sun Aug 08 2021 jesus.bv@suse.com
  - Set --no-cd option in the right place
* Fri Aug 06 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.27 → 2.0.28
* Wed Jul 28 2021 jesus.bv@suse.com
  - Make zypper ignore CD/DVDs repositories
* Wed Jul 28 2021 jesus.bv@suse.com
  - Edit message for pre checks repos
    - Add a more informative message if
    problematic repos are found
    This Fixes #214
* Wed Jul 28 2021 jesus.bv@suse.com
  - Add line breaks for remote repos
    - Remote repos message in pre checks, potentially,
    will produce long lines. Add line breaks for better
    readability
    This Fixes #215
* Fri Jul 23 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.26 → 2.0.27
* Wed Jul 21 2021 sknorr@suse.de
  - doc: Fix a typo + try to sound more active: "we recommend ..."
* Wed Jul 21 2021 sknorr@suse.de
  - doc/DC: Update to suse2021 stylesheets
* Wed Jul 21 2021 marcus.schaefer@gmail.com
  - Use download-in-advance mode for zypper dup
    If the DMS was configured to use 'zypper dup' we should
    download packages in advance for more stability. The reason
    is that zypper dup always starts with deleting packages and
    then continues with installing packages. If at install time
    a package cannot be downloaded for some reason the zypper
    process ends and leaves the system in an inconsistent state
* Thu Jun 10 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.25 → 2.0.26
* Thu Jun 10 2021 marcus.schaefer@gmail.com
  - Fixed suse-migration-services package build
    The migration services package must not contain the pre-checks
    which are only relevant in the activation package
* Thu Jun 10 2021 marcus.schaefer@gmail.com
  - Setup package conflicts properly
    migration services and migration activation conflicts.
    The activation is installed on the host to migrate, the
    services are installed in the live migration image. There
    is no situation in which migration services and activation
    is installed on the same host. As both packages are build
    from the same python sources they have to conflict
* Wed Jun 09 2021 marcus.schaefer@gmail.com
  - Fixed migration services package build
    Several issues fixed in this commit:
    * Moving the sed original file over the changed one prior
    calling sdist invalidates the actual change
    * Fixed spec template for the activation
    The package builds a python and a grub.d app. Thus the
    instructions in the spec file to install from the two
    places needs to be adapted. In addition the %post section
    now runs a binary which is called in the process of creating
    an rpm in the checks processing. Thus all python requirements
    must be in BuildRequires
    * Make sure prechecks are grafted in MANIFEST
* Wed Jun 09 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.24 → 2.0.25
* Wed May 05 2021 jesus.bv@suse.com
  - Add pre checks
    This extends the activation package
    - Check no remote repositories
    - Check filesystem has LUKS encryption
    The checks are kept in their own files and run
    on the host, before rebooting.
    This Fixes #205
* Wed May 05 2021 marcus.schaefer@gmail.com
  - Update option settings in zypper dup mode
    When using the DMS in zypper dup mode the option
    settings --allow-downgrade and --no-confirm are handy.
    Even though I think with the global non-interactive
    option set it should not be required to set no-confirm
    in addition but the worst are questions being asked
    so better add it. With allow-downgrade set the ability
    to downgrade packages is given. With zypper dup the
    repo setup is user defined custom set and therefore
    downgrades should not be off the table
* Mon Apr 26 2021 marcus.schaefer@gmail.com
  - Respect host kernel boot options for migration
    Follow up commit to add a reference to bsc#1182520
* Fri Apr 23 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.23 → 2.0.24
* Fri Apr 23 2021 marcus.schaefer@gmail.com
  - Support symlinks for certificate files
* Fri Apr 23 2021 marcus.schaefer@gmail.com
  - Cracefully handle cert copy exceptions
    If the copy process of a certificate failed this should not
    cause the entire migration process to stop. This commit
    handles copy errors from the cert chain and turns them into
    a log message. If in the subsequent chain of tasks the
    migration failed because of missing certificates we will
    see that in the log and in the attempt to access the repos
    which is better than the python stacktrace on an unhandled
    FileNotFoundError exception. Retated to Issue #197
* Thu Apr 22 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.22 → 2.0.23
* Thu Apr 22 2021 marcus.schaefer@gmail.com
  - Prevent use of shutil.copytree
    The versions of copytree comes with a different set of
    features depending on the used python interpreter. The
    former implementation used an option which did not exist
    on python in SLE15. To keep us safe from further surprises
    I moved back to the simple but stable shutil.copy method.
    We can come up with a refactoring PR when needed but not
    combined with the fix for the certificates as this was the
    original intention of the change
* Wed Apr 21 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.21 → 2.0.22
* Wed Apr 21 2021 marcus.schaefer@gmail.com
  - Fixed import of certificates
    Certificates can exist on several places. This commit
    makes sure we lookup certificates at the following
    places:
    * /usr/share/pki/trust/anchors
    * /etc/pki/trust/anchors
* Tue Apr 20 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.20 → 2.0.21
* Tue Apr 20 2021 marcus.schaefer@gmail.com
  - Fixed mount of root for detected disk
    The former implementation looped through a list of block
    devices, mounted them, looked for the fstab file, reads it
    and umounted the device again. In a next step we mounted
    all entries from that fstab file as listed. The problem
    with this approach is that the mount of the root device
    already happened and we did it again. As this is not needed
    it should also not create a problem. But it does create
    a problem in multipath environments. With the absence of
    the multipath setup in the live migration system only one
    of the multipath devices can be mounted. This device was
    found by our loop approach but is not necessarily the
    right choice when mounting the device as referenced from
    the fstab file without multipath running. Therefore this
    commit makes sure the root device is mounted only once
    and only through our best guess loop and not by the entry
    in the fstab file.
* Mon Apr 19 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.19 → 2.0.20
* Fri Apr 16 2021 marcus.schaefer@gmail.com
  - Respect host kernel boot options for migration
    The kernel boot options used on the host to migrate can be
    important for the migration live environment too. For example
    if net.ifnames is passed is influences the network interface
    names to become predictable. As the DMS inherits configuration
    data from the host e.g the network setup, it's required that
    also the kernel boot parameters matches.
* Tue Apr 13 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.18 → 2.0.19
* Tue Apr 13 2021 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This commit adds a reference to bsc#1184278
    Avoid multiple mount attempts
* Mon Apr 12 2021 marcus.schaefer@gmail.com
  - Added kernel-firmware to support bare metal better
    For the DMS to boot on bare metal system we should install
    the kernel-firmware package. If not present certain systems
    like HP with Mellanox driver fails to boot. This is related
    to bsc#1182520
* Mon Apr 12 2021 marcus.schaefer@gmail.com
  - Fixed loopback root setting
    The root variable for the loopback search in grub was initialized
    with the assumption that the /usr/share/ location on the system is
    on the root partition. This assumption could be incorrect and the
    code should be smart enough to detect this situation.
    This Fixes #192
* Mon Apr 12 2021 jesus.bv@suse.com
  - Use ismount
    - Change the command "mount -q $mountpoint"
    for Python method "os.path.ismount($mountpoint)"
* Mon Apr 12 2021 jesus.bv@suse.com
  - Avoid multiple mount attempts
    - Fstab could contain one of the mount points
    DMS mount explicitly, ending up in an exception.
    To avoid this, DMS does not mount the explicit
    mount points if they are in fstab.
    This Fixes #191 and bcs#1184278
* Thu Mar 25 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.17 → 2.0.18
* Tue Mar 02 2021 marcus.schaefer@gmail.com
  - Added sort by path order for fstab handling
    Don't trust the order of entries in the fstab to be correct.
    Instead add a canonical path order to the fstab entries
    when processed by the distribution migration system.
    This Fixes #188 and Fixes bsc#1182520
* Wed Feb 24 2021 marcus.schaefer@gmail.com
  - Fixed umount inconsistency
    There is the mount-system service which mounts the system
    taking fstab into account. If it fails for some reason it
    also umounts all parts of the system. However in the sequence
    of the error condition there is also the grub-setup service
    which uninstalls the migration package and restores the
    grub config such that the subsequent boot process does no
    longer boot into the migration system. With the error
    condition from above the grub-setup service has no chance
    to perform its jobs because all of system-root has been
    umounted already. This commit makes sure that mount-service
    only registers the mount paths but does not umount them
    in case of a failure. This allows grub-setup to do its
    job and also allows the reboot service to umount registered
    devices prior reboot. This is related to bsc#1182520
* Mon Feb 22 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.16 → 2.0.17
* Fri Feb 19 2021 jesus.bv@suse.com
  - Do not copy /etc/resolv.conf if empty
    This Fixes #185
    This references bsc#1182234
* Thu Feb 18 2021 marcus.schaefer@gmail.com
  - Fixed documentation header
    The information about author, version, date and source link
    was partially duplicated and also misplaced. This commit
    cleans it up
* Fri Feb 05 2021 jesus.bv@suse.com
  - Avoid deprecation warning
    - Keep the flag whitelist_externals,
    which will be deprecated for allowlist_externals
    in the future versions, for compatibility reasons.
    - update whitelist externals to bash
* Fri Feb 05 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.15 → 2.0.16
* Fri Feb 05 2021 jesus.bv@suse.com
  - Allow non standard paths
    Create dir if not exists before copying
* Fri Feb 05 2021 marcus.schaefer@gmail.com
  - Bump version: 2.0.14 → 2.0.15
* Thu Feb 04 2021 marcus.schaefer@gmail.com
  - Move to github actions
    Travis has a strange opensource model
* Tue Feb 02 2021 jesus.bv@suse.com
  - Extend preserved files
    Add option to preserve files.
    This fixes #180
    This references bsc#1181808
* Mon Nov 16 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.13 → 2.0.14
* Fri Nov 13 2020 jesus.bv@suse.com
  - Set right root type fs
    When root type is extX, insmod is extX and it should be ext2
    that way grub ext2 module supports all extX fs.
    This Fixes bsc#1178737
* Wed Aug 26 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.12 → 2.0.13
* Wed Aug 26 2020 jesus.bv@suse.com
  - Update SMT cache
    Due to a cache inconsistency, the cache
    update needs to be triggered.
    This is related to bsc#1173654
* Tue Aug 25 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.11 → 2.0.12
* Tue Aug 25 2020 marcus.schaefer@gmail.com
  - Trim newline at findmnt output
    The output of the findmnt command returns information that
    closes with a newline. This newline was used as part of the
    device name and leads to errors on the subsequent lsblk
    call which uses this device name.
* Tue Aug 25 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.10 → 2.0.11
* Mon Aug 24 2020 marcus.schaefer@gmail.com
  - Added update of regionserverclnt for Azure
    In case of the Azure cloud the auto detection code for the root
    disk device does not work when running the distribution migration
    live system. Therefore it's required to pass in the correct
    information as option to azuremetadata. This is related to
    bsc#1173654
* Fri Aug 21 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.9 → 2.0.10
* Fri Aug 21 2020 marcus.schaefer@gmail.com
  - Explicitly request python3-azuremetadata
    There are two packages in the SUSE namespace for an
    azuremetadata tool. An old one and a new one. It seems
    the package does not correctly set provides/obsoletes
    which causes the old azuremetadata package to be
    pulled in when it should be python3-azuremetadata
* Mon Jul 13 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.8 → 2.0.9
* Mon Jul 13 2020 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This commit adds a reference to bsc#1173654
    The rebuild of the DMS image will include an updated
    version of python3-azuremetadata version="5.1.0"
    which is required to upgrade from SLE12 to SLE15
    in the Azure cloud
* Fri Jul 10 2020 marcus.schaefer@gmail.com
  - Mount EFI subvolume prior loopback
    If the efi grub modules lives in a btrfs subvolume it's
    required to mount the subvolume to allow module loading
* Wed Jul 08 2020 marcus.schaefer@gmail.com
  - Use dynamic loader allocation
    Set linux and initrd loader depending on the grub_platform
    This is related to bsc#1173532
* Wed Jul 08 2020 marcus.schaefer@gmail.com
  - Fixed reading of grub cmdline options
    If the grub setup uses linuxefi or a $linux variable
    the regular expression to extract the kernel cmdline
    failed. Related to bsc#1173532
* Tue Jul 07 2020 marcus.schaefer@gmail.com
  - Use file based syscall for kexec operation
    To avoid permission problems on load of the kernel use
    the new KEXEC_FILE_LOAD syscall instead of KEXEC_LOAD
    This Fixes #174 and Fixes bsc#1173532
* Wed Mar 25 2020 rjschwei@suse.com
  - Documentation update
    * Pull cloud specific caveats into their own section
    * Explicitly set the supported migration path for cloud instances
    * Minor woring improvements
    * Remove section about setting the migration target to make it a
    hidden feature
* Tue Mar 24 2020 rjschwei@suse.com
  - - Improve expressiveness of upgrade condition in case of multiple root
    file system presence.
* Wed Mar 18 2020 jesus.bv@suse.com
  - Rewording for clarity
* Mon Feb 24 2020 jesus.bv@suse.com
  - State the focused system is the main one
* Mon Feb 24 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.7 → 2.0.8
* Mon Feb 24 2020 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This submission creates a reference to bsc#1156068
* Fri Feb 21 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.6 → 2.0.7
* Mon Feb 17 2020 jesus.bv@suse.com
  - Preserve zypper log
    Mount zypper log in the host system.
    This Fixes #168
* Mon Feb 17 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.5 → 2.0.6
* Wed Feb 05 2020 jesus.bv@suse.com
  - Mount only existent devices
    Before, mount service mounted everything on
    /etc/fstab, now that service takes into account
    the entries that have an existent path.
    This Fixes #165
* Wed Jan 29 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.4 → 2.0.5
* Tue Jan 28 2020 marcus.schaefer@gmail.com
  - Fixed handling of busy state on system-root
    The console log service holds a busy state on the system-root
    mount because the log file is written on the host to migrate.
    At reboot time the service should be stopped to allow a clean
    umount procedure prior reboot. In addition the console log
    service should only restart on failure and not always
* Thu Jan 23 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.3 → 2.0.4
* Fri Jan 17 2020 marcus.schaefer@gmail.com
  - Disable lvmetad
    lvmetad running on the live migration host does not play well
    with the volumes activated for the system to migrate. Any
    chrooted operation will cause lvmetad to complain and to fall
    back to internal scanning
* Thu Jan 16 2020 marcus.schaefer@gmail.com
  - Add support for LVM managed devices
    LVM managed devices requires the detection as such in the
    mount_system service as well as the activation of the
    volume group prior mounting. This Fixes bsc#1156068
* Tue Jan 14 2020 jesus.bv@suse.com
  - Fix typo for doc
* Mon Jan 13 2020 rjschwei@suse.com
  - Update documentation
    Better clarify the intended use of the system for
    Public Cloud instances.
* Mon Jan 13 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.2 → 2.0.3
* Mon Jan 13 2020 marcus.schaefer@gmail.com
  - Make sure logger directory exists
* Fri Jan 10 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.1 → 2.0.2
* Fri Jan 10 2020 marcus.schaefer@gmail.com
  - Cleanup and fix logging
    The logger class contained methods never used. In addition
    the logging setup was wrong and only partially working. Any
    unit file represents a systemd call. This means any unit file
    is an extra program call which requires the initialization
    of the python logging facility. The logging itself is also
    extended in a way that any external program calls from the
    Command class will now be logged and written to the logfile
    at call time
* Fri Jan 10 2020 marcus.schaefer@gmail.com
  - Conditionally check if the system is registered
    Only if the zypper migration plugin is used it's required to
    check if the system is registered. In case use_zypper_migration
    is deactivated through the config file the migration will
    run zypper dup with a customer specific set of repositories.
    In this case it's not neccessarily required that this system
    is registered to use a SUSE repository server.
* Thu Jan 09 2020 marcus.schaefer@gmail.com
  - Make sure .ssh directory is a managed directory
* Thu Jan 09 2020 marcus.schaefer@gmail.com
  - Bump version: 2.0.0 → 2.0.1
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Fixed registration check
    The SUSEConnect call to check if the system is registered was
    called in the live migration system environment. Of course there
    it will fail because the live migration system is never registered.
    The call has to be performed chrooted inside of the system we
    want to migrate. Thus the caller arguments as well as the call
    time in the preparation unit needs a fix
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Bump version: 1.2.2 → 2.0.0
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This submission creates a reference to bsc#1155192
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Bump version: 1.2.1 → 1.2.2
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Cleanup code for style and scope
    Static methods should be explicitly written as such.
    As we are on python3 there is no need to inherit from
    Object for classes. Also respect the 80chars per line
    limit
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Fixed static method call
    The method is_registered is implemented as object method
    but is called as static method SUSEConnect.is_registered().
    This is wrong and causes a python runtime error on missing
    argument: self
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Consolidate image description in git
    Maintain the live image description which implements the
    platform for the upgrade process here in git. This allows
    for better maintenance of the description data as well as
    provides scope (pubcloud) to the description and also
    keeps the version number in sync with the process code
* Wed Jan 08 2020 marcus.schaefer@gmail.com
  - Bump version: 1.2.0 → 1.2.1
* Fri Nov 22 2019 jesus.bv@suse.com
  - Add valid registration verification
    System must be registered for the migration to succeed.
    This Fixes #150
* Fri Nov 22 2019 jesus.bv@suse.com
  - Bind mount usr/lib/zypp/plugins/services
    Bind mounting usr/lib/zypp/plugins causes that
    old version of urlresolver gets called which
    breaks the migration on the zypper level.
    Instead of mounting all the plugins path, only services is needed.
    This Fixes #151
* Thu Nov 14 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.9 → 1.2.0
* Thu Nov 14 2019 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This submission creates a reference to bsc#1155192
* Thu Nov 14 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.8 → 1.1.9
* Tue Nov 12 2019 jesus.bv@suse.com
  - Add requires for minimun version
    Boolean expressions are available with rpm >= 4.13
    and SLES_SAP provides product(SLES) = %{version}-%{release}
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.7 → 1.1.8
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Disable use of bool expressions in Requires
    Available with rpm >= 4.13. Thus we can't build for SLE12
    because rpm is older there
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.6 → 1.1.7
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Fixed Requires syntax
    According to https://rpm.org/user_doc/more_dependencies.html
    boolean expressions must be embedded into brackets
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.5 → 1.1.6
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Fixed superfluous newline in changelog generator
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.4 → 1.1.5
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Fixed changelog reference commit
    An old reference commit was used which has to be updated because
    a manual change to the .changes file on obs was done :(
* Tue Nov 12 2019 jesus.bv@suse.com
  - Add or condition properly
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.3 → 1.1.4
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Added activation spec changes to changelog
    Changes that happened on the activation package spec file
    were not part of the package changelog generated by
    helper/update_changelog.py
* Tue Nov 12 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.2 → 1.1.3
* Mon Nov 11 2019 jesus.bv@suse.com
  - The minimum migration starting point should be
    SLES 12 SP3
    or
    SLES For SAP 12 SP3.
* Fri Nov 08 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.1 → 1.1.2
* Fri Nov 08 2019 marcus.schaefer@gmail.com
  - Fixed reboot call procedure
    the systemd magic that detects whether to do kexec or not, is only
    applied if we invoke reboot. systemd internally maps reboot to one or
    the other of 'systemctl reboot' or 'systemctl kexec'. Therefore the
    current implementation which just call 'systemctl reboot' does not
    transparently detect for kexec. As we don't want to rely on the
    magic behind the reboot call we explicitly call systemctl with
    reboot or kecec depending on the configured soft_reboot
    configuration option. This is then also in line with the code
    that runs 'kexec load' which also depends on the configured
    soft_reboot value.
* Wed Nov 06 2019 marcus.schaefer@gmail.com
  - Bump version: 1.1.0 → 1.1.1
* Tue Nov 05 2019 marcus.schaefer@gmail.com
  - Fixed reading of config files
    There are two potential config files, both are optional
    but one of them was opened in any case and if not present
    raises an exception. This should not be the case and gets
    fixed by this commit
* Tue Nov 05 2019 marcus.schaefer@gmail.com
  - Fix changelog inconsistency
    It seems there was a changelog entry added in obs but not
    in the git history for the suse-migration-sle15-activation
    package. This commit brings all in line again
* Tue Nov 05 2019 marcus.schaefer@gmail.com
  - Bump version: 1.0.5 → 1.1.0
* Tue Nov 05 2019 tserong@suse.com
  - Do kernel mounts in mount service (not in prepare service)
    If the /dev, /proc and /sys mounts are done in the prepare service,
    then exceptions thrown between mount system and prepare result in
    the grub config not being applied.  Moving these mounts earlier in
    the process ensures that the grub setup service has everything it
    needs (see https://github.com/SUSE/suse-migration-services/pull/142
    for more detailed discussion of the problem).
* Thu Oct 31 2019 jesus.bv@suse.com
  - Require SUSEConnect updated version
    In a failed distribution migration scenario,
    zypper-migration does a rollback. During this
    rollback, zypper tries to refresh deactivated
    repos, making the rollback fail.
    This has been fixed in the newer (0.3.20) version of SUSEConnect.
    This Fixes #133
* Thu Oct 31 2019 tserong@suse.com
  - Add schema validation for migration config file
    If the custom config file is empty or contains only comment lines,
    it will now be ignored (rather than raising an exception and killing
    the migration).  If the file is corrupt somehow, or violates schema
    validation, an error will be logged and the migration will abort.
    Validation is *also* applied to the default config file (the one
    inside the migration image).  This makes automated testing easy,
    because we'll effectively do automatic validation on any of the
    test config files, whether they're for default config or custom
    config.
* Wed Oct 30 2019 marcus.schaefer@gmail.com
  - Delete left over debug print statement
* Wed Oct 30 2019 jesus.bv@suse.com
  - Auto detect migration product
    As there could be different targets (SLES, SLES_SAP, etc)
    instead of setting the target in the custom file, the migration
    system auto detects the migration product.
    In order to do so, the target version is read from the live system.
    This Fixes #129
* Fri Oct 25 2019 marcus.schaefer@gmail.com
  - Bump version: 1.0.4 → 1.0.5
* Tue Oct 22 2019 marcus.schaefer@gmail.com
  - Perform reboot through systemd
    reboot is performed through systemd. The call through systemd
    checks if there is a kexec loaded kernel and transparently
    turns 'systemctl reboot' into 'systemctl kexec'. Thus both ways,
    soft and hard reboot are managed in one call. This is related
    to Issue #111
* Tue Oct 22 2019 marcus.schaefer@gmail.com
  - Allow for vendor change during migration
    The migration concept allows for the zypper dup as well as
    for the zypper migrate approach. In the first case the user
    is responsible for setting up the repos and we expect that
    to be done in a way that vendor changes are acceptable. In
    the second case a repository server is used to serve the
    repos and we expect that registration instance to be trustworthy
    such that potential vendor changes are also allowed
* Mon Oct 21 2019 tserong@suse.com
  - Add option to configure reboot method
    This adds a soft_reboot option, which if set to false results in
    a hard reboot, as opposed to using kexec.
    Fixes #111
* Tue Aug 20 2019 jesus.bv@suse.com
  - Reference commit for SUSE maintenance
    Fix BYOS upgrade from 12SP4-SAP to 15 (BSC#1142108)
* Tue Aug 20 2019 marcus.schaefer@gmail.com
  - Bump version: 1.0.3 → 1.0.4
* Tue Aug 20 2019 marcus.schaefer@gmail.com
  - Switch changelog generation to UTC
    For new entries the UTC format is used because package
    submissions will happen from different time zones
* Tue Aug 20 2019 marcus.schaefer@gmail.com
  - Bump version: 1.0.2 → 1.0.3
* Tue Aug 20 2019 marcus.schaefer@gmail.com
  - Update changelog creation process
    In the same way like in the kiwi project we apply the
    creation of the changelog based on a reference file.
    This allows to work with maintenance which declines
    any request that changes an entry of the changes file
    even if this change just updates the full author name
* Wed Aug 14 2019 jesus.bv@suse.com
  - This submission creates a reference to bsc#1142108
* Tue Jul 30 2019 jesus.bv@suse.com
  - Refactor product setup
    Add SUSEBaseProduct class to detect and handle the
    installed base product. Related to Issue #129
* Tue Jul 30 2019 marcus.schaefer@gmail.com
  - Bump version: 1.0.1 → 1.0.2
* Mon Jul 29 2019 marcus.schaefer@gmail.com
  - Try to find a more generic name
    glob match can return, files and directories. We only
    work on files but the variable should not indicate scope
    when there is none
* Mon Jul 29 2019 marcus.schaefer@gmail.com
  - Fixed network setup
    The network setup was based on an overlay bind mount of the
    entire /etc/sysconfig/network directory. However that directory
    also contains script code and functions that are used by system
    tools like netconfig. The scripts here are not compatible between
    distributions. Thus the overmount of /etc/sysconfig/network/scripts
    from SLE12 to SLE15 as one example breaks the netconfig tool and
    prevents the update of the /etc/resolv.conf file on network
    restart. Other negative effects of that overmounting are likely.
    Therefore this commit changes the way we inherit the network setup.
    Only the plugin directory and the interface configurations are
    taken from the host, all the rest stays untouched.
* Thu Jul 25 2019 sknorr@suse.de
  - Language/typo fixes
* Thu Jul 18 2019 rjschwei@suse.com
  - - User doc
    + Clarification around the choices of invoking the migration process using
    reboot or kexec
* Thu Jul 18 2019 marcus.schaefer@gmail.com
  - Bump version: 1.0.0 → 1.0.1
* Wed Jul 17 2019 marcus.schaefer@gmail.com
  - Update documentation
    Mention the two methods to start the migration
* Wed Jul 17 2019 marcus.schaefer@gmail.com
  - Partially revert the no bootloader based startup
    After testing the kexec based implementation to start the
    migration live image, we found that kexec does not work in
    all cloud providers. Especially those using Xen like AWS
    do not work. Thus it's required to keep the alternative
    bootloader based startup sequence
* Wed Jul 17 2019 marcus.schaefer@gmail.com
  - Bump version: 0.6.5 → 1.0.0
* Mon Jul 15 2019 marcus.schaefer@gmail.com
  - Avoid bootloader to run the migration
    Instead of a reboot the customer should run the migration
    by calling run_migration. This commit adds a service utility
    to run the migration. The concept is based on kexec and
    avoids the modification to the bootloader setup. This allows
    more flexibility for clouds that runs instances not directly
    through a bootloader and also avoids infinite boot/reboot
    cycles in case of an early error of the migration mount
    service. This Fixes #108
* Fri Jul 05 2019 marcus.schaefer@gmail.com
  - Bump version: 0.6.4 → 0.6.5
* Fri Jul 05 2019 marcus.schaefer@gmail.com
  - Fixup udev reload on rule changes
    The current restart sequence is missing the actual set/change
    of device nodes. This also prevented network interface names
    to be added/renamed.
* Mon Jul 01 2019 marcus.schaefer@gmail.com
  - Bump version: 0.6.3 → 0.6.4
* Mon Jul 01 2019 marcus.schaefer@gmail.com
  - Fixed post mount service unit file
    Wrong path to executable
* Mon Jul 01 2019 marcus.schaefer@gmail.com
  - Bump version: 0.6.2 → 0.6.3
* Fri Jun 28 2019 marcus.schaefer@gmail.com
  - Added limitation note as suggested by Robert
* Wed Jun 26 2019 jesus.bv@suse.com
  - Rename migration package
    Avoid confusion and possible error due to wrong package name.
    Fix #122
* Tue Jun 18 2019 marcus.schaefer@gmail.com
  - Added doc chapter for new preserve section
* Mon Jun 17 2019 marcus.schaefer@gmail.com
  - Added post mount service
    The post mount service is used to preserve data from the
    system to be migrated into the live migration system directly
    after the mounting of the system to be migrated. It is is
    also responsible for making that data effective in the live
    migration system. The current implementation allows for
    preserving udev rules file and make them active.
    This Fixes #100
* Wed Jun 12 2019 jesus.bv@suse.com
  - Capitalize steps list
* Mon Jun 10 2019 jesus.bv@suse.com
  - Rename config option to use zypper migration
    Rename the option to use zypper migration path, wether a plugin or
    a sub-command is not relevant for the name.
    Fixes #118
* Fri Jun 07 2019 marcus.schaefer@gmail.com
  - Bump version: 0.6.1 → 0.6.2
* Thu Jun 06 2019 marcus.schaefer@gmail.com
  - Update per suggestions by Tom
* Thu Jun 06 2019 marcus.schaefer@gmail.com
  - Update per review by Robert
* Thu Jun 06 2019 marcus.schaefer@gmail.com
  - Update per review by Robert
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - update per review by Jesus
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - update per review
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - update per review by Tom
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - Update per review
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - Support PARTUUID specifier in fstab
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - Update documentation
    Added section about possible config file values including
    the explanation for the different zypper install modes.
    This Fixes #99
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - Allow to skip local fstab paths
    If a device path is referenced as local path in the fstab file
    but can't be found on the system, this device path is skipped.
    Usually a device path references a storage node that exists
    as /dev/.. node on the machine. However it's possible to also
    reference files e.g for loop mount in the fstab file. If that
    file reference is not present in the live migration system it
    is ignored because considered harmless. file references in
    fstab are sometimes used for swapfiles or other file mapped
    data. For the purpose of the migration we consider such paths
    as not belonging to the system. This assumption of course
    could be wrong which is why we also write a warning message
    to the log file once this situation is disovered. This
    Fixes #110
* Wed Jun 05 2019 marcus.schaefer@gmail.com
  - Bump version: 0.6.0 → 0.6.1
* Tue Jun 04 2019 jesus.bv@suse.com
  - Place network logging in network service
* Tue Jun 04 2019 marcus.schaefer@gmail.com
  - Fixed SSH identity copy
    The SSH host identity is provided by the server credentials that
    makes up the fingerprint of that host. However the copy of the
    files should exclude the encrypted private key ssh_host_key which
    can only be read on the origin host. In fact a copy of that file
    to another host will lead to a segfault in sshd and kills the
    connection without any further information.
* Tue Jun 04 2019 jesus.bv@suse.com
  - Log bondN info if bonding directory exists
* Tue Jun 04 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.30 → 0.6.0
* Tue Jun 04 2019 tserong@suse.com
  - Ignore blank lines and comments when parsing fstab
* Sat Jun 01 2019 jesus.bv@suse.com
  - Provide detailed network information
    After network.online target is done, we log
    the network status, interfaces and relevant information.
    Fixes #84
* Thu May 30 2019 jesus.bv@suse.com
  - Inherit ssh host keys
    The live image creates its ssh host key on boot. However that
    host key does not match the host key from the system to migrate.
    This leads to a warning message on a changed host key when a
    ssh login attempt is made while the migration runs. As the
    migration live system inherits the network setup it should
    also inherit the ssh host key. This Fixes #86
* Wed May 29 2019 rjschwei@suse.com
  - Cosmetic changes to handle error codes from zypper
    Make it more explicit to the reader that we treat specific
    values from zypper as errors. Positive side effect is that
    if the list gets longer the condition does not need to
    change
* Wed May 29 2019 tserong@suse.com
  - Try to mount raid partitions
    `lsblk` returns "raid1" (or similar) for /dev/md devices, so we need
    to attempt to mount these as well as regular partitions in case the
    root disk is on mdraid.
* Wed May 29 2019 marcus.schaefer@gmail.com
  - Fix grub setup if root is on a raid device
    If the root filesystem is on a raid device the boot parameter
    rd.auto must be passed to the boot such that the dracut raid
    module can setup the raid prior to iso-scan.sh searching
    through the devices. Related to Issue #96
* Wed May 29 2019 marcus.schaefer@gmail.com
  - Rebuild grub conf on uninstall of activation rpm
    If the activation package is installed a grub config file
    extension is applied. On uninstall of the package that
    extension will be deleted but it only becomes effective
    if the grub config will be rebuild. This Fixes #94
* Tue May 28 2019 marcus.schaefer@gmail.com
  - Add support for zypper dup mode
    By default the migration system uses the zypper migration plugin
    to migrate the system. This works if the system is SLES registered
    and an upgrade path from SCC exists. For system where this is not
    possible an alternative method can be switched on with the
    custom configuration option use_zypper_migration_plugin set
    to: false. In this mode we just call zypper dup. Please note
    this requires that the user has pre setup the repositories before
    the migration system gets started. This Fixes #72
* Tue May 28 2019 tserong@suse.com
  - Use `uniq` when finding root device in grub activation script
    If the system is using mdraid on the root disk, the `lsblk` invocation
    will return two lines matching "/$", e.g.:
    /dev/md1
    /dev/md1
    This then breaks the subsequent `blkid` invocations, so $root_uuid and
    $root_type are set to empty strings.  When you later boot into the
    migration system, grub gives two errors:
    error: one argument expected.
    error: no such device: root.
    Adding `uniq` fixes this.
* Tue May 28 2019 marcus.schaefer@gmail.com
  - Implement import of custom configuration file
    Instead of the system-root/etc/sle-migration-service file which
    was used to setup debugging only we now allow the custom config
    file system-root/etc/sle-migration-service.yml whose contents
    gets migrated into the existing /etc/migration-config.yml on
    the live migration host.
* Fri May 24 2019 jesus.bv@suse.com
  - optional file
* Fri May 24 2019 jesus.bv@suse.com
  - Change debug flag file to option
    Before, to stop rebooting it was needed to place a
    file as a debug flag. Now there must be a debug key option set
    in the custom file.
* Tue May 14 2019 marcus.schaefer@gmail.com
  - User documentation
    Add distribution migration system user documentation.
    - Caveats and unsupported conditions
    - Structure and content for the doc tool chain
    - Recommendation about ssh key access
    - State that clean up of /etc/issue is needed
    - Daps style for suse docs
* Mon May 06 2019 marcus.schaefer@gmail.com
  - Fixed spec file of activation package
    A %install and %build section is required otherwise the
    default contents of those sections applies which leads
    to the creation of a debuginfo setup that failed on a
    noarch package
* Thu May 02 2019 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This submission creates a reference to fate#327175 and bsc#1133919
* Thu May 02 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.29 → 0.5.30
* Thu May 02 2019 marcus.schaefer@gmail.com
  - Reference commit for SUSE maintenance
    This submission creates a reference to fate#327175 and bsc#1133919
* Thu May 02 2019 jesus.bv@suse.com
  - Update migration product key
    Change key name and structure.
    In case of not found migration_product key,
    the migration process will be aborted.
* Thu May 02 2019 marcus.schaefer@gmail.com
  - Provide MigrationConfig class
    Handling the migration configuration file deserves its own
    class to implement a clear messaging model
* Wed May 01 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.28 → 0.5.29
* Tue Apr 30 2019 marcus.schaefer@gmail.com
  - Fix reboot race condition
    The issue described here came up with the package split and
    rename of the activation package. The grub setup service
    deletes the activation package and calls grub2-mkconfig which
    deletes the migration live boot entry as well as updates grub
    to boot the migrated system. However if the activation package
    could not be removed the process ends in a boot loop. Therefore
    one part of this patch makes the removal of the migration
    packages more robust. Another part provides detailed log
    information about the removal and the grub setup in the log
    file.
    Last but not least the patch includes a refactoring of the
    umount and reboot process which offers a race condition if
    the grub-setup service has failed. The patch here also
    Delete the umount service and put the code in the reboot
    service. Only on reboot we umount the system. In case of
    debugging we want to have full access to the root of the
    system that should have become migrated. In addition the
    systemd dependency chain for the kernel-load vs. reboot
    service was racy and got fixed by a clear dependency
    for grub-setup -> kernel-load -> reboot
* Tue Apr 30 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.27 → 0.5.28
* Tue Apr 30 2019 marcus.schaefer@gmail.com
  - Fixed deletion of activation package
    Due to the split of the services package the activation
    package name is target specific and needs to be matched
    by a pattern
* Mon Apr 29 2019 marcus.schaefer@gmail.com
  - Split activation package from services
    From a release process it doesn't make sense to keep the activation
    script as a sub package of the services. The reason is because the
    suse-migration-services package will be released to the migration
    target distribution and the activation package will be released to
    the migration start distribution. Thus the code is relevant on
    different distributions and it is not useful to maintain that in
    one package. This Fixes #74
* Wed Apr 24 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.26 → 0.5.27
* Wed Apr 24 2019 marcus.schaefer@gmail.com
  - Fixed network requirement
    To come up with a race free network start the setup-host-network
    service has to be called after network.target. This ensures the
    wicked service is already active. An active wicked service allows
    for a reload of the network service. The setup-host-network
    service overmounts /etc/sysconfig/network and reloads the network
    service. That tells the running wicked service to elaborate
    over the new ifcfg configurations and updates the network status.
    In the prepare unit we require the network-online target which
    makes sure it operates only on an online network.
* Fri Apr 12 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.25 → 0.5.26
* Thu Apr 11 2019 marcus.schaefer@gmail.com
  - Fix network setup service
    The network setup service for the migration inherits the
    network as it is configured on the system to become migrated.
    As part of that process the network is restarted through
    systemctl. However this is a problem because it interferes
    with the network service dependency chain. This could result
    in a failed network startup depending on how fast other
    services e.g dbus are up and running. So the way we do it
    causes a race condition. This commit deletes the network
    startup from our network setup service. Our network setup
    service runs by definition of the unit file before the
    network.target. This means at the time the network service
    activates the network our setup routine is already done and
    a normal network startup should be guaranteed.
* Wed Apr 10 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.24 → 0.5.25
* Wed Apr 10 2019 marcus.schaefer@gmail.com
  - Make sure /var/lib/cloudregister exists
    At cloud registration time information about the SMT/RMT server
    is provided below /var/lib/cloudregister. For migration it's
    required to bind mount this path from the system to become
    migrated into the live migration system.
* Tue Apr 09 2019 marcus.schaefer@gmail.com
  - Support new cloud regionsrv client
    The new cloud region service client comes with a plugin for
    zypper that translates repo URIs into a specific plugin format
    such that it's no longer possible to gain access to the SLES
    repositories of our public cloud infrastructure by playing
    tricks with snapshotting an on-demand instance without the
    billingtag. However the new and fancy way makes migration of
    such a system more difficult because the new repo URI format
    must be known to zypper migration. This requires all software
    components to be provided in the live migration image which
    has been done in the image description but furthermore requires
    that the cloud specific /etc/regionserverclnt.cfg and the
    contents of /usr/lib/zypp/plugins from the system to migrate
    are available in the migration live image. The later is
    implemented in this commit and Fixes #69
* Tue Mar 26 2019 jesus.bv@suse.com
  - Bump version: 0.5.23 → 0.5.24
* Tue Mar 26 2019 jesus.bv@suse.com
  - Fix pattern for initrd
    Some images have an extra boot partition,
    so there are grub files with '/vmlinuz'
    and we need to handle that case.
* Mon Mar 25 2019 jesus.bv@suse.com
  - Bump version: 0.5.22 → 0.5.23
* Fri Mar 22 2019 jesus.bv@suse.com
  - Copy kernel and initrd for access
    It copies the files in-memory so kexec can access them
    once root-path gets umounted.
    Fixes #65
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.21 → 0.5.22
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Fixed dependency for reboot service
    The reboot service must be called after mount-service and
    after umount-service. The mount-service handles the setup
    of the debug flag. If the reboot service is too fast the
    debug flag setup is not respected
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Fixed logging to logfile
    The setup of the logfile has to be done on each service
    at import time. Each service is an extra python call
    done by systemd. The setup of the logfile needs to be done
    as an initializer for any unit invocation
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.20 → 0.5.21
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Added systemctl status output to logfile
    As part of the reboot service add the systemctl status information
    collected up to that point into the logfile.
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Fixed log reference in console log service
    The systemd unit file was still pointing to the old file
    name but that has changed to var/log/distro_migration.log
* Thu Mar 21 2019 marcus.schaefer@gmail.com
  - Initialize logging and debug as early as possible
    The earliest opportunity to setup the log file and the
    debug flag is directly after the mount-system code has
    successfully mounted the target to migrate. At this point
    we should init the logfile and also the debugging if
    needed. The code before this commit has potential to
    not even reach the log/debug setup. With this commit
    the only requirement is a successful mount of the target
    system.
* Wed Mar 20 2019 jesus.bv@suse.com
  - Add option to handle file conflicts
    In the scenario where there are packaging bugs,
    this option install packages even if they
    replaces files from other packages.
    Fixes #58
* Wed Mar 20 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.19 → 0.5.20
* Wed Mar 20 2019 marcus.schaefer@gmail.com
  - Fixed handling of debug flag file
    If this file is present we want to stay in the migration system
    no matter what happened. This is urgently required to keep us
    with a way to debug the process. Current testing has shown that
    only the log file is not enough to debug the complete pipeline.
* Fri Mar 15 2019 jesus.bv@suse.com
  - Bump version: 0.5.18 → 0.5.19
* Fri Mar 15 2019 jesus.bv@suse.com
  - Add flag to handle zypper migration errors
    Zypper has extra error codes that does not necessarily have to
    stop a distribution migration.
    Fixes #52
* Thu Mar 07 2019 jesus.bv@suse.com
  - Bump version: 0.5.17 → 0.5.18
* Thu Mar 07 2019 jesus.bv@suse.com
  - Path for log file
    After reboot, if the migration has failed, the file
    /etc/issue has a message pointing to the log file.
    The path of that log file must exist inside the rebooted system.
* Tue Mar 05 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.16 → 0.5.17
* Mon Mar 04 2019 marcus.schaefer@gmail.com
  - Add rootpart detection to grub activation script
    The live migration image gets installed to the system again
    because of the space limitation on /boot. This affects the
    menuentry created on grub side in a way that we can't use
    the pre-allocated pointer to the boot device but have to search
    the root partition like in a real grub root entry. This patch
    adds the needed code changes to locate the root part, insert
    the needed filesystem module and initializes the root variable
    to allow the loopback loading of the image. This Fixes #54
* Mon Mar 04 2019 marcus.schaefer@gmail.com
  - Revert location change from /usr/share to /boot
    This reverts commit 66dd8d4943d38f121f4b16b70bf0ab8d0b2ec82d.
    If there is an extra boot partition and it's too small we
    are not able to install the migration system and the customer
    will not be able to use the migration concept. The image is
    usually around ~300MB of size and that can often be too much
    for an extra boot partition which is often designed to be small
* Fri Mar 01 2019 jesus.bv@suse.com
  - Bump version: 0.5.15 → 0.5.16
* Wed Feb 20 2019 jesus.bv@suse.com
  - Right path for debug file
    Copy debug file in a different path so reboot code
    can read that location in case of debugging.
* Tue Feb 19 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.14 → 0.5.15
* Wed Feb 13 2019 jesus.bv@suse.com
  - Reboot system after migration unless debug
    The migration process will reboot the system whether it has succeeded or not
    unless there is a file indicating not to reboot.
    Fixes #48
* Tue Feb 12 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.13 → 0.5.14
* Mon Feb 11 2019 jesus.bv@suse.com
  - Report migration error in /etc/issue
    In order to be able to reboot and still report errors in case the migration fails,
    the error will be reported in a log file (/var/log/distro_migration.log).
    The message and log file name to check will be indicated in /etc/issue.
    Fixes #47
* Fri Feb 08 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.12 → 0.5.13
* Fri Feb 08 2019 jesus.bv@suse.com
  - Rename migration log file
    As zypper is part of the process but not the only
    component, 'zypper_migration.log' does not describe it properly.
* Fri Jan 25 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.11 → 0.5.12
* Fri Jan 25 2019 marcus.schaefer@gmail.com
  - Change location for live migration ISO image
    Instead of /usr/share expect the image in /boot. The reason
    for this change is because we don't know if the system uses
    an extra boot partition to load the kernel and initrd from.
    However the way we add the extra loop boot entry to grub
    is based on reading the value for ($root) as it was configured
    on the system. The location ($root) points to in grub could
    be anywhere but we can trust /boot to be in there.
    This Fixes the run of the migration in Azure and also
    stabilizes the concept.
* Tue Jan 22 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.10 → 0.5.11
* Thu Jan 17 2019 jesus.bv@suse.com
  - Detection of baseproduct
    Find the .prod files inside /etc/products.d
    which does not contain a flavor tag.
    Remove the target registration in that .prod file.
* Wed Jan 16 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.9 → 0.5.10
* Wed Jan 16 2019 marcus.schaefer@gmail.com
  - Revert/Refactor distro_target handling
    zypper implements a handling for the distro_target attribute.
    If present in the repository metadata, zypper compares the
    value with the baseproduct <target> setup in /etc/products.d.
    If they mismatch zypper refuses to create the repo. In the
    process of a migration from distribution [A] to [B] this mismatch
    always applies by design and prevents the zypper migration plugin
    to work. In SCC or RMT the repositories doesn't contain the
    distro_target attribute which is the reason why we don't see
    this problem there. SMT however creates repos including
    distro_target.
    The refactored workaround solution is now to delete the target
    specification in the baseproduct registration if present, because
    the overlay mounting of etc/products.d did not work as it would
    lead to a wrong upgrade path on response from SCC.
    In addition a backup of the original products.d data is created
    and used in the zypper migration plugin in case of an error
* Wed Jan 16 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.8 → 0.5.9
* Tue Jan 15 2019 marcus.schaefer@gmail.com
  - Added comments to explain the driver of the change
* Tue Jan 15 2019 marcus.schaefer@gmail.com
  - Added product setup service
    During migration etc/products is a bind mounted location
    to handle the distro_target issue. At the end of a successful
    migration the data written to that location must be synced
    into the migrated system. This task is done by the product
    service
* Tue Jan 15 2019 marcus.schaefer@gmail.com
  - Handle distro_target
    Long time ago zypper added a distro_target information into
    the repository file and matches those with the product
    information of the system. If the distro doesn't match
    zypper refused to create the repository. In the migration
    process using SMT this caused the zypper migration plugin
    to fail because zypper never created repositories. That's
    because in a migration process the repository and the
    system to migrate never match. Therefore we bind mount
    the /etc/products.d information from the migration live
    system into the /system-root of the system to become
    migrated. At the end of a successful migration the new
    product information is copied to the migrated system
* Tue Jan 15 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.7 → 0.5.8
* Tue Jan 15 2019 marcus.schaefer@gmail.com
  - Fixed handling of os.listdir result
    os.listdir only returns the names of the files in the
    directory. Thus the file reference in the subsequent
    copy call was wrong.
* Tue Jan 15 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.6 → 0.5.7
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Import certificates
    Copy certificates from /usr/share/pki/trust/anchors of the
    system to become migrated into the live migration system
    and update the certificate pool. This Fixes #37
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.5 → 0.5.6
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Fixed console log service
    The systemd unit file was missing an install target
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.4 → 0.5.5
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Changed service type for console logger
    Move to simple type service and set a restart policy.
    The way the console logger was started before caused
    a stop of the service as soon as the kernel or some
    other program logs information on the console. However
    during migration we want the console logger to be
    actively occupy the console such that it's clear a
    migration process is currently running
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.3 → 0.5.4
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Fixed console log service
    Allow to start console log at any time. Make sure it starts
    after prepare but do not require prepare as it causes the
    prepare service to be called again.
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.2 → 0.5.3
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Update prepare service on hosts file
    In the cloud the translation from a name into an IP might also
    be configured via the static etc/hosts file. In case of SUSE's
    public cloud infrastructure the connected smt server is
    configured that way at registration time. For the migration
    process this means that this information must be present otherwise
    the host to upgrade cannot be resolved.
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Don't truncate migration log file
    If the zypper based migration process runs it truncates the
    so far written logfile information. We want to keep all logging
    data, thus the zypper call has to append information to the
    existing log file and not overwrite them.
* Mon Jan 14 2019 marcus.schaefer@gmail.com
  - Fixed executable path in console log service
    systemd requires an absolute path to the called program.
    This patch fixes the path to the dialog program such
    that systemd calls it
* Fri Jan 11 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.1 → 0.5.2
* Tue Jan 08 2019 jesus.bv@suse.com
  - Mount kernel file systems inside /system-root
    The file systems were previously mounted in grub
    service but because the migration service needs to
    have access proc, dev and sys inside system-root
    (e.g. when updating the bootloader) they are mounted
    in an earlier step. There is no need to mount them
    again in grub. They are unmounted properly before
    rebooting.
    This Fixes #32
* Mon Jan 07 2019 marcus.schaefer@gmail.com
  - Bump version: 0.5.0 → 0.5.1
* Sun Dec 30 2018 marcus.schaefer@gmail.com
  - Fix log file initialization
    We agreed on writing the log file into the root filesystem
    of the system to migrate. This implies that the first time
    to initialize this log file is in the prepare service
    after the mount system service has succeeded. Calling
    set_logfile in the mount system service before the system
    got mounted is the wrong place. This patch fixes this
    and also improves the unit test for this condition.
* Wed Dec 19 2018 marcus.schaefer@gmail.com
  - Bump version: 0.4.3 → 0.5.0
* Tue Dec 18 2018 jesus.bv@suse.com
  - Migration file (#30)
    * Add migration file
    This file is used to document the migration process inside the system.
    * Add logging for the services
* Tue Dec 11 2018 marcus.schaefer@gmail.com
  - Require dialog package in spec file
* Tue Dec 11 2018 marcus.schaefer@gmail.com
  - Added zypper migration console logging
    If the migration process starts the console should show a
    progress information. We use a dialog tailbox which shows
    the output of the zypper migration plugin while it runs.
    The output is processed using a systemd service connected
    to the console. In addition the log file
    var/log/zypper_migrate.log
    Is created inside of the system which gets migrated. This
    allows for later inspection of what the migration plugin
    did. This Fixes #27
* Fri Dec 07 2018 marcus.schaefer@gmail.com
  - Bump version: 0.4.2 → 0.4.3
* Fri Dec 07 2018 marcus.schaefer@gmail.com
  - Fixed typo in spec file
    syse vs. suse
* Fri Dec 07 2018 marcus.schaefer@gmail.com
  - Bump version: 0.4.1 → 0.4.2
* Fri Dec 07 2018 marcus.schaefer@gmail.com
  - Fixed spec file
    Missing installation of ssh service systemd unit file
* Fri Dec 07 2018 marcus.schaefer@gmail.com
  - Bump version: 0.4.0 → 0.4.1
* Wed Dec 05 2018 jesus.bv@suse.com
  - Provide ssh access
    Copy the authorized key files into the authorized key file
    of migration user to be able to access through ssh.
    This checks in /home and /root paths.
    Fixes #26
* Wed Dec 05 2018 jesus.bv@suse.com
  - Proper class name for test
* Thu Nov 29 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.6 → 0.4.0
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Refactor reboot system
    The system gets rebooted via kexec or if failed by a hard reboot.
    For kexec it's required to load kernel, initrd and boot parameters
    from the migrated system. Thus the kexec load must be done before
    umount of the system and the actual reboot after umount of the
    system. Therefore this patch splits the kernel-reboot service
    into two services, whereas the umount service will be called
    in between of them.
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Fixup ExecStart in kernel reboot service
    The binary is named suse-migration-kernel-reboot not
    suse-migration-kernel-load
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.5 → 0.3.6
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Fixed removal of suse-migration-activation
    A simple rpm -e call leads to an error because the package
    depends on the master package providing the image. Thus it's
    better to instruct zypper to remove the package including its
    dependencies
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Fixed invocation of Command.run
    Use of unexpected keyword argument
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Fixed kexec reboot kernel and grub lookup
    In the reboot service the kernel files and the grub config
    was not searched in the root of the migrated system but in
    the root of the migration live system, which is the wrong
    place.
* Wed Nov 28 2018 marcus.schaefer@gmail.com
  - Fixed kernel reboot service
    The unit requirements and dependencies were set wrong
* Tue Nov 27 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.4 → 0.3.5
* Tue Nov 27 2018 jesus.bv@suse.com
  - Update target for uninstall
    Set the target properly to uninstall package suse-migration-activation.
    Fixes #17
* Mon Nov 26 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.3 → 0.3.4
* Mon Nov 26 2018 jjesusbv@gmail.com
  - Add kexec-tools (#16)
    * Add kexec-tools
    This is nedded for rebooting the migrated system
    with the new kernel.
* Sun Nov 25 2018 jesus.bv@suse.com
  - Uninstall suse-migration-activation
    The new grub menu should not have this entry.
    This solves issue #12
* Fri Nov 23 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.2 → 0.3.3
* Fri Nov 23 2018 marcus.schaefer@gmail.com
  - Set the Migration boot entry to be the default
    In addition set the boot timeout to 1sec
* Thu Nov 22 2018 jesus.bv@suse.com
  - Refactor get_cmdline
    More generic parameter name and better search
    of target kernel command line options.
* Thu Nov 22 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.1 → 0.3.2
* Wed Nov 21 2018 jesus.bv@suse.com
  - Add kexec reboot service
* Wed Nov 21 2018 marcus.schaefer@gmail.com
  - Added grub config extension to activate migration
    Provide /etc/grub.d/99_migration plugin which causes
    the creation of a Migration grub menu entry. In addition
    the package build was cleaned up and extended by a new
    sub-package suse-migration-activation which provides
    that grub config plugin.
* Wed Nov 21 2018 marcus.schaefer@gmail.com
  - Remount system root if booted via grub loopback
    if the system to become migrated was booted via a grub
    loopback menuentry, the disk is blocked by that readonly
    loopback mount and needs to be remounted for read write
    access first
* Mon Nov 19 2018 marcus.schaefer@gmail.com
  - Bump version: 0.3.0 → 0.3.1
* Mon Nov 19 2018 marcus.schaefer@gmail.com
  - Hotfix fstab export method
    Put newline at the end of each fstab entry
* Fri Nov 16 2018 marcus.schaefer@gmail.com
  - Bump version: 0.2.1 → 0.3.0
* Fri Nov 16 2018 jesus.bv@suse.com
  - Resolve the mount stack in reverse order
* Fri Nov 16 2018 jesus.bv@suse.com
  - Remove variable
* Fri Nov 16 2018 jesus.bv@suse.com
  - Cleanup of mounted paths
* Thu Nov 15 2018 jesus.bv@suse.com
  - Mount sys
* Thu Nov 15 2018 jesus.bv@suse.com
  - Test add entry of services calls
* Thu Nov 15 2018 jesus.bv@suse.com
  - Store service calls
* Thu Nov 15 2018 jesus.bv@suse.com
  - Make one call
* Thu Nov 15 2018 jesus.bv@suse.com
  - Add dependencies
* Thu Nov 15 2018 jesus.bv@suse.com
  - Specific service names
* Wed Nov 14 2018 marcus.schaefer@gmail.com
  - Umount service must run after grub-setup service
* Wed Nov 14 2018 marcus.schaefer@gmail.com
  - Refactor mount path handling
    Instead of duplicating code in the cleanup service make sure
    all services which mounts a location updates the mount meta
    data file /etc/system-root.fstab. The cleanup service in the
    end just reverse reads that file and umounts all locations
* Wed Nov 14 2018 jesus.bv@suse.com
  - Update grub file to migrated version
* Wed Nov 14 2018 rjschwei@suse.com
  - - Fix typo in doc string
* Wed Nov 14 2018 marcus.schaefer@gmail.com
  - Added umount service
    The umount service cleans up the migration host such that
    no active mount reference into the migrated systems exists
    anymore and we are safe to reboot
* Tue Nov 13 2018 marcus.schaefer@gmail.com
  - Bump version: 0.2.0 → 0.2.1
* Tue Nov 13 2018 jesus.bv@suse.com
  - Fix agree-licenses test
* Tue Nov 13 2018 jesus.bv@suse.com
  - Fix agree-licenses option typo
* Tue Nov 13 2018 marcus.schaefer@gmail.com
  - Bump version: 0.1.2 → 0.2.0
* Tue Nov 13 2018 marcus.schaefer@gmail.com
  - Use --non-interactive flag
    Instead of pre selecting a menu index use the non
    interactive flag and make the code more robust
* Mon Nov 12 2018 marcus.schaefer@gmail.com
  - Added zypper migration service
    The service which actually runs the zypper migration plugin.
    The service is called after the preparation step has completed
    successfully
* Tue Oct 23 2018 marcus.schaefer@gmail.com
  - Bump version: 0.1.1 → 0.1.2
* Tue Oct 23 2018 marcus.schaefer@gmail.com
  - make sure to restart the network actively
* Tue Oct 23 2018 marcus.schaefer@gmail.com
  - Bump version: 0.1.0 → 0.1.1
* Mon Oct 22 2018 marcus.schaefer@gmail.com
  - The presence of /etc/SUSEConnect is optional
    Do not fail the prepare service if there is no /etc/SUSEConnect
    file available on the system to become migrated. Copy the
    file if present and just continue otherwise
* Tue Oct 16 2018 marcus.schaefer@gmail.com
  - Bump version: 0.0.1 → 0.1.0
* Mon Oct 15 2018 marcus.schaefer@gmail.com
  - Added prepare service
    The prepare service runs the preparation tasks for systemd
    to perform the migration. This includes the import of the
    SUSEConnect configuration from the host as well as the
    bind mount of the zypp metadata
* Mon Oct 15 2018 marcus.schaefer@gmail.com
  - Added setup host network service
    Added service to activate the migration host system network
* Wed Oct 10 2018 marcus.schaefer@gmail.com
  - Implement mount_system service
    The mount_system service looks for existing disk partitions
    and for an fstab file on that partitions. The first partition
    found with an fstab file is considered the system to upgrade.
    The fstab file is read in and mounted /system-root
    in the order of the fstab entries
* Wed Oct 10 2018 marcus.schaefer@gmail.com
  - Activate travis Ci
* Wed Oct 10 2018 marcus.schaefer@gmail.com
  - Added command and path helper classes

Files

/usr/bin/suse-migration
/usr/bin/suse-migration-apparmor-selinux
/usr/bin/suse-migration-btrfs-snapshot-post-migration
/usr/bin/suse-migration-btrfs-snapshot-pre-migration
/usr/bin/suse-migration-grub-setup
/usr/bin/suse-migration-ha
/usr/bin/suse-migration-kernel-load
/usr/bin/suse-migration-mount-system
/usr/bin/suse-migration-post-mount-system
/usr/bin/suse-migration-prepare
/usr/bin/suse-migration-product-setup
/usr/bin/suse-migration-reboot
/usr/bin/suse-migration-regenerate-initrd
/usr/bin/suse-migration-setup-host-network
/usr/bin/suse-migration-ssh-keys
/usr/bin/suse-migration-update-bootloader
/usr/bin/suse-migration-wicked-networkmanager
/usr/lib/systemd/system/suse-migration-apparmor-selinux.service
/usr/lib/systemd/system/suse-migration-btrfs-snapshot-post-migration.service
/usr/lib/systemd/system/suse-migration-btrfs-snapshot-pre-migration.service
/usr/lib/systemd/system/suse-migration-console-log.service
/usr/lib/systemd/system/suse-migration-container-emergency.service
/usr/lib/systemd/system/suse-migration-container-prepare.service
/usr/lib/systemd/system/suse-migration-container-product-setup.service
/usr/lib/systemd/system/suse-migration-container-reboot.service
/usr/lib/systemd/system/suse-migration-container.service
/usr/lib/systemd/system/suse-migration-grub-setup.service
/usr/lib/systemd/system/suse-migration-ha.service
/usr/lib/systemd/system/suse-migration-kernel-load.service
/usr/lib/systemd/system/suse-migration-mount-system.service
/usr/lib/systemd/system/suse-migration-post-mount-system.service
/usr/lib/systemd/system/suse-migration-prepare.service
/usr/lib/systemd/system/suse-migration-product-setup.service
/usr/lib/systemd/system/suse-migration-reboot.service
/usr/lib/systemd/system/suse-migration-regenerate-initrd.service
/usr/lib/systemd/system/suse-migration-setup-host-network.service
/usr/lib/systemd/system/suse-migration-ssh-keys.service
/usr/lib/systemd/system/suse-migration-update-bootloader.service
/usr/lib/systemd/system/suse-migration-wicked-networkmanager.service
/usr/lib/systemd/system/suse-migration.service
/usr/sbin/run_migration


Generated by rpm2html 1.8.1

Fabrice Bellet, Wed Aug 13 22:29:06 2025