Skip to content

Releases: oamg/leapp-repository

Release 0.11.0

18 Aug 13:49
Compare
Choose a tag to compare

Upgrade handling

Fixes

  • Do not crash when the /root/temp_leapp_py3 directory exists (when upgrade is executed multiple times) (#534, rhbz#1858479)
  • Do not detect grub device on the s390x architecture (ZIPL is used there) (#515)
  • Consider the katello rpm being signed by Red Hat (#532)
  • Omit printing grub binary data on terminal which could break terminal output (#491)
  • Provide just a single remedition command in the pre-upgrade report to be compatible with Satellite and Cockpit (#540)
  • Search repository files only in directories used by DNF (#525)

Enhancements

  • Changed supported upgrade paths: RHEL-ALT 7.6 -> 8.2; RHEL 7.9 -> 8.2 (#509)
  • Check whether PAM modules, that are not present on RHEL 8, are used (#533)
  • Inhibit upgrade when local repositories (referred by file://) are detected (#531)
  • Introduced actors for migration of Authconfig to Authselect (#533)
  • Support for an in-place upgrade for z15 machines - s390x architecture (#537)
  • Updated list of removed drivers on RHEL 8 (#530)

Additional changes interesting for devels

  • Actor's private libraries and test files have been renamed following the new contribution guidelines (#500)
  • Introduced the CurrentActorMocked class in the testutils library to simplify writing unit tests (#489)
  • Significant improvement of test execution performance (#500, #506)
  • Updated production certificates for testing upgrades to RHEL 8.3 (Beta | HTB) (#509)

Related leapp framework release: https://github.com/oamg/leapp/releases/tag/v0.11.0

Release 0.10.0

16 Apr 11:23
Compare
Choose a tag to compare

Packaging

  • Add dependency on python2-leapp and leapp-framework
  • Add python-requests as dependency (#407)
  • Drop leapp sos plugin (it's part of the sos rpm in RHEL 7.7+)
  • Remove dependency on Jinja2 related packages (#407)

Upgrade handling

Fixes

  • Do not mount pseudo and unsupposrted FS to overlayfs (e.g. proc)
  • Evaluate PES events transitively to create correct data for the upgrade transaction
  • Fix boot order on EFI systems
  • 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 (e.g. https://bugzilla.redhat.com/show_bug.cgi?id=1702691)
  • Fix yum repository scan in case of repositories with invalid URL
  • Inhibit the upgrade if multiple kernel-devel rpms are installed
  • Inhibit the upgrade when links on root dir '/' are not absolute to save the world
  • 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 (https://bugzilla.redhat.com/show_bug.cgi?id=1820172)
  • Throw a nice error when invalid locale is set (#430)

Enhancements

  • Add initial multipath support (it doesn't handle all cases yet)
  • Changed upgrade paths: RHEL-ALT 7.6 -> 8.2; RHEL 7.8 -> 8.2
  • Check if the latest installed kernel is booted before the upgrade
  • Check that the system satisfies minimum memory requirements for the upgrade (#413)
  • Dump grub2-editenv list output to help with issues related to the default kernel for the boot
  • Improved report related to KDE/GNOME
  • Inhibit the upgrade for ipa-server (#481)
  • Inhibit the upgrade on EFI systems when efibootmgr is not installed
  • Inhibit the upgrade on FIPS systems
  • 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
  • Report changes in wireshark
  • Support the upgrade without the use of subscription-manager
  • The name and baseurl field in the CustomTargetRepository message are optional now
  • Use the new framework mechanism to inhibit the upgrade without reporting errors
  • Various texts are improved based on the feedback

Additional changes interesting for devels

  • Add new functions in the config library to get envars related to leapp
  • Add support for testing with Beta and HTB systems
  • LEAPP_SKIP_CHECK_OS_RELEASE has been renamed to LEAPP_DEVEL_SKIP_CHECK_OS_RELEASE
  • Provide info about kernel cmdline via KernelCmdline message
  • The IPUConfig message contains information about booted kernel
  • The code is mostly Py2/Py3 compatible now and all PRs are tested on Py2 and Py3 compatibility (linters, unit-tests)
  • The config.version library contains is_rhel_alt() for detection of RHEL-ALT

Release 0.9.0

24 Oct 20:55
Compare
Choose a tag to compare

Packaging

  • Added dependency on policycoreutils-python-utils & policycoreutils-python

Upgrade handling

Fixes

  • Changed the title of the boot entry to be valid for ZIPL
  • Do not remove packages which shall be installed/kept on target system (#345)
  • Fix adding of local rpms into the upgrade transaction (#348)
  • Fix check of active kernel modules (#330)
  • Fix handling of XFS filesystems with ftype=0
  • Fix ntp migration: extract configs into the right directories
  • Fix traceback when RHSM is skipped
  • Handle possible error when setting release on upgraded system
  • No size limit on leapp.db in sosreport (#309)
  • Require the biosdevname dracut module on the intel architecture only
  • Retry some actions of subscription-manager on failure to reduce number of issues (#293)
  • Upgrade only packages signed by Red Hat

Enhancements

  • Add checkskipphase actor: skip to the report phase if inhibitor is produced to improve user experience and handle errors when we cannot work with target content
  • Change upgrade path from RHEL(-ALT) 7.6 (EUS) to RHEL 8.1
  • 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
  • Enable and make possible upgrades on all architectures
  • Enable repositories used for upgrade on the 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
  • Process new PES data format + process PES events in order of releases
  • Update the list of packages supposed to be removed during the upgrade
    handling of errors related to work with target content

Additional changes interesting for devels

  • Allow override the target version for devel purposes (#292)
  • CI/CD - master builds begins with release number 100 instead of 1
  • DEVEL_ONLY: Allow accepting unsigned pkgs
  • Add new "Target*" phases into IPUWorkflow for work with target content during preparation phase
  • Mass refactoring because of new reporting implementation

Release v0.8.1

24 Jul 12:53
Compare
Choose a tag to compare

Release v0.8.1

Upgrade handling

Fixes

  • Do not install python2-tools (#290)

Enhancements

  • Skip comments in repository mapping file
  • Clean "to_remove" transaction file to reflect resolved problems with rich dependencies

Release v0.8.0

15 Jul 16:21
Compare
Choose a tag to compare

Release 0.8.0

Packaging

  • fix invalid Source
  • fix date usage to be compatible with BSD
  • update the Makefile to be compatible with newer versions of COPR client

Upgrade handling

Fixes

  • Add dependencies into the leapp_resume service to not run the FirstBoot phase too early
  • Add missing dependency on python-udev & python3-udev
  • Correctly remove installed packages based on PES data (#177)
  • Do no traceback when dmi subsystem is not available
  • Dracut: Ensure the $NEWROOT is set and used default otherwise
  • Fix inhibition when ethX and additional network interfaces exist
  • Fix parsing of /etc/fstab to handle lines without optional fields and ensure
    the structure is right (#263)
  • Fix several issues when work with grubby
  • Fix tests in several actors
  • Force the new target kernel to be default boot entry (#274)
  • Get also firewall facts from ip6tables
  • Get correctly facts about selinux
  • Handle the case when no target repositories has been found
  • Ignore gpgcheck for upgrade repositories when we are instructed to set gpgcheck to False through the plugin config
  • Report the full real path to bundled rpms as sometimes the paths have been broken when used symlinks
  • Set additional rpms to remove explicitly during the upgrade as they break RPM transaction
  • Use rhel8 systemd-nspawn to avoid removing of /etc/localtime and /etc/resolv.conf during the upgrade

Enhancements

  • Add informational actors for: acpid, chrony, dosfstools, grep, irssi, postfix, powertop
  • Add new actors to check tcp wrappers
  • Added experimental actor to calculate the RPM upgrade transaction before the report phase (disabled by default now)
  • Check OpenSSH configuration
  • Check and handle vftpd configuration
  • Check kernel drivers
  • Check the system is subscribed and attached to an SKU to be able to get content for upgrade
  • Enable the CRB repository when the Optional repository is enabled
  • Enable upgrade only from RHEL 7.6
  • Generate initeram disk on the fly
  • Migrate NTP to chronyd
  • Migrate brltty configuration
  • Migrate sendmail
  • Notify user when Red Hat-signed RPMs are installed from unkown repositories
  • Set RHSM target release after the upgrade to expected version of the system
  • User RHEL 8 RPM stack to calculate the upgrade rpm transaction to be able to process rpms with rich dependencies

Additional changes interesting for devels

  • Add IPU Workflow configuration actor (#249)
  • Add the dnfplugin library with functions for work with DNF
  • Add the guards library with various guards usually used with the run function from stdlib
  • Add the mounting library implementing an isolation view layer when work with containers and mounting
  • Add the overlaygen library for genearating and cleaning of overlayfs
  • Add the rpms library to simplify lookup of installed rpms
  • Add the scanrhsm library for work with the subscription-manager tool
  • Add the utils library with several handy functions
  • Added shared config libraries for checking version of source and target system and architecture (minor version and architecture support)
  • Code of various actors has been refactored to meet with pylint and contribution guidelines
  • The dnfshellrpmupgrade actor has been renamed to dnfupgradetransaction
  • The prepareupgradetransaction has been replaced by several other actors

Release v0.7.0

17 Apr 09:07
Compare
Choose a tag to compare

Packaging

  • leapp-sos-plugin subpackage is licensed under the same license as the base package
  • new dependencies: python3, python*-pyudev

Upgrade handling

  • upgrade process is interrupted after RPMUpgradePhase and resumed with Python 3
  • upgrade of NetworkManager is fixed
  • name changes of network interfaces are handled
  • upgrade of firewalld is handled
  • leftover RHEL 7 packages are reported after the upgrade
  • 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

Logging and reporting

  • output of dnf tool is always shown during the upgrade
  • report with differences in Python between RHEL 7 and 8 is generated
  • all logs and reports are stored in /var/log/leapp/ directory

Release v0.6.0

08 Apr 11:42
Compare
Choose a tag to compare

Change license from AGPL 3.0 to Apache 2.0

Upgrade handling

  • 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
  • data files are required to be delivered by user manually
  • 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 upgrade)
  • upgrade of NetworkManager is handled
  • upgrades with XFS filesystems without ftype is handled better
  • new reporting functionality is introduced and used

Refactoring

  • run function from stdlib is used to execute external commands

Packaging

  • new dependencies: python2-jinja2, pciutils, sos
  • leapp-repository-data subpackage is removed (included data files)
  • new directory /etc/leapp/files for data files is introduced
  • python files are precompiled to avoid left over pyc files

Release v0.5.0

24 Jan 12:13
Compare
Choose a tag to compare
- 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

Release v0.4.0

21 Nov 08:43
Compare
Choose a tag to compare
  • change hierarchy of repositories
  • scan RHEL system for custom and 3rd-party packages
  • improve error messages