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

Update to upstream 0.21.0-5 #137

Merged

Conversation

yuravk
Copy link

@yuravk yuravk commented Jan 23, 2025

No description provided.

dkubek and others added 12 commits January 23, 2025 11:20
This commit resolves an issue where unwanted escape sequences (e.g.,
ANSI codes) appear in the output of certain commands like `dnf` during
upgrades.

The issue arises because, starting with version 242, `systemd-nspawn`
introduced new pseudo-TTY capabilities (see the `Input/Output Options`
section in `systemd-nspawn(1)`). As a result, commands run within
container may include these escape sequences.

To address this, pseudo-TTY support is explicitly disabled in
`systemd-nspawn` for upgrades on RHEL9 and later.

JIRA: RHEL-69829
(cherry picked from commit 1a0183b)
RpmTransactionTasks messages have higher priority than instructions
based on PES data. Previously, if multiple such messages existed
with duplicate instructions, this could lead to the crash of
the actor - especially in case when an existing package has been
asked to be removed several times. Ensure the occurance of each
instruction is unique (list -> set).

jira: RHEL-50076
(cherry picked from commit e109682)
Previously, pes_events_scanner used transaction configuration to
only modify the way it initializes event application. As a consequence,
if a user specified to_remove=['pkg'], then the information would
not make it to pes_events_scanner's output. Similar situation would
arise with to_install/to_keep. This patch adds a post-processing to
explicitly add transaction configuration to the result of applying PES
events.

(cherry picked from commit 4962708)
When upgrading to RHEL 10, we have analogical problem as we had for
IPU 8 -> 9 due to GPG keys with SHA1 signatures. The SHA1 algorithm
is considered unsecure since RHEL 9 and all RPMs are required to be
signed by keys with SHA2 signatures. The RHEL 9 GPG (auxiliary) key
is unfortunately still signed with SHA1 and RHEL 10 tooling refuse
to use it for any operations.

To resolve this apply the same solution as we did in the past:
* obsolete original key
* install the target RHEL 10 GPG keys during the upgrade

jira: RHEL-71517
(cherry picked from commit 75b8b96)
Fix storagescanner actor crash when parsing the output of,
e.g., 'pvs -a', which used ':' as a separator and caused errors.
The issue occurred because separator ':' is used to split the outputs of executed commands.
This commit resolves the problem by changing the separator to '|'.

Jira: RHEL-34570
(cherry picked from commit d183370)
The mount_usr.sh script runs 'lvm vgchange': if there are logical
volumes present that require monitoring (snapshots, thin pools, RAID,
etc.) the command will attempt to launch dmeventd.

Since dmeventd is not installed in the dracut initramfs this produces a
warning and causes the lvm command to exit with non-zero exit status
even though the volume group has been activated and LV block devices are
available.

This in turn triggers the retry logic in mount_usr.sh: once the retries
are exhausted the script carries on and successfully initiates the
upgrade process.

The --sysinit switch is used by the LVM dracut modules for this reason.
From vgchange(8):

       --sysinit
        Indicates  that  vgchange/lvchange  is being invoked from early
        system initialisation scripts (e.g. rc.sysinit or an initrd),
        before writable filesystems are available. As such, some
        functionality needs to be disabled and this option acts as a
        shortcut which selects an appropriate set of options. Currently,
        this is equivalent to using  --ignorelockingfailure,
        --ignoremonitoring,  --poll  n, and setting env var
        LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES.  vgchange/lvchange skip
        autoactivation, and defer to pvscan autoactivation.

Testing with this change I no longer see the long delay booting the
upgrade initramfs when snapshot LVs are present.

(cherry picked from commit a46f208)
Users do not have an idea what they should do about the third party
packages - and quite often they do not understand the report itself.
Adding the remediation hint with a link to related KB solution to
help them to understand what they can do about this.

Note the actor needs significant changes to cover also other non-RHEL
distributions. I decided to keep the change simple and resolve that
in a follow up when we enable upgrades on other distributions as well.

jira: RHEL-44596
(cherry picked from commit 2464051)
Improve the report to clarify the upgrade path for already upgraded PostgreSQL

(cherry picked from commit fb4131a)
…/postgresqlcheck.py

Co-authored-by: Petr Stodůlka <[email protected]>
(cherry picked from commit 724e052)
The message should suggest to remove "dhclient", not "internal".

(cherry picked from commit bd6e759)
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 mergeable.
If you want to request a review or rebuild a package in copr, you can use following commands as a comment:

  • review please @oamg/developers to notify leapp developers of the review request
  • /packit copr-build to submit a public copr build using packit

Packit will automatically schedule regression tests for this PR's build and latest upstream leapp build.
However, here are additional useful commands for packit:

  • /packit test to re-run manually the default tests
  • /packit retest-failed to re-run failed tests manually
  • /packit test oamg/leapp#42 to run tests with leapp builds for the leapp PR#42 (default is latest upstream - main - build)

Note that first time contributors cannot run tests automatically - they need to be started by a reviewer.

It is possible to schedule specific on-demand tests as well. Currently 2 test sets are supported, beaker-minimal and kernel-rt, both can be used to be run on all upgrade paths or just a couple of specific ones.
To launch on-demand tests with packit:

  • /packit test --labels kernel-rt to schedule kernel-rt tests set for all upgrade paths
  • /packit test --labels beaker-minimal-8.10to9.4,kernel-rt-8.10to9.4 to schedule kernel-rt and beaker-minimal test sets for 8.10->9.4 upgrade path

See other labels for particular jobs defined in the .packit.yaml file.

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 contact leapp-infra.

@andrewlukoshko andrewlukoshko merged commit 1c364d5 into AlmaLinux:almalinux-ng-0.21.0 Jan 23, 2025
1 check passed
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.

10 participants