Compare commits

...

No commits in common. "c8" and "c9s" have entirely different histories.
c8 ... c9s

73 changed files with 619 additions and 1285 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

8
.gitignore vendored
View File

@ -1,2 +1,6 @@
SOURCES/deps-pkgs-13.tar.gz /deps-pkgs-10.tar.gz
SOURCES/leapp-repository-0.22.0.tar.gz /leapp-repository-0.21.0.tar.gz
/deps-pkgs-11.tar.gz
/deps-pkgs-12.tar.gz
/deps-pkgs-13.tar.gz
/leapp-repository-0.22.0.tar.gz

View File

@ -1,2 +0,0 @@
3590b33b4a79ebe62f5cfa0eeca7efb41d526498 SOURCES/deps-pkgs-13.tar.gz
e23b32573b375337b079dd7a0dc07e9232851b1c SOURCES/leapp-repository-0.22.0.tar.gz

File diff suppressed because it is too large Load Diff

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

535
leapp-repository.spec Normal file
View File

@ -0,0 +1,535 @@
%global leapp_datadir %{_datadir}/leapp-repository
%global repositorydir %{leapp_datadir}/repositories
%global custom_repositorydir %{leapp_datadir}/custom-repositories
%define leapp_repo_deps 10
%if 0%{?rhel} == 7
%define leapp_python_sitelib %{python2_sitelib}
%define lpr_name leapp-upgrade-el7toel8
%define repo_shortname el7toel8
%define next_major_ver 8
%else
%define leapp_python_sitelib %{python3_sitelib}
%if 0%{?rhel} == 8
%define lpr_name leapp-upgrade-el8toel9
%define repo_shortname el8toel9
%define next_major_ver 9
%else
%define lpr_name leapp-upgrade-el9toel10
%define repo_shortname el9toel10
%define next_major_ver 10
%endif
# 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.22.0
Release: 4%{?dist}
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-13.tar.gz
# NOTE: Our packages must be noarch. Do no drop this in any way.
BuildArch: noarch
### PATCHES HERE
# Patch0001: filename.patch
Patch0001: 0001-Use-leapp.libraries.common.rpms.get_leapp_packages-w.patch
Patch0002: 0002-fix-spell-AllowZoneDrifting-correctly.patch
Patch0003: 0003-cli-upgrade-allow-users-to-enable-entire-experimenta.patch
Patch0004: 0004-feat-livemode-exclude-DNF-cache-from-the-created-squ.patch
Patch0005: 0005-livemode-cfg-add-declaration-of-livemode-config-fiel.patch
Patch0006: 0006-livemode-cfg-use-framework-s-configurability-instead.patch
Patch0007: 0007-fix-livemode-do-not-stop-if-dbus-already-appears-to-.patch
Patch0008: 0008-feat-livemode-remove-the-use-of-LEAPP_DEVEL_ENABLE_L.patch
Patch0009: 0009-spec-require-leapp-framework-6.1-for-default-CLI-val.patch
Patch0010: 0010-docs-configuring-ipu-add-experimental-features-secti.patch
Patch0011: 0011-docs-livemode-add-LiveMode-documentation.patch
Patch0012: 0012-DOC-rename-configuring-ipu.md-to-envars.md.patch
Patch0013: 0013-fix-userspacegen-add-exeception-handling-to-swapping.patch
Patch0014: 0014-selinux-do-not-run-semodule-when-no-modules-are-sele.patch
Patch0015: 0015-feat-ipuconfig-provide-info-about-supported-upgrade-.patch
Patch0016: 0016-feat-upgrade_paths-include-information-about-distro-.patch
Patch0017: 0017-cleanup-ipupaths-remove-IPUPaths-message.patch
Patch0018: 0018-libs-version-use-supported_upgrade_paths.patch
Patch0019: 0019-Remove-7to8-CI-tests.patch
Patch0020: 0020-Fix-lint-in-Makefile-for-docs.patch
Patch0021: 0021-Improve-report-of-removed-kernel-drivers.patch
Patch0022: 0022-Improve-report-of-unsupported-network-configuration.patch
Patch0023: 0023-DOCS-add-missing-envar-LEAPP_OVL_IMG_FS_EXT4.patch
Patch0024: 0024-data-update-data-files-stream-3.3-1358.patch
Patch0025: 0025-Add-RHEL-10.1-and-9.7-product-certificates.patch
Patch0026: 0026-Add-handling-of-shorten-PCI-ID-and-lowercases.patch
Patch0027: 0027-Prevent-device-list-from-containing-incorrent-conten.patch
Patch0028: 0028-feat-command_utils-allow-missing-minor-major-version.patch
Patch0029: 0029-refactor-versions-config-rename-_simple_versions.patch
Patch0030: 0030-fix-lib-version-broken-_validate_version-on-RHEL-10.patch
Patch0031: 0031-upgrade_paths-add-information-about-centos-virtual-v.patch
Patch0032: 0032-models-ipuconfig-extend-Version-class-to-contain-vir.patch
Patch0033: 0033-libs-common-version-autocorrect-centos-versions-into.patch
Patch0034: 0034-Introduce-distro-based-rpm-gpg-trusted-directory.patch
Patch0035: 0035-Add-official-Centos-Stream-9-and-10-RPM-GPG-keys.patch
Patch0036: 0036-Deprecate-is_rhel_alt-from-share-libraries.patch
Patch0037: 0037-data-update-data-files-stream-3.3-1380.patch
# CTC1 Candidate2
Patch0038: 0038-Makefile-Non-zero-exit-code-on-failed-tests-in-conta.patch
Patch0039: 0039-CI-Unit-tests-Rename-tasks-tests-executions.patch
Patch0040: 0040-Fix-parsing-of-the-kernel-cmdline.patch
Patch0041: 0041-repomap-Process-repositories-based-on-distro.patch
Patch0042: 0042-Update-the-upgrade-data-files-stream-4.0.patch
Patch0043: 0043-unit-tests-suppress-deprecation-warning-for-is_rhel_.patch
# CTC2 Candidate1
Patch0044: 0044-Remove-obsolete-workflows.patch
Patch0045: 0045-README-IRC-GitHub-discussions.patch
Patch0046: 0046-Resolve-boot-issues-in-hybrid-azure-during-upgrades-.patch
Patch0047: 0047-Restructure-hybrid-image-detection.patch
Patch0048: 0048-Point-to-leapp-repository-contribution-guidelines.patch
Patch0049: 0049-Read-the-DNF-config-by-module.py-library.patch
Patch0050: 0050-Disable-localpkg_gpgcheck-parameter-from-plugin-data.patch
Patch0051: 0051-PR-welcome-msg-update-link-to-contrib-guidelines-139.patch
Patch0052: 0052-Fix-skip-checking-ownership-of-files-in-.-directory-.patch
Patch0053: 0053-fixup-Fix-skip-checking-ownership-of-files-in-.-dire.patch
Patch0054: 0054-Add-test.patch
Patch0055: 0055-fixup-Add-test.patch
Patch0056: 0056-Add-test-for-non-recursive.patch
Patch0057: 0057-el8to9-actors-mysql-Add-MySQL-actor-with-recommendat.patch
Patch0058: 0058-Fix-target-version-format-checks.patch
# do not apply this patch, due to error in centpkg tool
# it doesn't contain any functional change
#Patch0059: 0059-Drop-el7toel8-leapp-repository.patch
Patch0060: 0060-libs-rhui-add-rhel10-targets-for-upgrades.patch
Patch0061: 0061-userspacegen-do-not-repolist-source-debug-repos.patch
Patch0062: 0062-actor-checkrhui-do-not-boostrap-client-on-AWS-9-10.patch
Patch0063: 0063-add-azure-aws-alibaba-client-repositories-to-repomap.patch
Patch0064: 0064-rhui-azure-add-target-client-s-GPG-key-to-mandatory-.patch
Patch0065: 0065-feat-alibaba-support-rhel9-upgrade-to-rhel10-using-r.patch
Patch0066: 0066-Inhibit-upgrade-on-systems-with-cgroupsv1-on-9to10-1.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+ (and newer) ############
BuildRequires: python3-devel
Requires: python3-leapp
# NOTE(pstodulk): else if / elif has been implemented quite late. as we still
# want to build on RHEL 7 too, go in the old way. Ref:
# https://github.com/rpm-software-management/rpm/issues/311
%if 0%{?rhel} == 8
######### RHEL 8 ############
# Same as the conflict above - we want to be sure our packages are untouched
# during the whole IPU process
Conflicts: leapp-upgrade-el7toel8
Conflicts: leapp-upgrade-el9toel10
%else
######### RHEL 9 ############
Conflicts: leapp-upgrade-el8toel9
%endif
%endif
# IMPORTANT: every time 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 >= 6.1
# Since we provide sub-commands for the leapp utility, we expect the leapp
# tool to be installed as well.
Requires: leapp
# Used to determine RHEL version of a given target RHEL installation image -
# uncompressing redhat-release package from the ISO.
Requires: cpio
# 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 excluding 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: every time 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
# required to be able to format disk images with XFS file systems (default)
Requires: xfsprogs
# required to be able to format disk images with Ext4 file systems
# NOTE: this is not happening by default, but we can expact that many customers
# will want to / need to do this - especially on RHEL 7 now. Adding this deps
# as the best trade-off to resolve this problem.
Requires: e2fsprogs
%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
# Required to scan NetworkManagerConnection (e.g. to recognize secrets)
# NM is requested to be used on RHEL 8+ systems
Requires: NetworkManager-libnm
Requires: python3-gobject-base
%endif
%if 0%{?rhel} && 0%{?rhel} == 9
############# RHEL 9 dependencies (when the source system is RHEL 9) ##########
# Required to convert pam_userdb database from BerkeleyDB to GDBM
Requires: libdb-utils
%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
# %%patch -P 0001 -p1
%patch -P 0001 -p1
%patch -P 0002 -p1
%patch -P 0003 -p1
%patch -P 0004 -p1
%patch -P 0005 -p1
%patch -P 0006 -p1
%patch -P 0007 -p1
%patch -P 0008 -p1
%patch -P 0009 -p1
%patch -P 0010 -p1
%patch -P 0011 -p1
%patch -P 0012 -p1
%patch -P 0013 -p1
%patch -P 0014 -p1
%patch -P 0015 -p1
%patch -P 0016 -p1
%patch -P 0017 -p1
%patch -P 0018 -p1
%patch -P 0019 -p1
%patch -P 0020 -p1
%patch -P 0021 -p1
%patch -P 0022 -p1
%patch -P 0023 -p1
%patch -P 0024 -p1
%patch -P 0025 -p1
%patch -P 0026 -p1
%patch -P 0027 -p1
%patch -P 0028 -p1
%patch -P 0029 -p1
%patch -P 0030 -p1
%patch -P 0031 -p1
%patch -P 0032 -p1
%patch -P 0033 -p1
%patch -P 0034 -p1
%patch -P 0035 -p1
%patch -P 0036 -p1
%patch -P 0037 -p1
%patch -P 0038 -p1
%patch -P 0039 -p1
%patch -P 0040 -p1
%patch -P 0041 -p1
%patch -P 0042 -p1
%patch -P 0043 -p1
%patch -P 0044 -p1
%patch -P 0045 -p1
%patch -P 0046 -p1
%patch -P 0047 -p1
%patch -P 0048 -p1
%patch -P 0049 -p1
%patch -P 0050 -p1
%patch -P 0051 -p1
%patch -P 0052 -p1
%patch -P 0053 -p1
%patch -P 0054 -p1
%patch -P 0055 -p1
%patch -P 0056 -p1
%patch -P 0057 -p1
%patch -P 0058 -p1
%patch -P 0060 -p1
%patch -P 0061 -p1
%patch -P 0062 -p1
%patch -P 0063 -p1
%patch -P 0064 -p1
%patch -P 0065 -p1
%patch -P 0066 -p1
%build
cp -a leapp*deps*el%{next_major_ver}.noarch.rpm repos/system_upgrade/%{repo_shortname}/files/bundled-rpms/
%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/
# NOTE(pstodulk): drop transaction dir and its content if replaced by config files before RHEL 10
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 -m 0644 etc/leapp/files/* %{buildroot}%{_sysconfdir}/leapp/files
# uncomment to install existing configs if any exists
#install -m 0644 etc/leapp/actor_conf.d/* %%{buildroot}%%{_sysconfdir}/leapp/actor_conf.d
# 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
for i in el7toel8 el8toel9 el9toel10;
do
[ "$i" != "%{repo_shortname}" ] && rm -rf %{buildroot}%{repositorydir}/system_upgrade/$i
done
# 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
find %{buildroot} -name "*.py.orig" -delete
# .gitkeep file is used to have a directory in the repo. but we do not want these
# files in the resulting RPM
find %{buildroot} -name .gitkeep -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
%config %{_sysconfdir}/leapp/files/*
# uncomment to package installed configs
#%%config %%{_sysconfdir}/leapp/actor_conf.d/*
%{_sysconfdir}/leapp/repos.d/*
%{_sysconfdir}/leapp/transaction/*
%{repositorydir}/*
%{leapp_python_sitelib}/leapp/cli/commands/*
%files -n %{lpr_name}-deps
# no files here
%changelog
* Thu Jul 17 2025 Karolina Kula <kkula@redhat.com> - 0.22.0-4
- Load DNF configuration correctly when using DNF libraries
- Disable localpkg_gpgcheck during the upgrade if set to allow installation of bundled leapp and leapp-repository deps packages
- Enable upgrades on systems using RHUI on AWS and Azure
- Inhibit the upgrade if cgroups v1 are enabled on the system
- The HybridImage model has been replaced by ConvertGrubenvTask
- Check the input format of the target version properly
- Resolves: RHEL-64910, RHEL-64911, RHEL-81212
* Thu Jun 05 2025 Karolina Kula <kkula@redhat.com> - 0.22.0-3
- Fix parsing of the kernel cmdline
- Require leapp data with provided_data_streams 4.0+
- Respect the release_id of the OS when processing DNF repositories to apply correct mapping for CentOS Stream
- Resolves: RHEL-80336
* Wed May 14 2025 Petr Stodulka <pstodulk@redhat.com> - 0.22.0-2
- Require leapp-framework >= 6.1
- Simplified use of the LiveMode experimental feature with additional enhancements
- Ensure the leapp-upgrade-el9toel10 RPM is not touched during the upgrade transaction
- Create proper error message when swap of RHUI clients fails
- Fix the check of deprecated PCI devices and drivers
- Add RHEL 10.1 product certificates
- Gracefully handle CentOS OS versioning style
- Introduced the --enable-experimental-feature to simplify use of experimental features
- Manage RPM GPG keys during the upgrade respecting used linux distributions
- Prevent a crach during post-upgrade phases when no custom SELinux modules needs to be migrated
- Update leapp upgrade data files
- Minor fixes in reports
- Resolves: RHEL-49402, RHEL-72544, RHEL-77175, RHEL-80334, RHEL-80335, RHEL-80336, RHEL-80550, RHEL-86689
* Fri Feb 14 2025 Petr Stodulka <pstodulk@redhat.com> - 0.22.0-1
- Rebase to new upstream 0.22.0
- Minor updates in generated reports
- Cover upgrades for MySQL and PostgreSQL databases
- Detect OpenSSL engines configured in /etc/pki/tls/openssl.cnf
- Detect deprecated network-scripts (ifcfg) files
- Detect whether subscribed systems are using SCA
- Inform user about Libdb removal if present
- Check and handle upgrades with custom crypto policies
- Update checks for SAP HANA
- Resolves: RHEL-57043, RHEL-35618, RHEL-36661, RHEL-62689, RHEL-68309, RHEL-69831, RHEL-77169, RHEL-78396
* Wed Jan 29 2025 Petr Stodulka <pstodulk@redhat.com> - 0.21.0-6
- Detect XFS file systems with problematic parameters
- Raise an inhibitor if unsupported target version supplied instead of error
- Prevent a possible crash with LiveMode when adding the upgrade boot entry on systems with LVM
- Resolves: RHEL-57043, RHEL-52309, RHEL-60034
* Fri Jan 17 2025 Petr Stodulka <pstodulk@redhat.com> - 0.21.0-5
- Obsolete RHEL9 GPG key signed with SHA1
- Activate LVM VGs with `--sysinit` option to correct the use in the upgrade initramfs
- Fix output of commands executed inside systemd-nspawn containers
- Fix pes events scanner crashing when there are duplicate packages in the received instructions
- Fix pes events scanner not respecting users transaction configuration
- Fix remediation instructions for deprecated NM configuration
- Fix storage scanner crashing when command outputs contain colon character
- Minor improvements in preupgrade reports
- Resolves: RHEL-57043, RHEL-31428, RHEL-33373, RHEL-69829, RHEL-71517
* Mon Nov 18 2024 Matej Matuska <mmatuska@redhat.com> - 0.21.0-4
- Require leapp-framework 6.0+
- Update leapp-deps package to satisfy leapp-framework-dependencies 6
- Add dependency on libdb-utils
- Enable upgrade for systems with LUKS bound to Clevis with TPM 2.0 token
- Adjust resource limitations for leapp to be able to perform the upgrade
- Cap max size of the sparse files to 1TiB for storage with large amount of free space
- Check that detected Intel CPU microarchitecture is supported on target system
- Fix the report when handling broken parsing of kernel cmdline
- Generate proper error message instead of ModelViolationError when parsing invalid repository definition
- Handle default kernel cmdline when multiple boot entries for the default kernel are defined
- Migrate Ruby IRB during the upgrade
- Migrate pam_userdb backend during the upgrade
- Skip checking of (PKI) `directory-hash` dir to speedup the upgrade process and clean logs
- Update leapp upgrade data files
- Resolves: RHEL-57043
* Thu Sep 19 2024 Petr Stodulka <pstodulk@redhat.com> - 0.21.0-3
- Rebuild to apply changes for gating
- Resolves: RHEL-57043
* Mon Aug 19 2024 Petr Stodulka <pstodulk@redhat.com> - 0.21.0-2
- Initial build for EL 9
- Resolves: RHEL-57043

68
plans/tier0.fmf Normal file
View File

@ -0,0 +1,68 @@
# These test plans were created manually based on information taken from
# https://gitlab.cee.redhat.com/oamg/leapp-tests/-/blob/main/config.yaml. The tmt definitions can be simplified, once
# https://github.com/teemtee/tmt/issues/1770 is implemented.
summary: Internal Tier0 tests
environment:
SOURCE_RELEASE: '9.7'
TARGET_RELEASE: '10.1'
LEAPP_UNSUPPORTED: '1'
LEAPP_DEVEL_SKIP_CHECK_OS_RELEASE: '1'
context:
distro: rhel-9.7
distro_target: rhel-10.1
adjust:
enabled: false
when: distro == centos-stream-9
/customrepos_upgrade_happy_path:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/destructive/customrepos/basic_upgrade/upgrade_happy_path
ref: main
/oamg3661_two_reboots:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/destructive/customrepos/oamg/oamg3661_two_reboots
ref: main
/oamg9299_devtmpfs_in_fstab:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/destructive/customrepos/oamg/oamg9299_devtmpfs_in_fstab
ref: main
/rhsm_upgrade_happy_path:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/destructive/rhsm/upgrade_happy_path
ref: main
/customrepos_tier0only:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/nondestructive/customrepos/tier0only
ref: main
/none_tier0only:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/nondestructive/none/tier0only
ref: main
/rhsm_tier0only:
plan:
import:
url: https://gitlab.cee.redhat.com/oamg/leapp-tests
name: /plans/nondestructive/rhsm/tier0only
ref: main

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (deps-pkgs-13.tar.gz) = 6892fc9ff2699fbdbc7d42e19944e0effc5b6e587deb0cd27d8285b8c3a9b88a09c0221214728ad7ed7156dbd8972331d5dc65c7ce80177d2f7f32d62167e67b
SHA512 (leapp-repository-0.22.0.tar.gz) = 736f73a86697ba8c7e433040a79d2ef426927a12bc1611fa9b7d8631a9d29a0a60c241437a2b75429c374c2f9f87072dc7f6c5dc70d070a250be6b6a102975fe