Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add kpatch actor #837

Merged
merged 1 commit into from
Feb 28, 2022
Merged

Add kpatch actor #837

merged 1 commit into from
Feb 28, 2022

Conversation

sm00th
Copy link
Contributor

@sm00th sm00th commented Feb 22, 2022

Add an actor that makes sure kpatch-dnf plugin and its config is carried
over to the container so that it installs appropriate kpatch-patch
during in-place-upgrade if needed.

@github-actions
Copy link

Thank you for contributing to the Leapp project!

Please note that every PR needs to comply with the Leapp Guidelines and must pass all tests in order to be mergable.
If you want to re-run tests or request review, you can use following commands as a comment:

  • leapp-ci build to run copr build and e2e tests in OAMG CI
  • review please to notify leapp developers of review request

Please open ticket in case you experience technical problem with the CI. (RH internal only)

Note: In case there are problems with tests not being triggered automatically on new PR/commit or pending for a long time, please consider rerunning the CI by commenting leapp-ci build (might require several comments). If the problem persists, contact leapp-infra.

Copy link
Member

@pirat89 pirat89 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sm00th on top of requested changes, move the actor under the kernel directory, so we have all kernel specific actors grouped (for easier orientation in number of existing actors)

repos/system_upgrade/common/actors/kpatch/actor.py Outdated Show resolved Hide resolved
repos/system_upgrade/common/actors/kpatch/actor.py Outdated Show resolved Hide resolved
repos/system_upgrade/common/actors/kpatch/actor.py Outdated Show resolved Hide resolved
repos/system_upgrade/common/actors/kpatch/actor.py Outdated Show resolved Hide resolved
@sm00th
Copy link
Contributor Author

sm00th commented Feb 22, 2022

v2: addressed comments and flake8 codestyle warnings.

@pirat89
Copy link
Member

pirat89 commented Feb 22, 2022

/rerun

@github-actions
Copy link

Copr build succeeded: https://copr.fedorainfracloud.org/coprs/build/3535554

@github-actions
Copy link

Testing Farm request for 7to8/3535554 regression testing has been created. Once finished, results should be available here.
Full pipeline log.

@github-actions
Copy link

Testing Farm request for 8to9/3535554 regression testing has been created. Once finished, results should be available here.
Full pipeline log.

Copy link
Member

@pirat89 pirat89 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sm00th It seems good to me. However, thinking about IPU 7 -> 8, is it valid? I mean, the official supported packager on RHEL 7 is YUM only (if I am right, dnf is in extras and does not have to be configured in any way). So I am curious, whether the CONFIG_PATH is correct in case of RHEL 7, or whether it is expected something like

SRC_CONFIG_PATH = CONFIG_PATH if rhel7 else "/etc/yum/plugins/kpatch.conf"

@pirat89
Copy link
Member

pirat89 commented Feb 22, 2022

@sm00th pls make linter happy. You can use make lint_fix to fix the import automatically.

@sm00th
Copy link
Contributor Author

sm00th commented Feb 22, 2022

@sm00th It seems good to me. However, thinking about IPU 7 -> 8, is it valid? I mean, the official supported packager on RHEL 7 is YUM only (if I am right, dnf is in extras and does not have to be configured in any way).

This is a great question, thanks for noticing. It turns out we do not provide kpatch-dnf on rhel7 so it looks like we don't need (can't) support 7to8. Will the right course of action be to move this actor from system_upgrade/common to system_upgrade/el8toel9/actors/kernel/checkkpatch/actor.py?

@pirat89
Copy link
Member

pirat89 commented Feb 23, 2022

@sm00th it depends. is the yum plugin configuration compatible with the dnf plugin configuration (at least, I can see that there is a plugin for YUM on RHEL 7)? Does exist a way how to transform the original configuration to the new one for dnf if needed? if so, the actor can be still updated to support both upgrade paths. In case you want to support just 8 -> 9, it should be moved to the path you wrote.

