RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1620062 - Red Hat OpenStack update to rhel 7.6 python2-futures conflicts with OSP 13 python2-futures
Summary: Red Hat OpenStack update to rhel 7.6 python2-futures conflicts with OSP 13 py...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: python-futures
Version: 7.6
Hardware: All
OS: All
urgent
urgent
Target Milestone: rc
: ---
Assignee: Charalampos Stratakis
QA Contact: Jan Kepler
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-08-22 11:09 UTC by Carlos Camacho
Modified: 2018-10-30 10:44 UTC (History)
9 users (show)

Fixed In Version: python-futures-3.1.1-5.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-10-30 10:44:14 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2018:3162 0 None None None 2018-10-30 10:44:33 UTC

Description Carlos Camacho 2018-08-22 11:09:47 UTC
Description of problem:

Upgrading a OSP13 Undercloud to OSP14

How reproducible 100%:


Steps to Reproduce:
Check the subscription manager status
=====================================

    sudo subscription-manager register --username <RHN_USERNAME> --password <RHN_PASSWORD>
    sudo subscription-manager list --available

    #---------------------------------------------------
    #...
    #Subscription Name:   Red Hat Enterprise Linux Developer Suite
    #Pool ID:             1234567890
    #...
    #---------------------------------------------------
    sudo subscription-manager attach --pool 1234567890




Undercloud upgrade procedure:
=============================
Backup current repos
--------------------
    
    # Just in case
    mkdir -p /home/stack/REPOBACKUP
    sudo mv /etc/yum.repos.d/delorean* /home/stack/REPOBACKUP
    sudo rm /etc/yum.repos.d/delorean*

Enable repos 
------------

    # Run a minor upgrade in the Undercloud to install ansible-pacemaker
    openstack undercloud upgrade

    sudo yum localinstall -y http://download.lab.bos.redhat.com/rcm-guest/puddles/OpenStack/rhos-release/rhos-release-latest.noarch.rpm
    # disable OSP repos and enable OSP14 repos
    sudo rhos-release -x        # to remove RHOS repos
    sudo rhos-release -P 14     # to install RHOS-14 repos
    
    # We need to be sure we are using the last repos
    sudo yum clean all
    sudo rm -rf /var/cache/yum

Undercloud Upgrade
------------------

    # Be sure you source stackrc for running the validations
    source stackrc
    sudo yum -y update python-tripleoclient
    sudo yum -y update openstack-tripleo-common-containers

    openstack overcloud container image prepare \
    --namespace rhos-qe-mirror-tlv.usersys.redhat.com:5000/rhosp14 \
    --tag-from-label {version}-{release} \
    -e /usr/share/openstack-tripleo-heat-templates/environments/docker.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/undercloud.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/ironic-inspector.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/mistral.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/zaqar.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/tripleo-ui.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/tempest.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/undercloud-haproxy.yaml \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/undercloud-keepalived.yaml \
    --roles-file=/usr/share/openstack-tripleo-heat-templates/roles_data_undercloud.yaml \
    --output-env-file /home/stack/undercloud-containers.yaml
    
    
    #Add to [DEFAULT] section in undercloud.conf:
    echo "container_images_file = /home/stack/undercloud-containers.yaml" >> undercloud.conf

    #Upgrade the Undercloud to be containerized.
    openstack undercloud upgrade -y --use-heat 2>&1

Actual results:
  Upgrade fails due to:

file /usr/lib/python2.7/site-packages/futures-3.1.1-py2.7.egg-info from install of python2-futures-3.1.1-4.el7.noarch conflicts with file from package python2-futures-3.1.1-2.1.el7ost.noar│··················································
ch  



Expected results:
  Upgrade complete

Comment 2 Charalampos Stratakis 2018-08-22 11:24:50 UTC
There is a conflict here as openstack ships also the python-futures package which was recently added to RHEL7.

Adding the needinfo flag on the last person who did a change to this package.

Comment 3 Jon Schlueter 2018-08-22 11:52:15 UTC
so looks like this is coming from rhel 7.6 content

The difference I see between the two builds looks to be the addition of BuildRequires: python-setuptools in python-futures-3.1.1-2.1.el7ost build.

Adjusting to 7.6 where it was found in.

Comment 4 Jon Schlueter 2018-08-22 12:38:07 UTC
this appears to be issue that python-futures-3.1.1-4.el7 has egg-info as a file but python-futures-3.1.1-2.1.el7ost has egg-info as a folder.

From OSP 12 and before we had python-futures-3.0.3-1.el7ost built for OSP 8 back in 2018-10-23 and that had egg-info as a folder as well.

Can we please rebuild python-futures for rhel 7.6 to have egg-info as a folder instead of a file (which is fixed by BuildRequires: python-setuptools)

- rebuild with missed python-setuptools

