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

Fix run of unit tests in case on system with installed pytest #589

Merged
merged 1 commit into from
Sep 17, 2020

Conversation

pirat89
Copy link
Member

@pirat89 pirat89 commented Sep 17, 2020

In case the host system has installed e.g. leapp or pytest already,
the host system libraries are used. In our case, different pytest,
different leapp... than we expact to use for running of unit tests.

To resolve this, do not call pytest dierectly, but load the pytest
library through python.

In case the host system has installed e.g. leapp or pytest already,
the host system libraries are used. In our case, different pytest,
different leapp... than we expact to use for running of unit tests.

To resolve this, do not call pytest dierectly, but load the pytest
library through python.
@pirat89 pirat89 added the bug Something isn't working label Sep 17, 2020
Copy link
Contributor

@zhukovgreen zhukovgreen left a comment

Choose a reason for hiding this comment

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

Good catch, thx for this. However such issues could occur again for any globally installed package, which interfere the requirements txt. We'll fix this completely only when switching to poetry

@pirat89
Copy link
Member Author

pirat89 commented Sep 17, 2020

@zhukovgreen in such case, poetry is becoming more attractive to me :)

@pirat89 pirat89 merged commit 83f7355 into oamg:master Sep 17, 2020
@pirat89
Copy link
Member Author

pirat89 commented Sep 17, 2020

@zhukovgreen Thanks for this fix to you man :)

@zhukovgreen
Copy link
Contributor

@pirat89 Remember the automatic generation of py3 and py2 environments as well:)))

fernflower pushed a commit to fernflower/leapp-repository that referenced this pull request Nov 11, 2020
## Packaging
- Add dependency on python2-leapp and leapp-framework
- Add python-requests as dependency (oamg#407)
- Drop leapp sos plugin (it's part of the sos rpm in RHEL 7.7+)
- Remove dependency on Jinja2 related packages (oamg#407)

## Fixes
- Do not mount pseudo and unsupposrted FS to overlayfs (e.g. proc)
- Evaluate PES events transitively to create correct data for the upgrade transaction
- Fix boot order on EFI systems
- Fix checking of kernel drivers (oamg#400)
- Fix failures caused by local rpms added into the upgrade transaction
- Fix getting mount information with mountpoints with spaces in the path
- Fix handling of XFS without ftype for every such mounted FS
- Fix issue with random booting into old RHEL 7 kernel after the upgrade
- Fix issues on systems with statically mapped IPs in /etc/hosts
- Fix issues with device mapper and udev in a container
- Fix issues with failing rpm transaction calculation because of duplicate instructions for dnf
- Fix various issues related to RHSM (e.g. https://bugzilla.redhat.com/show_bug.cgi?id=1702691)
- Fix yum repository scan in case of repositories with invalid URL
- Inhibit the upgrade if multiple kernel-devel rpms are installed
- Inhibit the upgrade when links on root dir '/' are not absolute to save the world
- Parse correctly kernel cmdline inside the initrd (oamg#383) (fixes various issues on s390x)
- Print warnings instead of a hard failure when expected rpms cannot be found (e.g. python3-nss inside an rpm module) (oamg#405)
- Remove java11-openjdk-headless during the upgrade (https://bugzilla.redhat.com/show_bug.cgi?id=1820172)
- Throw a nice error when invalid locale is set (oamg#430)

## Enhancements
- Add initial multipath support (it doesn't handle all cases yet)
- Changed upgrade paths: RHEL-ALT 7.6 -> 8.2; RHEL 7.8 -> 8.2
- Check if the latest installed kernel is booted before the upgrade
- Check that the system satisfies minimum memory requirements for the upgrade (oamg#413)
- Dump `grub2-editenv list` output to help with issues related to the default kernel for the boot
- Improved report related to KDE/GNOME
- Inhibit the upgrade for ipa-server (oamg#481)
- Inhibit the upgrade on EFI systems when efibootmgr is not installed
- Inhibit the upgrade on FIPS systems
- Inhibit the upgrade when the raised dialogs are missing answers (oamg#589)
- Introduce new ways of using custom repositories during the transaction
- Make report messages more explicit about Dialogs (oamg#600)
- Migrate SpamAssassin
- Migrate cups-filters
- Migrate sane-backend
- Modify vim configuration to keep the original behaviour
- Report changes in wireshark
- Support the upgrade without the use of subscription-manager
- The name and baseurl field in the CustomTargetRepository message are optional now
- Use the new framework mechanism to inhibit the upgrade without reporting errors
- Various texts are improved based on the feedback

## Additional changes interesting for devels
- Add new functions in the config library to get envars related to leapp
- Add support for testing with Beta and HTB systems
- LEAPP_SKIP_CHECK_OS_RELEASE has been renamed to LEAPP_DEVEL_SKIP_CHECK_OS_RELEASE
- Provide info about kernel cmdline via KernelCmdline message
- The IPUConfig message contains information about booted kernel
- The code is mostly Py2/Py3 compatible now and all PRs are tested on Py2 and Py3 compatibility (linters, unit-tests)
- The config.version library contains is_rhel_alt() for detection of RHEL-ALT
@pirat89 pirat89 deleted the fix_run_of_pytest branch May 5, 2021 12:57
MichalHe pushed a commit to MichalHe/leapp-repository that referenced this pull request Jun 21, 2022
## Packaging
- Add BuildRequires on python2-setuptools
- Add new dependency on python2-requests
- Add unversioned dependency on leapp-repository and provide
  the leapp-framework capability in python2-leapp (see docs about
  "new dependency mechanism") (oamg#591)
- Move all leapp and snactor files into related rpms instead of python?-leapp (oamg#591)
- Remove dependency on Jinja2

## Framework
### Fixes
- Fix json export capabilities using serialization (oamg#598)

### Enhancements
- Add the DESKTOP tag for the leapp report (oamg#612)
- Dialogs are non-interactive and redesigned significantly; but in beta support
  (see the known issue)
- Introduce DialogModel that could be processed by actors to add related
  information into the report (oamg#589)
- Introduce Workflow API (see the Workflow APIs tutorial) (oamg#618)
- Report inhibitors separately from errors on stdout (oamg#620)
- Show progress in non-verbose executions (oamg#621)

### Known issue
- The answerfile is not generated on some machines after the run of leapp.
  Currently it's under investigation.

## Leapp
### Fixes
- Print message about generated report when `leapp upgrade` ends, as we do for
  `leapp preupgrade` (oamg#573)

### Enhancements
- Add `leapp answer` to answer Dialog questions in CLI (oamg#592)
- Add the --no-rhsm option for (pre)upgrade commands (oamg#622)
- Add the --enablerepo option for Leapp to use an existing custom yum/dnf
repository during the upgrade
- Display a warning when leapp is used in an unsupported (devel/testing) mode (oamg#577)
- Print errors on stdout in pretty format (oamg#593)
- Error messages are now part of the preupgrade report
- The verbosity options (--verbose | --debug) are available for leapp commands as well

## stdlib
### Enhancements
- Add `stdin` and `encoding` parameters in the run function (oamg#583, oamg#595)

## Modifications
- Code is compatible with Python3 pylint
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants