Bug 1914269

Summary: python-avocado is way out of date, and unsupported
Product: [Fedora] Fedora EPEL Reporter: Brian J. Murrell <brian.murrell>
Component: python-avocadoAssignee: Merlin Mathesius <mmathesi>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: epel7CC: crosa, mmathesi
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python-avocado-69.2-1.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-27 00:18:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Brian J. Murrell 2021-01-08 13:51:35 UTC
Description of problem:
The version of python-avocado in EPEL7 is **way** out of date and not even supported any more.

Version-Release number of selected component (if applicable):
52.1

It would be good to get this up to date, at least into the supported window.

Comment 1 Fedora Update System 2021-02-11 22:12:42 UTC
FEDORA-EPEL-2021-e2d8ddf85b has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-e2d8ddf85b

Comment 2 Merlin Mathesius 2021-02-11 22:15:36 UTC
Update to 69LTS has been submitted.

It also appears that 69LTS is the last release of avocado that will supported on EPEL7.

Comment 3 Fedora Update System 2021-02-12 02:24:52 UTC
FEDORA-EPEL-2021-e2d8ddf85b has been pushed to the Fedora EPEL 7 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-e2d8ddf85b

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 4 Brian J. Murrell 2021-02-12 11:56:36 UTC
(In reply to Merlin Mathesius from comment #2)
> Update to 69LTS has been submitted.

Why only 69LTS and not the more recent 82LTS?

> It also appears that 69LTS is the last release of avocado that will
> supported on EPEL7.

Why is this?

Comment 5 Merlin Mathesius 2021-02-15 15:25:02 UTC
> > Update to 69LTS has been submitted.
> 
> Why only 69LTS and not the more recent 82LTS?
> 
> > It also appears that 69LTS is the last release of avocado that will
> > supported on EPEL7.
> 
> Why is this?

The upstream releases of Avocado from 70.0 onward no longer build on EPEL7, and thus simply cannot be  packaged for EPEL7.

Comment 6 Brian J. Murrell 2021-02-16 14:02:30 UTC
(In reply to Merlin Mathesius from comment #5)
> The upstream releases of Avocado from 70.0 onward no longer build on EPEL7,
> and thus simply cannot be  packaged for EPEL7.

Yes.  This part was obvious.  So I was asking for what reason(s) that it didn't build.

Comment 7 Cleber Rosa 2021-02-16 15:58:35 UTC
(In reply to Brian J. Murrell from comment #6)
> Yes.  This part was obvious.  So I was asking for what reason(s) that it
> didn't build.

EPEL 7 has Python 2 as its primary version, with Python 3 version of some packages not available, and that includes dependencies for some plugins.  Example of failed build:

---

$ git checkout 82lts
$ make MOCK_CONFIG=epel-7-x86_64
...
Getting requirements for python-avocado-82.0-1.20201028gitf3f1094f6.el7.src
 --> Already installed : procps-ng-3.3.10-28.el7.x86_64
 --> Already installed : kmod-20-28.el7.x86_64
 --> python3-devel-3.6.8-18.el7.x86_64
 --> python36-lxml-4.2.5-3.el7.x86_64
 --> python36-psutil-5.6.7-1.el7.x86_64
 --> python3-setuptools-39.2.0-10.el7.noarch
 --> genisoimage-1.1.11-25.el7.x86_64
 --> libcdio-0.92-3.el7.x86_64
 --> psmisc-22.20-17.el7.x86_64
 --> python36-netifaces-0.10.9-1.el7.x86_64
Error: No Package found for python3-docutils
Error: No Package found for python3-jinja2
Error: No Package found for python3-yaml

make: *** [Makefile.include:18: rpm] Error 30

---

Technically it could be possible to modify the SPEC file and make it skip the build of some plugins.  That packaging "fix" could be accepted upstream and unto 82lts, and then backported downstream.

Comment 8 Brian J. Murrell 2021-02-16 17:13:02 UTC
Great info Cleber.  Exactly what I was looking for.

Ultimately, EL7 is getting too long in the tooth I think.  :-(

Comment 9 Cleber Rosa 2021-02-16 17:33:18 UTC
(In reply to Brian J. Murrell from comment #8)
> Great info Cleber.  Exactly what I was looking for.
> 
> Ultimately, EL7 is getting too long in the tooth I think.  :-(

Yeah, we have to pick our fights, and maintaining packages for EPEL 7 at this time was not one we picked.

Depending on your use case, though, you could consider using the plain Python packages available at https://pypi.org/project/avocado-framework/.  Even on the most "bare bones" Python 3 environment, you could do:

  $ python3 -m ensurepip  # only if python3-pip is not available or installed (EPEL 7 will install it)
  $ python3 -m pip install avocado-framework

If you don't have network/internet enabled at deployment time, you can still install from a local wheel file.

The plugins are packaged separately, such as in https://pypi.org/project/avocado-framework-plugin-result-html/, if there are dependencies, they will be pulled from PyPI itself.

Comment 10 Brian J. Murrell 2021-02-23 17:23:52 UTC
(In reply to Fedora Update System from comment #3)
> FEDORA-EPEL-2021-e2d8ddf85b has been pushed to the Fedora EPEL 7 testing
> repository.
> 
> You can provide feedback for this update here:
> https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-e2d8ddf85b
> 
> See also https://fedoraproject.org/wiki/QA:Updates_Testing for more
> information on how to test updates.

Were python3 packages not produced?  If not, why?  According to previous comments 69.0 is supposed to be buildable on EL7.

Comment 11 Fedora Update System 2021-02-27 00:18:05 UTC
FEDORA-EPEL-2021-e2d8ddf85b has been pushed to the Fedora EPEL 7 stable repository.
If problem still persists, please make note of it in this bug report.