Comment 6 Jon Schlueter 2018-08-22 12:46:33 UTC

[root@78e852c0f3f9 /]# rpm -qa python2-futures
python2-futures-3.1.1-2.1.el7ost.noarch
[root@78e852c0f3f9 /]# ls /usr/lib/python2.7/site-packages/futures-3.1.1-py2.7.egg-info/ -la
total 24
drwxr-xr-x.  2 root root  110 Aug 22 12:41 .
drwxr-xr-x. 17 root root 4096 Aug 22 12:41 ..
-rw-r--r--.  1 root root  621 May 14 19:54 PKG-INFO
-rw-r--r--.  1 root root  440 May 14 19:54 SOURCES.txt
-rw-r--r--.  1 root root    1 May 14 19:54 dependency_links.txt
-rw-r--r--.  1 root root    1 Apr 14  2017 not-zip-safe
-rw-r--r--.  1 root root   11 May 14 19:54 top_level.txt


[root@78e852c0f3f9 /]# rpm -qa python2-futures
python2-futures-3.1.1-4.el7.noarch
[root@78e852c0f3f9 /]# ls /usr/lib/python2.7/site-packages/futures-3.1.1-py2.7.egg-info -la
-rw-r--r--. 1 root root 621 May 21 16:51 /usr/lib/python2.7/site-packages/futures-3.1.1-py2.7.egg-info

Comment 7 Jon Schlueter 2018-08-22 13:00:37 UTC
simpler Reproducer case

enable OSP 13 channel 

# yum install -y python2-futures-3.1.1-2.1.el7ost

# yum install -y python2-futures-3.1.1-4.el7.noarch.rpm

...

Marking python2-futures-3.1.1-4.el7.noarch.rpm as an update to python2-futures-3.1.1-2.1.el7ost.noarch

....

==============================================================================================================================================================================================================================================
 Package                                                 Arch                                           Version                                             Repository                                                                   Size
==============================================================================================================================================================================================================================================
Updating:
 python2-futures                                         noarch                                         3.1.1-4.el7                                         /python2-futures-3.1.1-4.el7.noarch                                          90 k

Transaction Summary
==============================================================================================================================================================================================================================================
Upgrade  1 Package

Total size: 90 k
Downloading packages:
Running transaction check
Running transaction test


Transaction check error:
  file /usr/lib/python2.7/site-packages/futures-3.1.1-py2.7.egg-info from install of python2-futures-3.1.1-4.el7.noarch conflicts with file from package python2-futures-3.1.1-2.1.el7ost.noarch


....

Expected behaviour upgrade to complete without errors.

Comment 8 Alfredo Moralejo 2018-08-22 13:16:30 UTC
In fedora both -2 and -4 have egg-info as directory.

Comment 9 Alfredo Moralejo 2018-08-22 13:29:44 UTC
I don't see setuptools installed in 3.1.1-2 buildroot http://cbs.centos.org/kojifiles/packages/python-futures/3.1.1/2.el7/data/logs/noarch/root.log

Comment 10 Jon Schlueter 2018-08-22 14:36:33 UTC
 koji download-build python-futures-3.1.1-4.fc29  (fedora build) upgrades cleanly from the version shipped in OSP 13


# yum install -y python2-futures-3.1.1-2.1.el7ost
[root@ff5005fe4cf0 ~]# yum install -y python2-futures-3.1.1-4.fc29.noarch.rpm
...

Running transaction
  Updating   : python2-futures-3.1.1-4.fc29.noarch         1/2
  Cleanup    : python2-futures-3.1.1-2.1.el7ost.noarch     2/2
  Verifying  : python2-futures-3.1.1-4.fc29.noarch         1/2
  Verifying  : python2-futures-3.1.1-2.1.el7ost.noarch     2/2

Updated:
  python2-futures.noarch 0:3.1.1-4.fc29                                                                                                                                                                                                      

Complete!

Comment 12 Carlos Camacho 2018-08-23 09:11:22 UTC
Just a quick workaround to be able to progress with the regression testing from OSP13->OSP14

I excluded python2-futures from rhel-7-server-htb-rpms in redhat.repos

by adding:

exclude=python2-futures

It seemed to work and there are no other conflicts with any other packages.

Comment 13 Charalampos Stratakis 2018-08-29 14:45:20 UTC
In order to fix that we'll require an exception and a blocker at this timeframe.

It's an easy fix from the dev's point of view however approval must be granted.

adding needinfo on jkepler from QE side as well as ovasik to determine if an exception/blocker ack can be justified.

Comment 16 Carlos Camacho 2018-09-11 13:13:55 UTC
Hello,

I'm not able to reproduce this issue anymore with python2-futures-3.1.1-5

Comment 19 errata-xmlrpc 2018-10-30 10:44:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2018:3162


Note You need to log in before you can comment on or make changes to this bug.