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

Enforce locale when running the IPU workflow. #706

Merged
merged 1 commit into from
Oct 14, 2021

Conversation

MichalHe
Copy link
Member

@MichalHe MichalHe commented Aug 12, 2021

As some of the actors rely on parsing command outputs, having different locale on the system might cause troubles as it changes expected command outputs. This PR enforces our expected locale before running the IPU workflow via setting an environmental variable.

@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.

@MichalHe MichalHe changed the title [WIP] Enforce locale when running workflow. [WIP] Enforce locale when running the IPU workflow. Aug 12, 2021
@leapp-bot
Copy link
Collaborator

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

@MichalHe
Copy link
Member Author

leapp-ci build

@MichalHe
Copy link
Member Author

Testing performed:

Branch Commit Inhibited due to not being registered
master 74dd759 Yes
enforce_locale (PR) 5b16560 No

@MichalHe MichalHe changed the title [WIP] Enforce locale when running the IPU workflow. Enforce locale when running the IPU workflow. Aug 23, 2021
@MichalHe MichalHe marked this pull request as ready for review August 23, 2021 11:55
@MichalHe MichalHe force-pushed the enforce_locale branch 2 times, most recently from 34fc3b9 to 9cd6387 Compare August 23, 2021 13:46
pirat89
pirat89 previously approved these changes Aug 24, 2021
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.

lgtm

@fernflower
Copy link
Member

/rerun

@github-actions
Copy link

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

@github-actions
Copy link

Testing Farm request for tmt test was created. Once finished, results should be available here.
Full pipeline log.

@mmacura311
Copy link
Member

/rerun

@github-actions
Copy link

github-actions bot commented Sep 9, 2021

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

@github-actions
Copy link

github-actions bot commented Sep 9, 2021

Testing Farm request for tmt test was created. Once finished, results should be available here.
Full pipeline log.

pirat89
pirat89 previously approved these changes Sep 15, 2021
pirat89
pirat89 previously approved these changes Sep 24, 2021
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.

reapprove after the rebase against up-to-date master

@pirat89
Copy link
Member

pirat89 commented Oct 12, 2021

@MichalHe hmm.. interestingly the fix doesn't work even regarding the code I really expected it will work. Tried on RHEL 7.9

export LANG=fr_FR.UTF-8
# leapp upgrade --debug
[snip]
    - wfk-textonly-1-for-middleware-rpms
2021-10-12 08:04:10.577 DEBUG    PID: 14663 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has started: ['subscription-manager', 'repos', '--list-enabled']
+----------------------------------------------------------+
    Référentiels disponibles dans /etc/yum.repos.d/redhat.repo
+----------------------------------------------------------+
ID du référentiel :  rhel-7-server-rpms
Nom du référentiel : Red Hat Enterprise Linux 7 Server (RPMs)
URL du référentiel : https://cdn.redhat.com/content/dist/rhel/server/7/$releasever/$basearch/os
Activé :             1

ID du référentiel :  rhel-7-server-optional-rpms
Nom du référentiel : Red Hat Enterprise Linux 7 Server - Optional (RPMs)
URL du référentiel : https://cdn.redhat.com/content/dist/rhel/server/7/$releasever/$basearch/optional/os
Activé :             1

2021-10-12 08:04:31.276 DEBUG    PID: 14663 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has finished: ['subscription-manager', 'repos', '--list-enabled']
2021-10-12 08:04:31.278 DEBUG    PID: 14663 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has started: ['subscription-manager', 'release']
Version non définie
2021-10-12 08:04:32.660 DEBUG    PID: 14663 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has finished: ['subscription-manager', 'release']
2021-10-12 08:04:32.663 DEBUG    PID: 14663 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has started: ['subscription-manager', 'status']
+-------------------------------------------+
   Détails du statut du système
+-------------------------------------------+
Overall Status: Actuel

Statut de l'objectif du système : Non spécifié

2021-10-12 08:04:35.253 DEBUG    PID: 14663 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has finished: ['subscription-manager', 'status']

@MichalHe we found the problem. Actually, on RHEL 7, LC_ALL set all LC_* envars but keeps LANG untouched. So in the right solution, we need to set LC_ALL + LANG as well. Something new for me to be honest. Please update the commit to set both envars (already tested, that this fixes the problem for sure)

@Rezney
Copy link
Member

Rezney commented Oct 13, 2021