@sm00th
Copy link
Contributor Author

sm00th commented Feb 23, 2022

We don't have any yum alternative for the plugin so there is no config on rhel7. We will be only supporting 8to9 for now. O've already moved the actor in my last push.

pirat89
pirat89 previously approved these changes Feb 23, 2022
@leapp-bot
Copy link
Collaborator

This PR has been linked in issue tracker (#OAMG-6556).

Rezney
Rezney previously requested changes Feb 23, 2022
Copy link
Member

@Rezney Rezney left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2022-02-23 10:50:13.702 INFO     PID: 107934 leapp: Logging has been initialized
Process Process-101:
Traceback (most recent call last):
  File "/usr/lib64/python3.6/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib64/python3.6/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 30, in inspect_actor
    definition.load()
  File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 179, in load
    self._module = importer.find_module(name).load_module(name)
  File "<frozen importlib._bootstrap_external>", line 399, in _check_name_wrapper
  File "<frozen importlib._bootstrap_external>", line 823, in load_module
  File "<frozen importlib._bootstrap_external>", line 682, in load_module
  File "<frozen importlib._bootstrap>", line 265, in _load_module_shim
  File "<frozen importlib._bootstrap>", line 684, in _load
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/etc/leapp/repos.d/system_upgrade/el8toel9/actors/kernel/checkkpatch/actor.py", line 5, in <module>
    from leapp.tags import CheckPhaseTag, IPUWorkflowTag
ImportError: cannot import name 'CheckPhaseTag'

Error: Inspection of actor in actors/kernel/checkkpatch failed

Add an actor that makes sure kpatch-dnf plugin and its config is carried
over to the container so that it installs appropriate kpatch-patch
during in-place-upgrade if needed.

Signed-off-by: Artem Savkov <asavkov@redhat.com>
@sm00th
Copy link
Contributor Author

sm00th commented Feb 23, 2022

Sorry about that, fixed.

@pirat89
Copy link
Member

pirat89 commented Feb 23, 2022

@sm00th one another question, have you tested it? Is there any kpatch* rpm on RHEL 9 that is providing fixes for kernel package? I am asking because I would like to see that the upgrade will not be broken when any such package for specific kernel release will be built. Currently I haven't seen anything around kpatch on RHEL 9 what's checking the LEAPP_IPU_IN_PROGRESS envar to be sure the kernel is not patched during the IPU. Maybe we should sync today/tomorrow via video call.

@sm00th
Copy link
Contributor Author

sm00th commented Feb 23, 2022

@sm00th one another question, have you tested it?

I tested the original version with FactsPhase.

Is there any kpatch* rpm on RHEL 9 that is providing fixes for kernel package?

We don't have any real-life kpatch-patches for rhel9 yet, but we can create one for any kernel version for test purposes if/when needed.

I am asking because I would like to see that the upgrade will not be broken when any such package for specific kernel release will be built. Currently I haven't seen anything around kpatch on RHEL 9 what's checking the LEAPP_IPU_IN_PROGRESS envar to be sure the kernel is not patched during the IPU.

We just merged the change today, I'll send you a link internally.

Maybe we should sync today/tomorrow via video call.

We can discuss this over email.

@sm00th
Copy link
Contributor Author

sm00th commented Feb 28, 2022

Anything else I can help with to get it merged in time?

@pirat89
Copy link
Member

pirat89 commented Feb 28, 2022

@sm00th Hi, I wrote you an email ~ 1h ago :) yes, we will need builds and I will appreciate if we sync today for the testing (builds for el9 will help!!) I want to be sure it works before we merge it.

@fernflower
Copy link
Member

/rerun

@github-actions
Copy link

Copr build succeeded: https://copr.fedorainfracloud.org/coprs/build/3580468

@github-actions
Copy link

Testing Farm request for 7to8/3580468 regression testing has been created. Once finished, results should be available here.
Full pipeline log.

@github-actions
Copy link

