Bug 1646424
| Summary: | python2-boto3 missing dependency | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Vadym Chepkov <vchepkov> | |
| Component: | python-s3transfer | Assignee: | Oyvind Albrigtsen <oalbrigt> | |
| Status: | CLOSED WONTFIX | QA Contact: | cluster-qe <cluster-qe> | |
| Severity: | unspecified | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 7.5 | CC: | admin, ashleyw, bmw, bperkins, ciapnz, corey, cstratak, me, oalbrigt, tim.tampouris, vchepkov | |
| Target Milestone: | rc | |||
| Target Release: | 7.7 | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1667135 (view as bug list) | Environment: | ||
| Last Closed: | 2021-03-15 07:31:10 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: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1667135 | |||
We are affected by this too. I bet this bug affects many people. Any progress on this? For anyone affected but wanting to quickly bypass issue, using "yum install --setopt=obsoletes=0 ..." like here https://www.getpagespeed.com/troubleshooting/quick-fix-for-installing-python2-certbot-dns-route53-python2-boto3-in-centos-7 works. But that's just a temporary fix for "yum install", the "yum update" is still going to have dependency issue. the problem is still there on our patched latest CentOS7 VMs;
Resolving Dependencies
--> Running transaction check
---> Package python-s3transfer.noarch 0:0.1.13-1.el7.0.1 will be obsoleting
---> Package python2-s3transfer.noarch 0:0.1.10-1.el7 will be obsoleted
--> Processing Dependency: python2-s3transfer >= 0.1.10 for package: python2-boto3-1.4.6-1.el7.noarch
--> Finished Dependency Resolution
Error: Package: python2-boto3-1.4.6-1.el7.noarch (@epel)
Requires: python2-s3transfer >= 0.1.10
Removing: python2-s3transfer-0.1.10-1.el7.noarch (@epel)
python2-s3transfer = 0.1.10-1.el7
Obsoleted By: python-s3transfer-0.1.13-1.el7.0.1.noarch (updates)
~python-s3transfer = 0.1.13-1.el7.0.1
Please advise as the only thing we can do right now is to;
yum update -y --skip-broken
yum install --setopt=obsoletes=0 certbot-dns-route53
It seems there was a bug fixed for 7.5, which unfortunately though created this issue, see bug 1576985 The breakdown is this: python2-boto3 has an explicit requirement on python2-s3transfer, not python-s3transfer. The epel7 package of s3transfer creates a binary rpm called python2-s3transfer, which also provides the virtual name python-s3transfer. The rhel7 package of s3transfer creates a binary rpm called python-s3transfer, which obsoletes EPEL's python2-s3transfer, but it doesn't provide the python2-s3transfer name, that python2-boto3 explicitly depends on, thus the transaction is failing. Will need to do some testing, possibly through a COPR repo to verify the transaction issue. Adding needinfo on the maintainer to chime in. I'll clone this bug in order to provide a workaround for boto3, to basically require python-s3transfer instead of python2-s3transfer. That should fix the dependency issue for now. (In reply to Vadym Chepkov from comment #0) > python2-boto3 has dependencies issues. It requires version of rpm, which is > missing: > > ---> Package python2-boto3.noarch 0:1.4.6-1.el7 will be installed > --> Processing Dependency: python2-s3transfer >= 0.1.10 for package: > python2-boto3-1.4.6-1.el7.noarch > Package python2-s3transfer is obsoleted by python-s3transfer, but obsoleting > package does not provide for requirements > --> Finished Dependency Resolution > Error: Package: python2-boto3-1.4.6-1.el7.noarch (epel) > Requires: python2-s3transfer >= 0.1.10 > Available: python2-s3transfer-0.1.10-1.el7.noarch (epel) > python2-s3transfer = 0.1.10-1.el7 Through my testing, it seems that if the EPEL repos are enabled, the proper dependencies get pulled. Could you post from which repo you're install python2-boto3? s/install/installing In our case we are on the CENTOS7 VM, which shows we have the EPEL repos enabled. I think the command sbelow are the ones you want? # yum repolist repo id repo name status base/7/x86_64 CentOS-7 - Base 10,019 epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 12,865 extras/7/x86_64 CentOS-7 - Extras 321 gitlab_gitlab-ce/x86_64 gitlab_gitlab-ce 436 gitlab_gitlab-ce-source gitlab_gitlab-ce-source 0 go-repo/7/x86_64 go-repo - CentOS 309 updates/7/x86_64 CentOS-7 - Updates 647 yarn Yarn Repository 40 repolist: 24,637 # yum info python2-boto3 Installed Packages Name : python2-boto3 Arch : noarch Version : 1.4.6 Release : 1.el7 Size : 1.1 M Repo : installed From repo : epel Summary : The AWS SDK for Python URL : https://github.com/boto/boto3 License : ASL 2.0 Description : Boto3 is the Amazon Web Services (AWS) Software Development : Kit (SDK) for Python, which allows Python developers to : write software that makes use of services like Amazon S3 : and Amazon EC2. If I do the following; # yum remove python2-boto3 ... Removing: python2-boto3 noarch 1.4.6-1.el7 @epel 1.1 M Removing for dependencies: python2-certbot-dns-route53 noarch 0.27.1-1.el7 @epel 53 k .... # yum update -y ... Installed: python-s3transfer.noarch 0:0.1.13-1.el7.0.1 Replaced: python2-s3transfer.noarch 0:0.1.10-1.el7 but then I have to do a; yum install certbot-dns-route53 (as this was removed as part of the yum remove python2-bot3 command) and then I put back to the dependency problem again. so my only course of action is to do a; yum install --setopt=obsoletes=0 certbot-dns-route53 Where to now? cheers Ashley (In reply to Ashley from comment #11) > In our case we are on the CENTOS7 VM, which shows we have the EPEL repos > enabled. I think the command sbelow are the ones you want? > # yum repolist > repo id repo name > status > base/7/x86_64 CentOS-7 - Base > 10,019 > epel/x86_64 Extra Packages for > Enterprise Linux 7 - x86_64 12,865 > extras/7/x86_64 CentOS-7 - Extras > 321 > gitlab_gitlab-ce/x86_64 gitlab_gitlab-ce > 436 > gitlab_gitlab-ce-source gitlab_gitlab-ce-source > 0 > go-repo/7/x86_64 go-repo - CentOS > 309 > updates/7/x86_64 CentOS-7 - Updates > 647 > yarn Yarn Repository > 40 > repolist: 24,637 > > # yum info python2-boto3 > Installed Packages > Name : python2-boto3 > Arch : noarch > Version : 1.4.6 > Release : 1.el7 > Size : 1.1 M > Repo : installed > From repo : epel > Summary : The AWS SDK for Python > URL : https://github.com/boto/boto3 > License : ASL 2.0 > Description : Boto3 is the Amazon Web Services (AWS) Software Development > : Kit (SDK) for Python, which allows Python developers to > : write software that makes use of services like Amazon S3 > : and Amazon EC2. > > > If I do the following; > # yum remove python2-boto3 > ... > Removing: > python2-boto3 noarch > 1.4.6-1.el7 @epel 1.1 M > Removing for dependencies: > python2-certbot-dns-route53 noarch > 0.27.1-1.el7 @epel 53 k > .... > > # yum update -y > ... > Installed: > python-s3transfer.noarch 0:0.1.13-1.el7.0.1 > > Replaced: > python2-s3transfer.noarch 0:0.1.10-1.el7 > > but then I have to do a; > yum install certbot-dns-route53 (as this was removed as part of the yum > remove python2-bot3 command) > > and then I put back to the dependency problem again. > so my only course of action is to do a; > yum install --setopt=obsoletes=0 certbot-dns-route53 > > Where to now? > > cheers > Ashley Could you try to install python2-boto3 from my copr repository and see if the dependency resolution works? Install the yum copr plugin: $ yum install yum-plugin-copr then add the repo: $ yum copr enable cstratak/boto3_dependency_issue and then try to install the package: $ yum install python2-boto3 Does that resolve the dependency issue? Thanks, I can confirm this appears to resolve the issue. Is this workaround to be used until the root issue is resolved? thanks again. (In reply to Ashley from comment #13) > Thanks, I can confirm this appears to resolve the issue. > Is this workaround to be used until the root issue is resolved? > thanks again. Apologies for the late reply, devconf kept me pretty busy. I've issued an update: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-23ae070b4c I'm using bug 1667135 as a placeholder, as the actual bug is on s3transfer. Allow it for some time to reach the testing repositories and you can try out the update and provide feedback. Instructions provided here: https://fedoraproject.org/wiki/EPEL/testing As soon as it hits the stable repos, the issue should be resolved. I can confirm the s3transfer can be updated fine after applying python2-boto3-1.4.6-2. But seriously, 6 months in testing and it didn't make to stable? :) After evaluating this issue, there are no plans to address it further or fix it in an upcoming release. Therefore, it is being closed. If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened. |
python2-boto3 has dependencies issues. It requires version of rpm, which is missing: ---> Package python2-boto3.noarch 0:1.4.6-1.el7 will be installed --> Processing Dependency: python2-s3transfer >= 0.1.10 for package: python2-boto3-1.4.6-1.el7.noarch Package python2-s3transfer is obsoleted by python-s3transfer, but obsoleting package does not provide for requirements --> Finished Dependency Resolution Error: Package: python2-boto3-1.4.6-1.el7.noarch (epel) Requires: python2-s3transfer >= 0.1.10 Available: python2-s3transfer-0.1.10-1.el7.noarch (epel) python2-s3transfer = 0.1.10-1.el7