%global leapp_datadir %{_datadir}/leapp-repository %global repositorydir %{leapp_datadir}/repositories %global custom_repositorydir %{leapp_datadir}/custom-repositories %define leapp_repo_deps 7 %if 0%{?rhel} == 7 %define leapp_python_sitelib %{python2_sitelib} %define lpr_name leapp-upgrade-el7toel8 %else %define leapp_python_sitelib %{python3_sitelib} %define lpr_name leapp-upgrade-el8toel9 # This drops autogenerated deps on # - /usr/libexec/platform-python (rhel-8 buildroot) # - /usr/bin/python3.x (epel-8 buildroot) # - python(abi) = 3.x # Each of these lead into the removal of leapp rpms as python is changed between # major versions of RHEL %global __requires_exclude ^python\\(abi\\) = 3\\..+|/usr/libexec/platform-python|/usr/bin/python.* %endif # TODO: not sure whether it's required nowadays. Let's check it and drop # the whole block if not. %if 0%{?rhel} == 7 # Defining py_byte_compile macro because it is not defined in old rpm (el7) # Only defined to python2 since python3 is not used in RHEL7 %{!?py_byte_compile: %global py_byte_compile py2_byte_compile() {\ python_binary="%1"\ bytecode_compilation_path="%2"\ find $bytecode_compilation_path -type f -a -name "*.py" -print0 | xargs -0 $python_binary -c 'import py_compile, sys; [py_compile.compile(f, dfile=f.partition("$RPM_BUILD_ROOT")[2]) for f in sys.argv[1:]]' || :\ find $bytecode_compilation_path -type f -a -name "*.py" -print0 | xargs -0 $python_binary -O -c 'import py_compile, sys; [py_compile.compile(f, dfile=f.partition("$RPM_BUILD_ROOT")[2]) for f in sys.argv[1:]]' || :\ }\ py2_byte_compile "%1" "%2"} %endif # We keeps the leapp-repository name for the component, however we do not plan # to create such an rpm. Instead, we are going to introduce new naming for # RHEL 8+ packages to be consistent with other leapp projects in future. Name: leapp-repository Version: 0.17.0 Release: 1%{?dist}.2 Summary: Repositories for leapp License: ASL 2.0 URL: https://oamg.github.io/leapp/ Source0: https://github.com/oamg/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: deps-pkgs-7.tar.gz # NOTE: Our packages must be noarch. Do no drop this in any way. BuildArch: noarch ### PATCHES HERE # Patch0001: filename.patch Patch0001: 0001-CheckVDO-Ask-user-only-faiulres-and-undetermined-dev.patch Patch0004: 0004-Enforce-the-removal-of-rubygem-irb-do-not-install-it.patch Patch0005: 0005-rhui-azure-sap-apps-consider-RHUI-client-as-signed.patch Patch0006: 0006-rhui-azure-sap-apps-handle-EUS-SAP-Apps-content-on-R.patch Patch0007: 0007-checksaphana-Move-to-common.patch Patch0008: 0008-checksaphana-Adjust-for-el7toel8-and-el8toel9-requir.patch %description %{summary} # This is the real RPM with the leapp repositories content %package -n %{lpr_name} Summary: Leapp repositories for the in-place upgrade %if 0%{?rhel} == 7 ######### RHEL 7 ############ BuildRequires: python-devel Requires: python2-leapp # We should not drop this on RHEL 7 because of the compatibility reasons Obsoletes: leapp-repository-data <= 0.6.1 Provides: leapp-repository-data <= 0.6.1 # Former leapp subpackage that is part of the sos package since RHEL 7.8 Obsoletes: leapp-repository-sos-plugin <= 0.10.0 # Set the conflict to be sure this RPM is not upgraded automatically to # the one from the target (upgraded) RHEL. The RPM has to stay untouched # during the whole IPU process. # The manual removal of the RPM is required after the IPU Conflicts: leapp-upgrade-el8toel9 %else ######### RHEL 8 ############ BuildRequires: python3-devel Requires: python3-leapp # Same as the conflict above - we want to be sure our packages are untouched # during the whole IPU process Conflicts: leapp-upgrade-el7toel8 %endif # IMPORTANT: everytime the requirements are changed, increment number by one # - same for Provides in deps subpackage Requires: leapp-repository-dependencies = %{leapp_repo_deps} # IMPORTANT: this is capability provided by the leapp framework rpm. # Check that 'version' instead of the real framework rpm version. Requires: leapp-framework >= 3.1 # Since we provide sub-commands for the leapp utility, we expect the leapp # tool to be installed as well. Requires: leapp # The leapp-repository rpm is renamed to %%{lpr_name} Obsoletes: leapp-repository < 0.14.0-5 Provides: leapp-repository = %{version}-%{release} # Provide "leapp-upgrade" for the user convenience. Users will be pointed # to install "leapp-upgrade" in the official docs. Provides: leapp-upgrade = %{version}-%{release} # Provide leapp-commands so the framework could refer to them when customers # do not have installed particular leapp-repositories Provides: leapp-command(answer) Provides: leapp-command(preupgrade) Provides: leapp-command(upgrade) Provides: leapp-command(rerun) Provides: leapp-command(list-runs) %description -n %{lpr_name} Leapp repositories for the in-place upgrade to the next major version of the Red Hat Enterprise Linux system. # This metapackage should contain all RPM dependencies exluding deps on *leapp* # RPMs. This metapackage will be automatically replaced during the upgrade # to satisfy dependencies with RPMs from target system. %package -n %{lpr_name}-deps Summary: Meta-package with system dependencies of %{lpr_name} package # The package has been renamed, so let's obsoletes the old one Obsoletes: leapp-repository-deps < 0.14.0-5 # IMPORTANT: everytime the requirements are changed, increment number by one # - same for Requires in main package Provides: leapp-repository-dependencies = %{leapp_repo_deps} ################################################## # Real requirements for the leapp-repository HERE ################################################## Requires: dnf >= 4 Requires: pciutils %if 0%{?rhel} && 0%{?rhel} == 7 # Required to gather system facts about SELinux Requires: libselinux-python Requires: python-pyudev # required by SELinux actors Requires: policycoreutils-python # Required to fetch leapp data Requires: python-requests %else ############# RHEL 8 dependencies (when the source system is RHEL 8) ########## # systemd-nspawn utility Requires: systemd-container Requires: python3-pyudev # Required to fetch leapp data Requires: python3-requests # Required because the code is kept Py2 & Py3 compatible Requires: python3-six # required by SELinux actors Requires: policycoreutils-python-utils # required by systemfacts, and several other actors Requires: procps-ng Requires: kmod # since RHEL 8+ dracut does not have to be present on the system all the time # and missing dracut could be killing situation for us :) Requires: dracut %endif ################################################## # end requirement ################################################## %description -n %{lpr_name}-deps %{summary} %prep %setup -n %{name}-%{version} %setup -q -n %{name}-%{version} -D -T -a 1 # APPLY PATCHES HERE # %%patch0001 -p1 %patch0001 -p1 %patch0004 -p1 %patch0005 -p1 %patch0006 -p1 %patch0007 -p1 %patch0008 -p1 %build %if 0%{?rhel} == 7 cp -a leapp*deps-el8*rpm repos/system_upgrade/el7toel8/files/bundled-rpms/ %else cp -a leapp*deps-el9*rpm repos/system_upgrade/el8toel9/files/bundled-rpms/ %endif %install install -m 0755 -d %{buildroot}%{custom_repositorydir} install -m 0755 -d %{buildroot}%{repositorydir} cp -r repos/* %{buildroot}%{repositorydir}/ install -m 0755 -d %{buildroot}%{_sysconfdir}/leapp/repos.d/ install -m 0755 -d %{buildroot}%{_sysconfdir}/leapp/transaction/ install -m 0755 -d %{buildroot}%{_sysconfdir}/leapp/files/ install -m 0644 etc/leapp/transaction/* %{buildroot}%{_sysconfdir}/leapp/transaction # install CLI commands for the leapp utility on the expected path install -m 0755 -d %{buildroot}%{leapp_python_sitelib}/leapp/cli/ cp -r commands %{buildroot}%{leapp_python_sitelib}/leapp/cli/ rm -rf %{buildroot}%{leapp_python_sitelib}/leapp/cli/commands/tests # Remove irrelevant repositories - We don't want to ship them for the particular # RHEL version %if 0%{?rhel} == 7 rm -rf %{buildroot}%{repositorydir}/system_upgrade/el8toel9 %else rm -rf %{buildroot}%{repositorydir}/system_upgrade/el7toel8 %endif # remove component/unit tests, Makefiles, ... stuff that related to testing only rm -rf %{buildroot}%{repositorydir}/common/actors/testactor find %{buildroot}%{repositorydir}/common -name "test.py" -delete rm -rf `find %{buildroot}%{repositorydir} -name "tests" -type d` find %{buildroot}%{repositorydir} -name "Makefile" -delete for DIRECTORY in $(find %{buildroot}%{repositorydir}/ -mindepth 1 -maxdepth 1 -type d); do REPOSITORY=$(basename $DIRECTORY) echo "Enabling repository $REPOSITORY" ln -s %{repositorydir}/$REPOSITORY %{buildroot}%{_sysconfdir}/leapp/repos.d/$REPOSITORY done; # __python2 could be problematic on systems with Python3 only, but we have # no choice as __python became error on F33+: # https://fedoraproject.org/wiki/Changes/PythonMacroError %if 0%{?rhel} == 7 %py_byte_compile %{__python2} %{buildroot}%{repositorydir}/* %else %py_byte_compile %{__python3} %{buildroot}%{repositorydir}/* %endif %files -n %{lpr_name} %doc README.md %license LICENSE %dir %{_sysconfdir}/leapp/transaction %dir %{_sysconfdir}/leapp/files %dir %{leapp_datadir} %dir %{repositorydir} %dir %{custom_repositorydir} %dir %{leapp_python_sitelib}/leapp/cli/commands %{_sysconfdir}/leapp/repos.d/* %{_sysconfdir}/leapp/transaction/* %{repositorydir}/* %{leapp_python_sitelib}/leapp/cli/commands/* %files -n %{lpr_name}-deps # no files here %changelog * Thu Oct 20 2022 Petr Stodulka - 0.17.0-1.2 - Add checks for the in-place upgrades of RHEL for SAP - RHUI: Fix the in-place upgrade on Azure for RHEL SAP Applications - Resolves: rhbz#2125284 * Thu Sep 08 2022 Petr Stodulka - 0.17.0-1.1 - Rebase to v0.17.0 - Support upgrade path RHEL 8.7 -> 9.0 and RHEL SAP 8.6 -> 9.0 - Provide and require leapp-repository-dependencies 7 - Provide `leapp-command()` for each CLI command provided by leapp-repository - Require dracut, kmod, procps-ng on RHEL 8+ - Require leapp-framework >= 3.1 - Add actors covering removal of NIS components on RHEL 9 - Add checks for obsolete .NET versions - Allow specifying the report schema v1.2.0 - Check and handle upgrades with custom crypto policies - Check and migrate OpenSSH configuration - Check and migrate multipath configuration - Check minimum memory requirements - Do not create the upgrade bootloader entry when the dnf dry-run actor stops the upgrade - Enable Base and SAP in-place upgrades on Azure - Enable in-place upgrade in case LUKS volumes are Ceph OSDs - Enable in-place upgrades in Azure RHEL 8 base images using RHUI - Enable in-place upgrades on IBM z16 machines - Enable the CRB repository for the upgrade only if enabled on the source system - Fix cloud provider detection on AWS - Fix detection of the latest kernel - Fix issues caused by leapp artifacts from previous in-place upgrades - Fix issues with false positive switch to emergency console during the upgrade - Fix swap page size on aarch64 - Fix the VDO scanner to skip partitions unrelated to VDO and adjust error messages - Fix the false positive NFS storage detection on NFS servers and improve the report msg - Fix the issues on systems with the LANGUAGE environment variable - Fix the root directory scan to deal with non-utf8 filenames - Handle upgrades of SAP systems on AWS - Inform about necessary migrations related to bacula-director when installed on the system - Inhibit the upgrade when /var/lib/leapp being mounted in a non-persistent fashion to prevent failures - Inhibit the upgrade when /var/lib/leapp mounted with the noexec option to prevent failures - Inhibit upgrade when NVIDIA driver is detected - Make the application of custom selinux rules more reliable and do not override changes done by RPM scriptlets - Migrate the OpenSSL configuration - PESEventScanner actor has been fully refactored - Report changes around SCP and SFTP - Skip comment lines when parsing the GRUB configuration file - Stop propagating the “debug” and ”enforcing=0” kernel cmdline options into the target kernel cmdline options - Mass refactoring to be compatible with leapp v0.15.0 - Update VDO checks to enable user to decide the system state on check failures and undetermined block devices - The VDO dialog and related VDO reports have been properly updated - Resolves: rhbz#2125284 * Wed Apr 27 2022 Petr Stodulka - 0.16.0-6 - Skip comments in /etc/default/grub during the parsing - Resolves: #1997076 * Tue Apr 26 2022 Petr Stodulka - 0.16.0-5 - Migrate blacklisted CA certificates during the upgrade - Resolves: #1997076 * Tue Apr 19 2022 Petr Stodulka - 0.16.0-4 - Extend the check of deprecated or removed PCI drivers - Do not instruct DNF to install rubygem-irb during the in-place upgrade to prevent conflict between files - Resolves: #1997076 * Fri Mar 18 2022 Petr Stodulka - 0.16.0-1 - Rebase to v0.16.0 - Improve the performance of the leapp execution for "pre first reboot" phases - Introduce upgrades for RHEL 8 to RHEL 9 - Enabled upgrade paths: - RHEL 8.6 -> 9.0 - RHEL with SAP 8.6 -> 9.0 - Requires leapp-framework >= 2.2 - Bump leapp-framework-dependencies to 5 - Add actors for MariaDB and PostgreSQL - Add detection of enabled DNF plugins - Add scan & checks for VDO devices - Bind the /run/lock dir into the container in the upgrade initramfs env - Check Firewalld configuration - Check SSSD configuration for changes in RHEL 9 - Check deprecated network settings - Check ifcfg files for change in RHEL 9 - Check the existence of the custom network-scripts - Filter out PES data unrelated for the particular IPU path - Fix generating of instructions/data for the leapp DNF plugin during - Fix generating the target initramfs when additional files and dracut modules are requested to be added - Fix getting device attribute through udev on Python 3 - Fix parsing of sysctl output during the scan of the system - Fix scanning "/etc/default/grub" with empty lines - Fix scanning information about mounted devices - Fix the execution order for the dnf dry run actor - Handle SELinux during the in-place upgrade - Handle live kernel patching during - Improve and generalize checking of device drivers - Inhibit the upgrade when ipa-server is detected - Introduce DNFWorkarounds to register scripts to be executed before DNF run - Introduce handling of DNF modularity during the upgrade - Introduce the --report-schema option to control the version of the generated report format - Introduce the --target option to specify the version of the target system - Provide the LEAPP_IPU_IN_PROGRESS environment variable for actors during in-place upgrade - Resolves: #1997076 * Tue Feb 01 2022 Petr Stodulka - 0.15.0-12 - Fix handling of PES data for modularity packages - Resolves: #1997076 * Thu Jan 27 2022 Petr Stodulka - 0.15.0-11 - Beta version of IPU 8 -> 9 - Resolves: #1997076 * Wed Oct 20 2021 Petr Stodulka - 0.15.0-10 - Bumping the release for the testing purposes. - First build for the IPU 8 -> 9 - Resolves: #1997076 * Wed Oct 20 2021 Petr Stodulka - 0.15.0-3 - Correct the version-release to obsolete previous leapp-repository-deps rpm - Resolves: #2015192 * Wed Oct 20 2021 Petr Stodulka - 0.15.0-2 - Correct the version-release to obsolete previous leapp-repository rpm - Resolves: #2015192 * Tue Oct 19 2021 Petr Stodulka - 0.15.0-1 - Rebase to v0.15.0 - Changed supported upgrade path for: RHEL with SAP 7.9 -> 8.2 - Enable upgrades for SAP on AWS & Azure using RHUI - The leapp-repository rpm has been renamed to leapp-upgrade-el7toel8 - Provides the leapp-upgrade capability, so all required packages can be installed by the `yum install leapp-upgrade` command - Added a dependency on leapp as the new rpm provides leapp commands - Bumped leapp-repository-dependencies to 6 - Do not exclude repoids enabled via the --enablerepo option (#623) - Enforce the `en_US.utf-8` locale when running leapp to prevent various issues when a different locale is used on the system - Enhance the check of required free space on disk for the upgrade - Fix XFS ftype=0 workaround when "non-XFS" rootfs is present - Fix detection of XFS partitions without ftype - Fix handling of /etc/yum.repos.d directory for RHUI - Fix incorrect mapping of RHEL repositories - Fix the detection of NFS partitions in /etc/fstab (e.g. when nfs3 or nfs4 is specified) - Fix the report message when multiple NICs with ethX names are present (#640) - Fix handling of issues when fetching leapp data files - Introduce the LEAPP_NO_NETWORK_RENAMING environment variable to leave management of NICs names on user when set to '1'; it's wanted e.g. in case a bonding is configured on the system - Add actors to report about PostgresSQL changes - Make generation of targetuserspace container, upgrade initramfs, and target initramfs more dynamic - Require the /etc/dasd.conf file only when DASD is used on s390x - Generate /etc/migration-results upon leapp preupgrade / upgrade execution to inform about status of the upgrade - Improve the report message when BTRFS is detected - Inhibit the upgrade if any CIFS entries found in /etc/fstab - Inhibit the upgrade if any deprecated OpenSSH configuration options / directives are detected - Inhibit the upgrade when multiple rescue boot entries exist on s390x - Inhibit the upgrade when x32b and x64b versions of packages are installed - Introduce hard preservation of leapp packages during the IPU to make the upgrade process more protected - Introduce new system of automatic mapping of RHEL repositories for the in-place upgrade based on the repomap.json data file - Introduce the --channel CLI option to specify the channel (e.g. eus) supposed to be used for the upgrade - Report the problems with target repositories using inhibitors instead of error messages - Update (or create) the /etc/{yum,dnf}/var/releasever file containing the target OS release if exists or RHUI is detected - Introduced the upgrade/common leapp repository: contains fundamental parts generic for all in-place upgrades - The upgrade/el7toel8 leapp repository contains only stuff related to in-place upgrade from RHEL 7 -> RHEL 8 - Resolves: #2015192 * Thu May 13 2021 Petr Stodulka - 0.14.0-4 - Fix the check of removed non-pci drivers Relates: #1952886 * Tue May 04 2021 Petr Stodulka - 0.14.0-3 - Fix handling of errors when fetching leapp data files from server Relates: #1952886 * Tue Apr 27 2021 Petr Stodulka - 0.14.0-2 - Improve fetching of leapp data files from server (increase timeouts and retry multiple times in case of error) - Relates: #1952886 * Fri Apr 23 2021 Petr Stodulka - 0.14.0-1 - Rebase to v0.14.0 - Added dependency on python-requests on RHEL 7 - Changed supported upgrade paths: RHEL-ALT 7.6 -> 8.4 RHEL 7.9 -> 8.4 RHEL with SAP 7.7 -> 8.2 (unchanged) - Download the leapp data from cloud.redhat.com automatically when no data are present locally (and system is registered) - Fix migration of Quagga to FRR on RHEL 8.4 - Inhibit the upgrade if the system uses any drivers dropped from the RHEL 8 system - Resolves: #1952886 * Thu Feb 04 2021 Dominik Rehak - 0.13.0-2 - Rebuild - Relates: #1915509 * Thu Feb 04 2021 Dominik Rehak - 0.13.0-1 - Rebase to v0.13.0 - Add actors to migrate Quagga to FRR - Add stable uniq Key id for every dialog - Add upgrade support for SAP HANA - Allow upgrade with SCA enabled manifest - Fix comparison of the newest installed and booted kernel - Fix crash due to missing network interfaces during upgrade phases - Fix error with /boot/efi existing on non-EFI systems - Fix false positive detection of issue in /etc/default/grub that led into GRUB prompt - Fix remediation command for ipa-server removal - Fix syntax error in upgrade script - Inhibit upgrade if multiple kernel-debug pkgs are installed - Inhibit upgrade on s390x machines with /boot on a separate partition - Inhibit upgrade with mount options in fstab that break mounting on RHEL 8 - Remove the *leapp-resume* service after the *FirstBoot* phase to prevent kill of the leapp process on `systemctl daemon-reload` - Remove the initial-setup package to avoid it asking for EULA acceptance during upgrade - Require the leapp-framework capability 1.4 - Respect the *kernel-rt* package - Resolves: #1915509 #1872356 #1873312 #1899455 #1901002 #1905247 #1870813 - Relates: #1901440 * Sun Oct 25 2020 Petr Stodulka - 0.12.0-2 - Add actors to migrate Quagga to FRR - Fixes issues with interrupted leapp during the FirstBoot phase when reload of daemons is required Resolves: #1883218 - Relates: #1887912 * Wed Oct 21 2020 Dominik Rehak - 0.12.0-1 - Rebase to v0.12.0 - Enable upgrades on AWS and Azure - Check usage of removed/deprecated leapp env vars - Do not inhibit if winbind or wins is used in nsswitch.conf (as the issue is fixed in RHEL 8.2) - Do not remove java from the upgrade transaction - Fix handling of events with same initial releases and input packages - Fix mkhomedir issues after authselect conversion - Fix python macro error in spec file - Fix storing of logs from initramfs - Handle migration of authselect and PAM - Improve remediation instructions for HA clusters - Make sure "default.target.wants" dir exists - Resolves: #1887912 * Tue Sep 15 2020 Dominik Rehak - 0.11.0-4 - Remove java from the upgrade transaction Relates: #1860375 * Tue Sep 08 2020 Petr Stodulka - 0.11.0-3 - Set authselect and PAM actors experimental again Relates: #1860375 * Wed Sep 02 2020 Petr Stodulka - 0.11.0-2 - Make possible upgrade with the java-11-openjdk-headless package - Fix check of local repositories when metalink or mirrorlist is specified - Relates: #1860375 * Tue Aug 18 2020 Michal Bocek - 0.11.0-1 - Rebase to v0.11.0 - Do not crash when the /root/temp_leapp_py3 directory exists (when upgrade is executed multiple times) Relates: #1858479 - Do not detect grub device on the s390x architecture (ZIPL is used there) - Consider the katello rpm being signed by Red Hat - Omit printing grub binary data on terminal which could break terminal output - Provide just a single remedition command in the pre-upgrade report to be compatible with Satellite and Cockpit - Search repository files only in directories used by DNF - Change supported upgrade paths: RHEL-ALT 7.6 -> 8.2; RHEL 7.9 -> 8.2 - Check whether PAM modules, that are not present on RHEL 8, are used - Inhibit upgrade when local repositories (referred by file://) are detected - Introduce actors for migration of Authconfig to Authselect - Support for an in-place upgrade for z15 machines - s390x architecture - Update list of removed drivers on RHEL 8 - Resolves: #1860375 * Mon Apr 20 2020 Michal Bocek - 0.10.0-2 - Fixed broken cli output due to printing binary data - Relates: #1821710 * Thu Apr 16 2020 Petr Stodulka - 0.10.0-1 - Rebase to v0.10.0 - Changed upgrade paths: RHEL-ALT 7.6 -> 8.2; RHEL 7.8 -> 8.2 - Add initial multipath support (it doesn't handle all cases yet) - Use the new framework mechanism to inhibit the upgrade without reporting errors - Support the upgrade without the use of subscription-manager - Add dependency on leapp-framework - Check if the latest installed kernel is booted before the upgrade - Check that the system satisfies minimum memory requirements for the upgrade (#413) - Do not mount pseudo and unsupposrted FS to overlayfs (e.g. proc) - Drop leapp sos plugin (it's part of the sos rpm in RHEL 7.7+) - Evaluate PES events transitively to create correct data for the upgrade transaction - Fix checking of kernel drivers (#400) - Fix failures caused by local rpms added into the upgrade transaction - Fix getting mount information with mountpoints with spaces in the path - Fix handling of XFS without ftype for every such mounted FS - Fix issue with random booting into old RHEL 7 kernel after the upgrade - Fix issues on systems with statically mapped IPs in /etc/hosts - Fix issues with device mapper and udev in a container - Fix issues with failing rpm transaction calculation because of duplicate instructions for dnf - Fix various issues related to RHSM (including rhbz rhbz#1702691) - Fix yum repository scan in case of repositories with invalid URL - Improved report related to KDE/GNOME - Inhibit the upgrade for ipa-server (#481) - Inhibit the upgrade if multiple kernel-devel rpms are installed - Inhibit the upgrade on FIPS systems - Inhibit the upgrade when links on root dir '/' are not absolute to save the world - Inhibit the upgrade when the raised dialogs are missing answers (#589) - Introduce new ways of using custom repositories during the transaction - Make report messages more explicit about Dialogs (#600) - Migrate SpamAssassin - Migrate cups-filters - Migrate sane-backend - Modify vim configuration to keep the original behaviour - Parse correctly kernel cmdline inside the initrd (#383) (fixes various issues on s390x) - Print warnings instead of a hard failure when expected rpms cannot be found (e.g. python3-nss inside an rpm module) (#405) - Remove java11-openjdk-headless during the upgrade (rhbz#1820172) - Report changes in wireshark - The name and baseurl field in the CustomTargetRepository message are optional now - Throw a nice error when invalid locale is set (#430) - Various texts are improved based on the feedback - Resolves: #1821710 * Tue Nov 5 2019 Petr Stodulka - 0.9.0-5 - Do not use efibootmgr on non-efi systems Resolves: #1768904 * Mon Nov 4 2019 Petr Stodulka - 0.9.0-4 - Inhibit upgrade on EFI systems when efibootmgr is not installed Relates: #1753580 * Fri Nov 1 2019 Petr Stodulka - 0.9.0-3 - Inhibit upgrade on s390x machines with rd.znet in kernel cmdline to prevent troubles with networking (temporary) - Fix issues with failing rpm transaction calculation because of duplicates - Fix boot order on EFI systems Relates: #1753580 * Wed Oct 30 2019 Michal Bocek - 0.9.0-2 - Fixed some remediation instructions - Not trying to make an overlay over /boot/efi Relates: #1753580 * Thu Oct 24 2019 Petr Stodulka - 0.9.0-1 - Rebase to v0.9.0 - Added dependency on policycoreutils-python - Change upgrade path from RHEL(-ALT) 7.6 (EUS) to RHEL 8.1 - Changed the title of the upgrade boot entry to be valid for ZIPL - Check NSS configuration for use of wins or winbind - Check SSSD configuration - Check use of removed PAM modules - Check whether CPU on s390x is supported on RHEL 8 - Do not remove packages which shall be installed/kept on target system - Do not waste time by downloading of RPMs if upgrade has been inhibited already - Enable and make possible upgrades on all architectures - Enable repositories used for upgrade on the upgraded system - Fix adding of local rpms into the upgrade transaction - Fix check of active kernel modules - Fix handling of XFS filesystems with ftype=0 (rhbz#1746956) - Fix ntp migration: extract configs into the right directories - Fix traceback when RHSM is skipped - Handle possible error when setting release on upgraded system - Handle systems with EFI boot - Handle upgrade on systems with multiple partitions - Improve message on failed subscription-manager and dnf - Improved the reporting capability - Migrate SELinux customizations - No size limit on leapp.db in sosreport - Process new PES data format + process PES events in order of releases - Require the biosdevname dracut module on the intel architecture only - Retry some actions of subscription-manager on failure to reduce number of issues - Update the list of packages supposed to be removed during the upgrade - Upgrade only packages signed by Red Hat Resolves: #1753580 * Thu Jul 25 2019 Petr Stodulka - 0.8.1-2 - attempt to (un)set rhsm release several times to omit possible problems with server Relates: #1723115 * Wed Jul 24 2019 Petr Stodulka - 0.8.1-1 - Rebase to v0.8.1 Relates: #1723115 - enable installation of RPMs that were previously blacklisted due to problems with rich dependencies * Mon Jul 15 2019 Petr Stodulka - 0.8.0-1 - Rebase to v0.8.0 Relates: #1723115 - improve handling of RPM transaction to be able to process RPMs with rich dependencies - add missing dependency on python-udev & python3-udev - fix processing of last phase during the first boot of the upgraded system - set RHSM target release after the upgrade to expected version of the system - enable the CRB repository when the Optional repository is enabled - check tcp wrappers - check OpenSSH configuration - check and handle vftpd configuration - check kernel drivers - improve checks related to subscriptions - improve parsing of /etc/fstab - ensure the new target kernel is default boot entry - handle better cases when no target repositories has been found - migrate NTP to chronyd - migrate brltty configuration - migrate sendmail - avoid removal of /etc/localtime and /etc/resolv.conf during the upgrade - add informational actors for: acpid, chrony, dosfstools, grep, irssi, postfix, powertop * Sun Jun 23 2019 Vojtech Sokol - 0.7.0-6 - Rebuild Resolves: #1723115 * Fri Apr 26 2019 Petr Stodulka - 0.7.0-5 - build rhel8 initrd on the fly during the upgrade process - do not bundle initrd and vmlinuz file in the rpm Relates: #1636481 * Fri Apr 26 2019 Petr Stodulka - 0.7.0-4 - add python2-docs and python3-docs to the list of rpms for removal as currently it causes troubles with RPM transaction Relates: #1636481 * Fri Apr 26 2019 Petr Stodulka - 0.7.0-3 - set selinux into the permissive mode on RHEL 8 when enforcing was set originally - add python-docs and squid rpms to the list of rpms for removal Relates: #1636481 * Wed Apr 17 2019 Petr Stodulka - 0.7.0-2 - fix inhibition when ethX network interface exists and more additional NIC exist as well Relates: #1636481 * Wed Apr 17 2019 Petr Stodulka - 0.7.0-1 - Rebase to v0.7.0 Relates: #1636481 - new dependencies: python3, python*-pyudev - upgrade process is interrupted after RPMUpgradePhase and resumed with Python3 - upgrade of NetworkManager is fixed - upgrade of firewalld is handled - name changes of network interfaces are handled - HTB repositories used for upgrades are replaced with the ones used for GA - tpm2-abrmd and all packages that depend on redhat-rpm-config are removed during upgrade - handling of the upgrade RPM transaction is improved - sync command is used in initrd to avoid issues related to cache - networking naming changes are handled - disable udev's persistent network interface naming scheme when the only NIC is eth0 - inhibit upgrade when ethX is detected and more NICs exist - check whether all target upgrade repositories are available - output of dnf tool is always showed during the upgrade - all logs and reports are stored in /var/log/leapp/ directory * Tue Apr 09 2019 Vojtech Sokol - 0.6.0-4 - Remove wrong license for sos subpackage Relates: #1636481 * Mon Apr 08 2019 Vojtech Sokol - 0.6.0-3 - Fix patch Relates: #1636481 * Mon Apr 08 2019 Vojtech Sokol - 0.6.0-2 - Fix specfile Relates: #1636481 * Mon Apr 08 2019 Vojtech Sokol - 0.6.0-1 - Rebase to v0.6.0 Relates: #1636481 - Change license to Apache 2.0 - leapp-repository-data subpackage is removed (it included data files) - data files are required to be delivered by user manually now - udev database is accessible during the upgrade - downtime of some machines is significantly reduced - sos plugin is introduced for collecting data needed for debugging - redhat-rpm-config package is removed during upgrade - system is checked for NFS filesystems usage and upgrade is inhibited when detected - /boot is checked for sufficient free space - upgrade is not inhibited any more when Logic SCSI Controllers are present - repositories used to upgrade the system are based on provided data files - specific syntax errors in grub configuration are handled when detected - SCTP is handled during the upgrade - migration of yum is handled (yum is available after the upgrade) - upgrade of NetworkManager is handled - upgrades with XFS filesystems without ftype is handled better - new reporting functionality is introduced and used - new dependencies: python2-jinja2, pciutils, sos - new directory /etc/leapp/files for data files is introduced - python files are precompiled to avoid left over pyc files * Thu Jan 24 2019 Petr Stodulka - 0.5.0-1 - Rebase to v0.5.0 Relates: #1636481 - Require DNF v4+ and Leapp framework v0.5.0 - Improved handling of RPM transaction using own DNF plugin and PES data - Models have been refactored to use new format supported by framework - Handle transaction preparation when release is set through RHSM - Fix failing overlayfs unmounting - Reduce the IPUWorkflo workflow - Include all required directories inside RPMs - Handle repositories using metalink and mirrorlist - Handle better installation of local RPMs - Move system dependencies into the RPM metapackage - Satisfy leapp and leapp-repository RPM dependencies during the upgrade * Thu Jan 03 2019 Petr Stodulka - 0.4.0-4 - Activate LVM LVs during upgrade - Resolve file conflict of python-inotify during the RPM transaction Relates: #1636481 * Thu Nov 29 2018 Petr Stodulka - 0.4.0-3 - Add empty empty events for leapp-repository-data. - Requiring now DNF 2.7.5-19 or higher Relates: #1636481 * Wed Nov 21 2018 Petr Stodulka - 0.4.0-2 - update leapp-repository-data source Relates: #1636481 * Wed Nov 21 2018 Petr Stodulka - 0.4.0-1 - Rebase to 0.4.0 - change hierarchy of repositories - scan RHEL system for custom and 3rd-party packages - improve error messages Relates: #1636481 * Fri Nov 09 2018 Petr Stodulka - 0.3.1-1 - Rebase to 0.3.1 - move data to separate subpackage Relates: #1636481 * Wed Nov 07 2018 Petr Stodulka - 0.3-1 - Initial RPM Resolves: #1636481