Testing Farm request for 8to9/3580468 regression testing has been created. Once finished, results should be available here.
Full pipeline log.

@pirat89
Copy link
Member

pirat89 commented Feb 28, 2022

Tested with el8 where the active patching of kernel as enabled. Some snippets:

[snip]
-28 17:12:34.139 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:  kernel                                   x86_64  5.14.0-69.el9                            BASEOS                                                      561 k
2022-02-28 17:12:34.141 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:  kernel-core                              x86_64  5.14.0-69.el9                            BASEOS                                                       34 M
2022-02-28 17:12:34.142 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:  kernel-modules                           x86_64  5.14.0-69.el9                            BASEOS                                                       23 M
2022-02-28 17:12:34.144 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:  kpatch-patch-5_14_0-69                   x86_64  0-1.test.el9                             brew-task-repo-kpatch-patch-5_14_0-69-0-1.test.el9-scratch   12 k
2022-02-2

[snip]

2022-02-28 17:13:44.167 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Running scriptlet: subscription-manager-1.29.26-1.el9.x86_64         541/1313
2022-02-28 17:13:44.172 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Upgrading        : kpatch-dnf-0.4-2.el9.noarch                       542/1313
2022-02-28 17:13:44.177 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Running scriptlet: kpatch-dnf-0.4-2.el9.noarch                       542/1313
2022-02-28 17:13:44.179 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction: To enable automatic kpatch-patch subscription, run:
2022-02-28 17:13:44.180 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:    $ dnf kpatch auto
2022-02-28 17:13:44.181 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:
2022-02-28 17:13:44.196 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Upgrading        : kpatch-0.9.4-2.el9.noarch                         543/1313
2022-02-28 17:13:44.203 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Upgrading        : insights-client-3.1.7-1.el9.noarch                544/1313

[snip]

2022-02-28 17:13:45.216 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Installing       : kpatch-patch-5_14_0-69-0-1.test.el9.x86_64        580/1313
2022-02-28 17:13:45.304 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:   Running scriptlet: kpatch-patch-5_14_0-69-0-1.test.el9.x86_64        580/1313
2022-02-28 17:13:45.306 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction: installing /usr/lib/kpatch/5.14.0-69.el9.x86_64/kpatch-5_14_0-69-0-1_test.ko (5.14.0-69.el9.x86_64)
2022-02-28 17:13:45.308 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction: Created symlink /etc/systemd/system/multi-user.target.wants/kpatch.service → /usr/lib/systemd/system/kpatch.service.
2022-02-28 17:13:45.309 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction: chcon: can't apply partial context to unlabeled file '/var/lib/kpatch/5.14.0-69.el9.x86_64/kpatch-5_14_0-69-0-1_test.ko'
2022-02-28 17:13:45.310 DEBUG    PID: 724 leapp.workflow.RPMUpgrade.dnf_upgrade_transaction:
[snip]

dmesg from the boot to the upgraded system:

[    3.479271] systemd-journald[600]: Successfully sent stream file descriptor to service manager.
[    3.508258] kpatch_5_14_0_69_0_1_test: loading out-of-tree module taints kernel.
[    3.509110] kpatch_5_14_0_69_0_1_test: tainting kernel with TAINT_LIVEPATCH
[    3.509805] systemd-journald[600]: Failed to parse message, ignoring.
[    3.510772] kpatch_5_14_0_69_0_1_test: module verification failed: signature and/or required key missing - tainting kernel
[    3.534904] livepatch: enabling patch 'kpatch_5_14_0_69_0_1_test'
[    3.537552] livepatch: 'kpatch_5_14_0_69_0_1_test': starting patching transition
[    3.540183] livepatch: 'kpatch_5_14_0_69_0_1_test': patching complete

@pirat89 pirat89 merged commit a55d497 into oamg:master Feb 28, 2022
@Rezney Rezney mentioned this pull request Mar 12, 2022
pirat89 pushed a commit to Rezney/leapp-repository that referenced this pull request Mar 18, 2022
## Packaging
- Requires leapp-framework >= 2.2
- Bump leapp-framework-dependencies to 5