@MichalHe please rebase against the latest master :)

Some actors that are executed during the IPU workflow rely on parsing
outputs of executed commands. When the underlying system is configured
with a different locale the actors typically fail since they are looking
for specific strings in the outputs which tend to be localized.

This commit enforces locale to en_US.utf-8 via setting the LANG
environment variable, and therefore removes the need for users that
typically use different locale to set it before running leapp.
@Rezney
Copy link
Member

Rezney commented Oct 13, 2021

@MichalHe please rebase against the latest master :)

rebased...

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.

Looks good to me using "fr_BE" locale:

2021-10-13 15:07:45.117 DEBUG    PID: 14133 leapp.workflow.FactsCollection.scan_subscription_manager_info: External command has started: ['subscription-manager', 'list', '--consumed']
No consumed subscription pools were found.

@Rezney Rezney merged commit 33a669d into oamg:master Oct 14, 2021
pirat89 added a commit to pirat89/leapp-repository that referenced this pull request Oct 19, 2021
## Packaging
- Add dependency on `dnf-command(config-manager)` (oamg#701)
- Added a dependency on leapp as the new rpm provides leapp commands (oamg#701, #)
- Bumped leapp-repository-dependencies to 6 (oamg#701)
- Provides the leapp-upgrade capability, so users can install all packages just by the `yum install leapp-upgrade` command (oamg#701)
- Support building on RHEL 8 systems: leapp-upgrade-el8toel9 (oamg#701)
- The leapp-repository rpm has been renamed to leapp-upgrade-el7toel8 for RHEL 7 (oamg#701)

## Upgrade handling
### Fixes
- Check all devices (not only PCI devices) for possible removed drivers (oamg#666)
- Do not exclude repoids enabled via the --enablerepo option (oamg#623)
- Enforce the `en_US.urf-8` locale when running leapp to prevent various issues when a different locale is used on the system (oamg#706)
- Enhance the check of required free space on disk for the upgrade (oamg#734)
- Fix XFS ftype=0 workaround when "non-XFS" rootfs is present (oamg#674)
- Fix detection of XFS partitions without ftype (oamg#678)
- Fix handling of /etc/yum.repos.d directory for RHUI (oamg#730)
- Fix handling of issues when fetching leapp data files
- Fix incorrect mapping of RHEL repositories (oamg#714)
- Fix invalid detection of RHEL-ALT on RHEL 8 systems
- Fix the detection of NFS partitions in /etc/fstab (oamg#712)
- Fix the report message when multiple NICs with ethX names are present (oamg#640)
- Introduce the LEAPP_NO_NETWORK_RENAMING environment variable to leave management of NICs names on user when set to '1'; fixes e.g. problems with bonding configuration (oamg#721)
- Various Python3 compatibility fixes in regards to prepare for IPU 8 -> 9 (oamg#680, oamg#679, oamg#681, 688)

### Enhancements
- Changed supported upgrade path for RHEL with SAP: RHEL with SAP 7.9 -> 8.2
- Add PostgresqlCheck actor for basic reporting about PostgresSQL changes (oamg#136)
- Add multiple attempts to fetch data from server and increased the timeout to improve the experience on systems with unstable network connection
- Add possibility to influence creation of targetuserspace container, upgrade initramfs, and target initramfs (oamg#517)
- Add the scandasd actor to check if DASD is used on s390x arch (oamg#517)
- Enable upgrades for SAP on AWS & Azure using RHUI (oamg#736, oamg#739)
- Generate /etc/migration-results upon leapp preupgrade / upgrade execution to inform about status of the migration (oamg#719)
- Improve the report message when BTRFS is detected (oamg#727)
- Inhibit the upgrade if any CIFS entries found in /etc/fstab (oamg#632)
- Inhibit the upgrade if any deprecated OpenSSH configuration options / directives are detected (oamg#695)
- Inhibit the upgrade when multiple rescue boot entries exist on s390x (oamg#700)
- Inhibit the upgrade when x32b and x64b versions of packages are installed (oamg#628)
- Introduce hard preservation of leapp packages during the IPU (oamg#701)
- Introduce new system of automatic mapping of RHEL repositories for the in-place upgrade based on the repomap.json file (oamg#714)
- Introduce the --channel CLI option to specify the channel (e.g. eus) supposed to be used for the upgrade (oamg#728)
- Report the problems with target repositories using inhibitors instead of error messages (oamg#731)
- Restore the leapp environment variables on --resume execution after the reboot of the system (oamg#724)
- Set `releasever` to the target version when specified in the /etc/{yum,dnf}/var/releasever file (e.g. on RHUI) (oamg#720)

## Additional changes interesting for devels
- CLI: leapp CLI commands are now part of leapp-repository in the `commands` directory (oamg#662)
- Drop of RepositoriesMap and RepositoryMap models as these have been replaced by new 'private' models and it was no possible to keep the original functionality connected to connected to these old models (oamg#714)
- Dropped possibility to upgrade from/to HTB systems (HTB doesn't exist anymore)
- Introduced many changes as preparation for the IPU 8 -> 9
- Introduced the upgrade/common leapp repository: contains fundamental parts generic for all IPUs
- Introduced the upgrade/el8toel9 leapp repository: contains stuff related just for IPU 8 -> 9; depends on the upgrades/common repository
- The upgrade/el7toel8 leapp repository contains only stuff related to IPU 7 -> 8
- Makefile: introduce the `fast_lint` target to run linters just on files different from master (oamg#722)
- The InstalledRPM model is extended by module:stream data (oamg#667)
- config library: introduce `get_target_major_version` and `get_source_major_version` functions
- fetch library: the `fetch_or_read` function allows to specify the file encoding (oamg#717)
- mounting library: add the remove_tree isolated action (oamg#517)
- testutils library: CurrentActorMocked: implemented the get_actor_file_path method (oamg#517)
@pirat89 pirat89 mentioned this pull request Oct 19, 2021
pirat89 added a commit to pirat89/leapp-repository that referenced this pull request Oct 19, 2021
## Packaging
- Add dependency on `dnf-command(config-manager)` (oamg#701)
- Added a dependency on leapp as the new rpm provides leapp commands (oamg#701, #)
- Bumped leapp-repository-dependencies to 6 (oamg#701)
- Provides the leapp-upgrade capability, so users can install all packages just by the `yum install leapp-upgrade` command (oamg#701)
- Support building on RHEL 8 systems: leapp-upgrade-el8toel9 (oamg#701)
- The leapp-repository rpm has been renamed to leapp-upgrade-el7toel8 for RHEL 7 (oamg#701)

## Upgrade handling
### Fixes
- Check all devices (not only PCI devices) for possible removed drivers (oamg#666)
- Do not exclude repoids enabled via the --enablerepo option (oamg#623)
- Enforce the `en_US.urf-8` locale when running leapp to prevent various issues when a different locale is used on the system (oamg#706)
- Enhance the check of required free space on disk for the upgrade (oamg#734)
- Fix XFS ftype=0 workaround when "non-XFS" rootfs is present (oamg#674)
- Fix detection of XFS partitions without ftype (oamg#678)
- Fix handling of /etc/yum.repos.d directory for RHUI (oamg#730)
- Fix handling of issues when fetching leapp data files
- Fix incorrect mapping of RHEL repositories (oamg#714)
- Fix invalid detection of RHEL-ALT on RHEL 8 systems
- Fix the detection of NFS partitions in /etc/fstab (oamg#712)
- Fix the report message when multiple NICs with ethX names are present (oamg#640)
- Introduce the LEAPP_NO_NETWORK_RENAMING environment variable to leave management of NICs names on user when set to '1'; fixes e.g. problems with bonding configuration (oamg#721)
- Various Python3 compatibility fixes in regards to prepare for IPU 8 -> 9 (oamg#680, oamg#679, oamg#681, oamg#688)

### Enhancements
- Changed supported upgrade path for RHEL with SAP: RHEL with SAP 7.9 -> 8.2
- Add PostgresqlCheck actor for basic reporting about PostgresSQL changes (oamg#136)
- Add multiple attempts to fetch data from server and increased the timeout to improve the experience on systems with unstable network connection
- Add possibility to influence creation of targetuserspace container, upgrade initramfs, and target initramfs (oamg#517)
- Add the scandasd actor to check if DASD is used on s390x arch (oamg#517)
- Enable upgrades for SAP on AWS & Azure using RHUI (oamg#736, oamg#739)
- Generate /etc/migration-results upon leapp preupgrade / upgrade execution to inform about status of the migration (oamg#719)
- Improve the report message when BTRFS is detected (oamg#727)
- Inhibit the upgrade if any CIFS entries found in /etc/fstab (oamg#632)
- Inhibit the upgrade if any deprecated OpenSSH configuration options / directives are detected (oamg#695)
- Inhibit the upgrade when multiple rescue boot entries exist on s390x (oamg#700)
- Inhibit the upgrade when x32b and x64b versions of packages are installed (oamg#628)
- Introduce hard preservation of leapp packages during the IPU (oamg#701)
- Introduce new system of automatic mapping of RHEL repositories for the in-place upgrade based on the repomap.json file (oamg#714)
- Introduce the --channel CLI option to specify the channel (e.g. eus) supposed to be used for the upgrade (oamg#728)
- Report the problems with target repositories using inhibitors instead of error messages (oamg#731)
- Restore the leapp environment variables on --resume execution after the reboot of the system (oamg#724)
- Set `releasever` to the target version when specified in the /etc/{yum,dnf}/var/releasever file (e.g. on RHUI) (oamg#720)

## Additional changes interesting for devels
- CLI: leapp CLI commands are now part of leapp-repository in the `commands` directory (oamg#662)
- Drop of RepositoriesMap and RepositoryMap models as these have been replaced by new 'private' models and it was no possible to keep the original functionality connected to connected to these old models (oamg#714)
- Dropped possibility to upgrade from/to HTB systems (HTB doesn't exist anymore)
- Introduced many changes as preparation for the IPU 8 -> 9
- Introduced the upgrade/common leapp repository: contains fundamental parts generic for all IPUs
- Introduced the upgrade/el8toel9 leapp repository: contains stuff related just for IPU 8 -> 9; depends on the upgrades/common repository
- The upgrade/el7toel8 leapp repository contains only stuff related to IPU 7 -> 8
- Makefile: introduce the `fast_lint` target to run linters just on files different from master (oamg#722)
- The InstalledRPM model is extended by module:stream data (oamg#667)
- config library: introduce `get_target_major_version` and `get_source_major_version` functions
- fetch library: the `fetch_or_read` function allows to specify the file encoding (oamg#717)
- mounting library: add the remove_tree isolated action (oamg#517)
- testutils library: CurrentActorMocked: implemented the get_actor_file_path method (oamg#517)
pirat89 added a commit to pirat89/leapp-repository that referenced this pull request Oct 19, 2021
## Packaging
- Add dependency on `dnf-command(config-manager)` (oamg#701)
- Added a dependency on leapp as the new rpm provides leapp commands (oamg#701, #)
- Bumped leapp-repository-dependencies to 6 (oamg#701)
- Provides the leapp-upgrade capability, so users can install all packages just by the `yum install leapp-upgrade` command (oamg#701)
- Support building on RHEL 8 systems: leapp-upgrade-el8toel9 (oamg#701)
- The leapp-repository rpm has been renamed to leapp-upgrade-el7toel8 for RHEL 7 (oamg#701)

## Upgrade handling
### Fixes
- Check all devices (not only PCI devices) for possible removed drivers (oamg#666)
- Do not exclude repoids enabled via the --enablerepo option (oamg#623)
- Enforce the `en_US.urf-8` locale when running leapp to prevent various issues when a different locale is used on the system (oamg#706)
- Enhance the check of required free space on disk for the upgrade (oamg#734)
- Fix XFS ftype=0 workaround when "non-XFS" rootfs is present (oamg#674)
- Fix detection of XFS partitions without ftype (oamg#678)
- Fix handling of /etc/yum.repos.d directory for RHUI (oamg#730)
- Fix handling of issues when fetching leapp data files
- Fix incorrect mapping of RHEL repositories (oamg#714)
- Fix invalid detection of RHEL-ALT on RHEL 8 systems
- Fix the detection of NFS partitions in /etc/fstab (oamg#712)
- Fix the report message when multiple NICs with ethX names are present (oamg#640)
- Introduce the LEAPP_NO_NETWORK_RENAMING environment variable to leave management of NICs names on user when set to '1'; fixes e.g. problems with bonding configuration (oamg#721)
- Various Python3 compatibility fixes in regards to prepare for IPU 8 -> 9 (oamg#680, oamg#679, oamg#681, oamg#688)

### Enhancements
- Changed supported upgrade path for RHEL with SAP: RHEL with SAP 7.9 -> 8.2
- Add PostgresqlCheck actor for basic reporting about PostgresSQL changes (oamg#136)
- Add multiple attempts to fetch data from server and increased the timeout to improve the experience on systems with unstable network connection
- Add possibility to influence creation of targetuserspace container, upgrade initramfs, and target initramfs (oamg#517)
- Add the scandasd actor to check if DASD is used on s390x arch (oamg#517)
- Enable upgrades for SAP on AWS & Azure using RHUI (oamg#736, oamg#739)
- Generate /etc/migration-results upon leapp preupgrade / upgrade execution to inform about status of the migration (oamg#719)
- Improve the report message when BTRFS is detected (oamg#727)
- Inhibit the upgrade if any CIFS entries found in /etc/fstab (oamg#632)
- Inhibit the upgrade if any deprecated OpenSSH configuration options / directives are detected (oamg#695)
- Inhibit the upgrade when multiple rescue boot entries exist on s390x (oamg#700)
- Inhibit the upgrade when x32b and x64b versions of packages are installed (oamg#628)
- Introduce hard preservation of leapp packages during the IPU (oamg#701)
- Introduce new system of automatic mapping of RHEL repositories for the in-place upgrade based on the repomap.json file (oamg#714)
- Introduce the --channel CLI option to specify the channel (e.g. eus) supposed to be used for the upgrade (oamg#728)
- Report the problems with target repositories using inhibitors instead of error messages (oamg#731)
- Restore the leapp environment variables on --resume execution after the reboot of the system (oamg#724)
- Set `releasever` to the target version when specified in the /etc/{yum,dnf}/var/releasever file (e.g. on RHUI) (oamg#720)

## Additional changes interesting for devels
- CLI: leapp CLI commands are now part of leapp-repository in the `commands` directory (oamg#662)
- Drop of RepositoriesMap and RepositoryMap models as these have been replaced by new 'private' models and it was no possible to keep the original functionality connected to connected to these old models (oamg#714)
- Dropped possibility to upgrade from/to HTB systems (HTB doesn't exist anymore)
- Introduced the LEAPP_DEVEL_USE_PERSISTENT_PACKAGE_CACHE envar for development and testing purposes to speed up the process, but use of the envar could end with some issues when the cached data is not fresh (oamg#725)
- Introduced many changes as preparation for the IPU 8 -> 9
- Introduced the upgrade/common leapp repository: contains fundamental parts generic for all IPUs
- Introduced the upgrade/el8toel9 leapp repository: contains stuff related just for IPU 8 -> 9; depends on the upgrades/common repository
- The upgrade/el7toel8 leapp repository contains only stuff related to IPU 7 -> 8
- Makefile: introduce the `fast_lint` target to run linters just on files different from master (oamg#722)
- The InstalledRPM model is extended by module:stream data (oamg#667)
- config library: introduce `get_target_major_version` and `get_source_major_version` functions
- fetch library: the `fetch_or_read` function allows to specify the file encoding (oamg#717)
- mounting library: add the remove_tree isolated action (oamg#517)
- testutils library: CurrentActorMocked: implemented the get_actor_file_path method (oamg#517)
pirat89 added a commit to pirat89/leapp-repository that referenced this pull request Oct 19, 2021
## Packaging
- Add dependency on `dnf-command(config-manager)` (oamg#701)
- Added a dependency on leapp as the new rpm provides leapp commands (oamg#701, #)
- Bumped leapp-repository-dependencies to 6 (oamg#701)
- Provides the leapp-upgrade capability, so users can install all packages just by the `yum install leapp-upgrade` command (oamg#701)
- Support building on RHEL 8 systems: leapp-upgrade-el8toel9 (oamg#701)
- The leapp-repository rpm has been renamed to leapp-upgrade-el7toel8 for RHEL 7 (oamg#701)

## Upgrade handling
### Fixes
- Check all devices (not only PCI devices) for possible removed drivers (oamg#666)
- Do not exclude repoids enabled via the --enablerepo option (oamg#623)
- Enforce the `en_US.utf-8` locale when running leapp to prevent various issues when a different locale is used on the system (oamg#706)
- Enhance the check of required free space on disk for the upgrade (oamg#734)
- Fix XFS ftype=0 workaround when "non-XFS" rootfs is present (oamg#674)
- Fix detection of XFS partitions without ftype (oamg#678)
- Fix handling of /etc/yum.repos.d directory for RHUI (oamg#730)
- Fix handling of issues when fetching leapp data files
- Fix incorrect mapping of RHEL repositories (oamg#714)
- Fix invalid detection of RHEL-ALT on RHEL 8 systems
- Fix the detection of NFS partitions in /etc/fstab (oamg#712)
- Fix the report message when multiple NICs with ethX names are present (oamg#640)
- Introduce the LEAPP_NO_NETWORK_RENAMING environment variable to leave management of NICs names on user when set to '1'; fixes e.g. problems with bonding configuration (oamg#721)
- Various Python3 compatibility fixes in regards to prepare for IPU 8 -> 9 (oamg#680, oamg#679, oamg#681, oamg#688)

### Enhancements
- Changed supported upgrade path for RHEL with SAP: RHEL with SAP 7.9 -> 8.2
- Add PostgresqlCheck actor for basic reporting about PostgresSQL changes (oamg#136)
- Add multiple attempts to fetch data from server and increased the timeout to improve the experience on systems with unstable network connection
- Add possibility to influence creation of targetuserspace container, upgrade initramfs, and target initramfs (oamg#517)
- Add the scandasd actor to check if DASD is used on s390x arch (oamg#517)
- Enable upgrades for SAP on AWS & Azure using RHUI (oamg#736, oamg#739)
- Generate /etc/migration-results upon leapp preupgrade / upgrade execution to inform about status of the migration (oamg#719)
- Improve the report message when BTRFS is detected (oamg#727)
- Inhibit the upgrade if any CIFS entries found in /etc/fstab (oamg#632)
- Inhibit the upgrade if any deprecated OpenSSH configuration options / directives are detected (oamg#695)
- Inhibit the upgrade when multiple rescue boot entries exist on s390x (oamg#700)
- Inhibit the upgrade when x32b and x64b versions of packages are installed (oamg#628)
- Introduce hard preservation of leapp packages during the IPU (oamg#701)
- Introduce new system of automatic mapping of RHEL repositories for the in-place upgrade based on the repomap.json file (oamg#714)
- Introduce the --channel CLI option to specify the channel (e.g. eus) supposed to be used for the upgrade (oamg#728)
- Report the problems with target repositories using inhibitors instead of error messages (oamg#731)
- Restore the leapp environment variables on --resume execution after the reboot of the system (oamg#724)
- Update (or create) the /etc/{yum,dnf}/var/releasever file if exists or RHUI is detected (oamg#720)

## Additional changes interesting for devels
- CLI: leapp CLI commands are now part of leapp-repository in the `commands` directory (oamg#662)
- Drop of RepositoriesMap and RepositoryMap models as these have been replaced by new 'private' models and it was no possible to keep the original functionality connected to connected to these old models (oamg#714)
- Dropped possibility to upgrade from/to HTB systems (HTB doesn't exist anymore)
- Introduced the LEAPP_DEVEL_USE_PERSISTENT_PACKAGE_CACHE envar for development and testing purposes to speed up the process, but use of the envar could end with some issues when the cached data is not fresh (oamg#725)
- Introduced many changes as preparation for the IPU 8 -> 9
- Introduced the upgrade/common leapp repository: contains fundamental parts generic for all IPUs
- Introduced the upgrade/el8toel9 leapp repository: contains stuff related just for IPU 8 -> 9; depends on the upgrades/common repository
- The upgrade/el7toel8 leapp repository contains only stuff related to IPU 7 -> 8
- Makefile: introduce the `fast_lint` target to run linters just on files different from master (oamg#722)
- The InstalledRPM model is extended by module:stream data (oamg#667)
- config library: introduce `get_target_major_version` and `get_source_major_version` functions
- fetch library: the `fetch_or_read` function allows to specify the file encoding (oamg#717)
- mounting library: add the remove_tree isolated action (oamg#517)
- testutils library: CurrentActorMocked: implemented the get_actor_file_path method (oamg#517)
pirat89 added a commit that referenced this pull request Oct 19, 2021
## Packaging
- Add dependency on `dnf-command(config-manager)` (#701)
- Added a dependency on leapp as the new rpm provides leapp commands (#701, #)
- Bumped leapp-repository-dependencies to 6 (#701)
- Provides the leapp-upgrade capability, so users can install all packages just by the `yum install leapp-upgrade` command (#701)
- Support building on RHEL 8 systems: leapp-upgrade-el8toel9 (#701)
- The leapp-repository rpm has been renamed to leapp-upgrade-el7toel8 for RHEL 7 (#701)

## Upgrade handling
### Fixes
- Check all devices (not only PCI devices) for possible removed drivers (#666)
- 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 (#706)
- Enhance the check of required free space on disk for the upgrade (#734)
- Fix XFS ftype=0 workaround when "non-XFS" rootfs is present (#674)
- Fix detection of XFS partitions without ftype (#678)
- Fix handling of /etc/yum.repos.d directory for RHUI (#730)
- Fix handling of issues when fetching leapp data files
- Fix incorrect mapping of RHEL repositories (#714)
- Fix invalid detection of RHEL-ALT on RHEL 8 systems
- Fix the detection of NFS partitions in /etc/fstab (#712)
- Fix the report message when multiple NICs with ethX names are present (#640)
- Introduce the LEAPP_NO_NETWORK_RENAMING environment variable to leave management of NICs names on user when set to '1'; fixes e.g. problems with bonding configuration (#721)
- Various Python3 compatibility fixes in regards to prepare for IPU 8 -> 9 (#680, #679, #681, #688)

### Enhancements
- Changed supported upgrade path for RHEL with SAP: RHEL with SAP 7.9 -> 8.2
- Add PostgresqlCheck actor for basic reporting about PostgresSQL changes (#136)
- Add multiple attempts to fetch data from server and increased the timeout to improve the experience on systems with unstable network connection
- Add possibility to influence creation of targetuserspace container, upgrade initramfs, and target initramfs (#517)
- Add the scandasd actor to check if DASD is used on s390x arch (#517)
- Enable upgrades for SAP on AWS & Azure using RHUI (#736, #739)
- Generate /etc/migration-results upon leapp preupgrade / upgrade execution to inform about status of the migration (#719)
- Improve the report message when BTRFS is detected (#727)
- Inhibit the upgrade if any CIFS entries found in /etc/fstab (#632)
- Inhibit the upgrade if any deprecated OpenSSH configuration options / directives are detected (#695)
- Inhibit the upgrade when multiple rescue boot entries exist on s390x (#700)
- Inhibit the upgrade when x32b and x64b versions of packages are installed (#628)
- Introduce hard preservation of leapp packages during the IPU (#701)
- Introduce new system of automatic mapping of RHEL repositories for the in-place upgrade based on the repomap.json file (#714)
- Introduce the --channel CLI option to specify the channel (e.g. eus) supposed to be used for the upgrade (#728)
- Report the problems with target repositories using inhibitors instead of error messages (#731)
- Restore the leapp environment variables on --resume execution after the reboot of the system (#724)
- Update (or create) the /etc/{yum,dnf}/var/releasever file if exists or RHUI is detected (#720)

## Additional changes interesting for devels
- CLI: leapp CLI commands are now part of leapp-repository in the `commands` directory (#662)
- Drop of RepositoriesMap and RepositoryMap models as these have been replaced by new 'private' models and it was no possible to keep the original functionality connected to connected to these old models (#714)
- Dropped possibility to upgrade from/to HTB systems (HTB doesn't exist anymore)
- Introduced the LEAPP_DEVEL_USE_PERSISTENT_PACKAGE_CACHE envar for development and testing purposes to speed up the process, but use of the envar could end with some issues when the cached data is not fresh (#725)
- Introduced many changes as preparation for the IPU 8 -> 9
- Introduced the upgrade/common leapp repository: contains fundamental parts generic for all IPUs
- Introduced the upgrade/el8toel9 leapp repository: contains stuff related just for IPU 8 -> 9; depends on the upgrades/common repository
- The upgrade/el7toel8 leapp repository contains only stuff related to IPU 7 -> 8
- Makefile: introduce the `fast_lint` target to run linters just on files different from master (#722)
- The InstalledRPM model is extended by module:stream data (#667)
- config library: introduce `get_target_major_version` and `get_source_major_version` functions
- fetch library: the `fetch_or_read` function allows to specify the file encoding (#717)
- mounting library: add the remove_tree isolated action (#517)
- testutils library: CurrentActorMocked: implemented the get_actor_file_path method (#517)
MichalHe pushed a commit to MichalHe/leapp-repository that referenced this pull request Jun 21, 2022
* Fix incorrect request to TF service

* Print TF request/response for easier debugging
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.

6 participants