## Upgrade handling
### Fixes
- Fallback to /etc/leapp/repos.d if missing config option instead of using cwd (oamg#849)
- Filter out unrelated PES data for the particular IPU path (oamg#789)
- Fix bug with existing symlink when migrating YUM configuration files (oamg#811)
- Fix creating invalid answerfile in "authselectcheck" actor (oamg#748)
- Fix generating of instructions/data for the leapp DNF plugin during the IPU (oamg#754)
- Fix generating the target initramfs when additional files and dracut modules are requested to be added (oamg#838)
- Fix getting device attribute through udev on Python 3 (oamg#758)
- Fix parsing of sysctl output (oamg#793)
- Fix processing of merge events from PES data (oamg#768, oamg#825)
- Fix random crashes when printing DNF output (oamg#745)
- Fix scanning "/etc/default/grub" with empty line (oamg#845)
- Fix scanning information about mounted devices (oamg#711)
- Fix severities in the "targetuserspacecreator" actor (oamg#751)
- Fix the "rerun" command after adding the "--channel" option (oamg#750)
- Fix the execution order for the dnf dry run actor (oamg#801)
- Skip checking the flavor and target_version upon leapp --resume (oamg#781)
- Use more accurate tense in the SELinux messaging (oamg#614)

### Enhancements
- Introduce IPU for RHEL 8 to RHEL 9 \o/
- New upgrade paths for RHEL with SAP HANA (oamg#834)
- Changed upgrade paths:
-- RHEL 7.9 -> [8.4, 8.6]  (default: 8.6)
-- RHEL 8.6 -> 9.0
-- RHEL with SAP 7.9 -> [8.2, 8.6] (default: 8.2)
-- RHEL with SAP 8.6 -> 9.0
- Add 8.6, 9.0 Beta & GA product certificates (oamg#776, oamg#794)
- Add detection of enabled YUM & DNF plugins (oamg#703)
- Bind the /run/lock dir into the container in the upgrade initramfs env (oamg#831)
- Enable RHEL 8 to RHEL 9 upgrades on RHUI for AWS (oamg#828)
- Enhance handling selinux related stuff for 8 to 9 upgrade (oamg#749)
- Generalize checking of device drivers (oamg#835)
- Improve the performance of the leapp execution for "pre first reboot" phases (oamg#741)
- Introduce DNFWorkarounds to register scripts to be executed before DNF run (oamg#841)
- Introduce DNF modularity support (oamg#672, oamg#799)
- Introduce the --report-schema option to control the version of the generated report format (oamg#696)
- Introduce the --target option to specify the version of the target system (oamg#780)
- Provide the LEAPP_IPU_IN_PROGRESS envar during the IPU (oamg#830)
- [IPU 7 -> 8]: Add CUPS actors - cupsscanner, cupscheck, cupsmigrate (oamg#181)
- [IPU 7 -> 8]: Convert restrictions with IPv6 mask in "migratentp" actor (oamg#756)
- [IPU 7 -> 8]: Handle upgrading Satellite instances (oamg#733)
- [IPU 7 -> 8]: Warn about docker deprecation when installed
- [IPU 7 -> 8]: Zipl: Inhibit if boot entries share the same kernel image (oamg#816)
- [IPU 7 -> 8]: bind configuration check (oamg#521)
- [IPU 8 -> 9]: Add actor that ensures ifcfg files work in el9 (oamg#839)
- [IPU 8 -> 9]: Add actor that scans for deprecated network settings (oamg#842)
- [IPU 8 -> 9]: Add inhibitor FirewalldCheckServiceTftpClient  (oamg#792)
- [IPU 8 -> 9]: Add inihibtor FirewalldCheckAllowZoneDrifting (oamg#777)
- [IPU 8 -> 9]: Add kpatch actor to handle live kernel patching during IPU (oamg#837)
- [IPU 8 -> 9]: Add mariadbcheck actor to link upgrade documentation (oamg#836)
- [IPU 8 -> 9]: Add postgresqlcheck actor to link upgrade documentation (oamg#802)
- [IPU 8 -> 9]: Add scan & checks for VDO devices (oamg#821)
- [IPU 8 -> 9]: Apply a new way of disabling SELinux (oamg#769)
- [IPU 8 -> 9]: Check SSSD configuration for changes in RHEL9 and report them (oamg#732)
- [IPU 8 -> 9]: Check the existence of the custom network-scripts (oamg#729)
- [IPU 8 -> 9]: Provide upgrade inhibitor for ipa-server (oamg#765)

## Additional changes interesting for devels
- Move target release and flavor specification to a separate lib (oamg#753)
- Refactor "transactionworkarounds" actor and fix tests (oamg#759)
- Several actors moved to the system_upgrade/common repository (oamg#800, oamg#803, oamg#805, oamg#833)
Rezney added a commit to Rezney/leapp-repository that referenced this pull request Mar 18, 2022
## Packaging
- Requires leapp-framework >= 2.2
- Bump leapp-framework-dependencies to 5

## Upgrade handling
### Fixes
- Fallback to /etc/leapp/repos.d if missing config option instead of using cwd (oamg#849)
- Filter out unrelated PES data for the particular IPU path (oamg#789)
- Fix bug with existing symlink when migrating YUM configuration files (oamg#811)
- Fix creating invalid answerfile in "authselectcheck" actor (oamg#748)
- Fix generating of instructions/data for the leapp DNF plugin during the IPU (oamg#754)
- Fix generating the target initramfs when additional files and dracut modules are requested to be added (oamg#838)
- Fix getting device attribute through udev on Python 3 (oamg#758)
- Fix parsing of sysctl output (oamg#793)
- Fix processing of merge events from PES data (oamg#768, oamg#825)
- Fix random crashes when printing DNF output (oamg#745)
- Fix scanning "/etc/default/grub" with empty line (oamg#845)
- Fix scanning information about mounted devices (oamg#711)
- Fix severities in the "targetuserspacecreator" actor (oamg#751)
- Fix the "rerun" command after adding the "--channel" option (oamg#750)
- Fix the execution order for the dnf dry run actor (oamg#801)
- Skip checking the flavor and target_version upon leapp --resume (oamg#781)
- Use more accurate tense in the SELinux messaging (oamg#614)

### Enhancements
- Introduce IPU for RHEL 8 to RHEL 9 \o/
- New upgrade paths for RHEL with SAP HANA (oamg#834)
- Changed upgrade paths:
-- RHEL 7.9 -> [8.4, 8.6]  (default: 8.6)
-- RHEL 8.6 -> 9.0
-- RHEL with SAP 7.9 -> [8.2, 8.6] (default: 8.2)
-- RHEL with SAP 8.6 -> 9.0
- Add 8.6, 9.0 Beta & GA product certificates (oamg#776, oamg#794)
- Add detection of enabled YUM & DNF plugins (oamg#703)
- Bind the /run/lock dir into the container in the upgrade initramfs env (oamg#831)
- Enable RHEL 8 to RHEL 9 upgrades on RHUI for AWS (oamg#828)
- Enhance handling selinux related stuff for 8 to 9 upgrade (oamg#749)
- Generalize checking of device drivers (oamg#835)
- Improve the performance of the leapp execution for "pre first reboot" phases (oamg#741)
- Introduce DNFWorkarounds to register scripts to be executed before DNF run (oamg#841)
- Introduce DNF modularity support (oamg#672, oamg#799)
- Introduce the --report-schema option to control the version of the generated report format (oamg#696)
- Introduce the --target option to specify the version of the target system (oamg#780)
- Provide the LEAPP_IPU_IN_PROGRESS envar during the IPU (oamg#830)
- [IPU 7 -> 8]: Add CUPS actors - cupsscanner, cupscheck, cupsmigrate (oamg#181)
- [IPU 7 -> 8]: Convert restrictions with IPv6 mask in "migratentp" actor (oamg#756)
- [IPU 7 -> 8]: Handle upgrading Satellite instances (oamg#733)
- [IPU 7 -> 8]: Warn about docker deprecation when installed
- [IPU 7 -> 8]: Zipl: Inhibit if boot entries share the same kernel image (oamg#816)
- [IPU 7 -> 8]: bind configuration check (oamg#521)
- [IPU 8 -> 9]: Add actor that ensures ifcfg files work in el9 (oamg#839)
- [IPU 8 -> 9]: Add actor that scans for deprecated network settings (oamg#842)
- [IPU 8 -> 9]: Add inhibitor FirewalldCheckServiceTftpClient  (oamg#792)
- [IPU 8 -> 9]: Add inihibtor FirewalldCheckAllowZoneDrifting (oamg#777)
- [IPU 8 -> 9]: Add kpatch actor to handle live kernel patching during IPU (oamg#837)
- [IPU 8 -> 9]: Add mariadbcheck actor to link upgrade documentation (oamg#836)
- [IPU 8 -> 9]: Add postgresqlcheck actor to link upgrade documentation (oamg#802)
- [IPU 8 -> 9]: Add scan & checks for VDO devices (oamg#821)
- [IPU 8 -> 9]: Apply a new way of disabling SELinux (oamg#769)
- [IPU 8 -> 9]: Check SSSD configuration for changes in RHEL9 and report them (oamg#732)
- [IPU 8 -> 9]: Check the existence of the custom network-scripts (oamg#729)
- [IPU 8 -> 9]: Provide upgrade inhibitor for ipa-server (oamg#765)

## Additional changes interesting for devels
- Move target release and flavor specification to a separate lib (oamg#753)
- Refactor "transactionworkarounds" actor and fix tests (oamg#759)
- Several actors moved to the system_upgrade/common repository (oamg#800, oamg#803, oamg#805, oamg#833)

Signed-off-by: Michal Reznik <mreznik@redhat.com>
pirat89 pushed a commit that referenced this pull request Mar 18, 2022
## Packaging
- Requires leapp-framework >= 2.2
- Bump leapp-framework-dependencies to 5

## Upgrade handling
### Fixes
- Fallback to /etc/leapp/repos.d if missing config option instead of using cwd (#849)
- Filter out unrelated PES data for the particular IPU path (#789)
- Fix bug with existing symlink when migrating YUM configuration files (#811)
- Fix creating invalid answerfile in "authselectcheck" actor (#748)
- Fix generating of instructions/data for the leapp DNF plugin during the IPU (#754)
- Fix generating the target initramfs when additional files and dracut modules are requested to be added (#838)
- Fix getting device attribute through udev on Python 3 (#758)
- Fix parsing of sysctl output (#793)
- Fix processing of merge events from PES data (#768, #825)
- Fix random crashes when printing DNF output (#745)
- Fix scanning "/etc/default/grub" with empty line (#845)
- Fix scanning information about mounted devices (#711)
- Fix severities in the "targetuserspacecreator" actor (#751)
- Fix the "rerun" command after adding the "--channel" option (#750)
- Fix the execution order for the dnf dry run actor (#801)
- Skip checking the flavor and target_version upon leapp --resume (#781)
- Use more accurate tense in the SELinux messaging (#614)

### Enhancements
- Introduce IPU for RHEL 8 to RHEL 9 \o/
- New upgrade paths for RHEL with SAP HANA (#834)
- Changed upgrade paths:
-- RHEL 7.9 -> [8.4, 8.6]  (default: 8.6)
-- RHEL 8.6 -> 9.0
-- RHEL with SAP 7.9 -> [8.2, 8.6] (default: 8.2)
-- RHEL with SAP 8.6 -> 9.0
- Add 8.6, 9.0 Beta & GA product certificates (#776, #794)
- Add detection of enabled YUM & DNF plugins (#703)
- Bind the /run/lock dir into the container in the upgrade initramfs env (#831)
- Enable RHEL 8 to RHEL 9 upgrades on RHUI for AWS (#828)
- Enhance handling selinux related stuff for 8 to 9 upgrade (#749)
- Generalize checking of device drivers (#835)
- Improve the performance of the leapp execution for "pre first reboot" phases (#741)
- Introduce DNFWorkarounds to register scripts to be executed before DNF run (#841)
- Introduce DNF modularity support (#672, #799)
- Introduce the --report-schema option to control the version of the generated report format (#696)
- Introduce the --target option to specify the version of the target system (#780)
- Provide the LEAPP_IPU_IN_PROGRESS envar during the IPU (#830)
- [IPU 7 -> 8]: Add CUPS actors - cupsscanner, cupscheck, cupsmigrate (#181)
- [IPU 7 -> 8]: Convert restrictions with IPv6 mask in "migratentp" actor (#756)
- [IPU 7 -> 8]: Handle upgrading Satellite instances (#733)
- [IPU 7 -> 8]: Warn about docker deprecation when installed
- [IPU 7 -> 8]: Zipl: Inhibit if boot entries share the same kernel image (#816)
- [IPU 7 -> 8]: bind configuration check (#521)
- [IPU 8 -> 9]: Add actor that ensures ifcfg files work in el9 (#839)
- [IPU 8 -> 9]: Add actor that scans for deprecated network settings (#842)
- [IPU 8 -> 9]: Add inhibitor FirewalldCheckServiceTftpClient  (#792)
- [IPU 8 -> 9]: Add inihibtor FirewalldCheckAllowZoneDrifting (#777)
- [IPU 8 -> 9]: Add kpatch actor to handle live kernel patching during IPU (#837)
- [IPU 8 -> 9]: Add mariadbcheck actor to link upgrade documentation (#836)
- [IPU 8 -> 9]: Add postgresqlcheck actor to link upgrade documentation (#802)
- [IPU 8 -> 9]: Add scan & checks for VDO devices (#821)
- [IPU 8 -> 9]: Apply a new way of disabling SELinux (#769)
- [IPU 8 -> 9]: Check SSSD configuration for changes in RHEL9 and report them (#732)
- [IPU 8 -> 9]: Check the existence of the custom network-scripts (#729)
- [IPU 8 -> 9]: Provide upgrade inhibitor for ipa-server (#765)

## Additional changes interesting for devels
- Move target release and flavor specification to a separate lib (#753)
- Refactor "transactionworkarounds" actor and fix tests (#759)
- Several actors moved to the system_upgrade/common repository (#800, #803, #805, #833)

Signed-off-by: Michal Reznik <mreznik@redhat.com>
asm0deuz pushed a commit to asm0deuz/leapp-repository that referenced this pull request Jun 9, 2022
## Packaging
- Requires leapp-framework >= 2.2
- Bump leapp-framework-dependencies to 5

## Upgrade handling
### Fixes
- Fallback to /etc/leapp/repos.d if missing config option instead of using cwd (oamg#849)
- Filter out unrelated PES data for the particular IPU path (oamg#789)
- Fix bug with existing symlink when migrating YUM configuration files (oamg#811)
- Fix creating invalid answerfile in "authselectcheck" actor (oamg#748)
- Fix generating of instructions/data for the leapp DNF plugin during the IPU (oamg#754)
- Fix generating the target initramfs when additional files and dracut modules are requested to be added (oamg#838)
- Fix getting device attribute through udev on Python 3 (oamg#758)
- Fix parsing of sysctl output (oamg#793)
- Fix processing of merge events from PES data (oamg#768, oamg#825)
- Fix random crashes when printing DNF output (oamg#745)
- Fix scanning "/etc/default/grub" with empty line (oamg#845)
- Fix scanning information about mounted devices (oamg#711)
- Fix severities in the "targetuserspacecreator" actor (oamg#751)
- Fix the "rerun" command after adding the "--channel" option (oamg#750)
- Fix the execution order for the dnf dry run actor (oamg#801)
- Skip checking the flavor and target_version upon leapp --resume (oamg#781)
- Use more accurate tense in the SELinux messaging (oamg#614)

### Enhancements
- Introduce IPU for RHEL 8 to RHEL 9 \o/
- New upgrade paths for RHEL with SAP HANA (oamg#834)
- Changed upgrade paths:
-- RHEL 7.9 -> [8.4, 8.6]  (default: 8.6)
-- RHEL 8.6 -> 9.0
-- RHEL with SAP 7.9 -> [8.2, 8.6] (default: 8.2)
-- RHEL with SAP 8.6 -> 9.0
- Add 8.6, 9.0 Beta & GA product certificates (oamg#776, oamg#794)
- Add detection of enabled YUM & DNF plugins (oamg#703)
- Bind the /run/lock dir into the container in the upgrade initramfs env (oamg#831)
- Enable RHEL 8 to RHEL 9 upgrades on RHUI for AWS (oamg#828)
- Enhance handling selinux related stuff for 8 to 9 upgrade (oamg#749)
- Generalize checking of device drivers (oamg#835)
- Improve the performance of the leapp execution for "pre first reboot" phases (oamg#741)
- Introduce DNFWorkarounds to register scripts to be executed before DNF run (oamg#841)
- Introduce DNF modularity support (oamg#672, oamg#799)
- Introduce the --report-schema option to control the version of the generated report format (oamg#696)
- Introduce the --target option to specify the version of the target system (oamg#780)
- Provide the LEAPP_IPU_IN_PROGRESS envar during the IPU (oamg#830)
- [IPU 7 -> 8]: Add CUPS actors - cupsscanner, cupscheck, cupsmigrate (oamg#181)
- [IPU 7 -> 8]: Convert restrictions with IPv6 mask in "migratentp" actor (oamg#756)
- [IPU 7 -> 8]: Handle upgrading Satellite instances (oamg#733)
- [IPU 7 -> 8]: Warn about docker deprecation when installed
- [IPU 7 -> 8]: Zipl: Inhibit if boot entries share the same kernel image (oamg#816)
- [IPU 7 -> 8]: bind configuration check (oamg#521)
- [IPU 8 -> 9]: Add actor that ensures ifcfg files work in el9 (oamg#839)
- [IPU 8 -> 9]: Add actor that scans for deprecated network settings (oamg#842)
- [IPU 8 -> 9]: Add inhibitor FirewalldCheckServiceTftpClient  (oamg#792)
- [IPU 8 -> 9]: Add inihibtor FirewalldCheckAllowZoneDrifting (oamg#777)
- [IPU 8 -> 9]: Add kpatch actor to handle live kernel patching during IPU (oamg#837)
- [IPU 8 -> 9]: Add mariadbcheck actor to link upgrade documentation (oamg#836)
- [IPU 8 -> 9]: Add postgresqlcheck actor to link upgrade documentation (oamg#802)
- [IPU 8 -> 9]: Add scan & checks for VDO devices (oamg#821)
- [IPU 8 -> 9]: Apply a new way of disabling SELinux (oamg#769)
- [IPU 8 -> 9]: Check SSSD configuration for changes in RHEL9 and report them (oamg#732)
- [IPU 8 -> 9]: Check the existence of the custom network-scripts (oamg#729)
- [IPU 8 -> 9]: Provide upgrade inhibitor for ipa-server (oamg#765)

## Additional changes interesting for devels
- Move target release and flavor specification to a separate lib (oamg#753)
- Refactor "transactionworkarounds" actor and fix tests (oamg#759)
- Several actors moved to the system_upgrade/common repository (oamg#800, oamg#803, oamg#805, oamg#833)

Signed-off-by: Michal Reznik <mreznik@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants