yum
upgrades for production use, this is the repository for you.
Active subscription is required.
;tldr
yum --enablerepo=epel-testing install python2-boto3
For previous, fix, read below:
yum install --setopt=obsoletes=0 python2-certbot-dns-route53
If you’re here then you want to install python2-certbot-dns-route53
(or anything that depends on python2-boto3
) and it fails due to the yum error:
yum install python2-certbot-dns-route53 Loaded plugins: priorities 7 packages excluded due to repository priority protections Resolving Dependencies --> Running transaction check ---> Package python2-certbot-dns-route53.noarch 0:0.27.1-1.el7 will be installed --> Processing Dependency: python2-boto3 for package: python2-certbot-dns-route53-0.27.1-1.el7.noarch --> Running transaction check ---> 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 --> Processing Dependency: python2-jmespath >= 0.7.1 for package: python2-boto3-1.4.6-1.el7.noarch --> Processing Dependency: python2-botocore >= 1.5.0 for package: python2-boto3-1.4.6-1.el7.noarch --> Processing Dependency: python-futures >= 2.2.0 for package: python2-boto3-1.4.6-1.el7.noarch --> Running transaction check ---> 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 ---> Package python2-botocore.noarch 0:1.6.0-1.el7 will be installed --> Processing Dependency: python-docutils >= 0.10 for package: python2-botocore-1.6.0-1.el7.noarch --> Processing Dependency: python-dateutil >= 1.4 for package: python2-botocore-1.6.0-1.el7.noarch ---> Package python2-futures.noarch 0:3.1.1-5.el7 will be installed ---> Package python2-jmespath.noarch 0:0.9.0-3.el7 will be installed --> Running transaction check ---> Package python-dateutil.noarch 0:1.5-7.el7 will be installed ---> Package python-docutils.noarch 0:0.11-0.3.20130715svn7687.el7 will be installed ---> 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 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
The key issue here is:
Package python2-s3transfer is obsoleted by python-s3transfer, but obsoleting package does not provide for requirements
And it has been filed as a bug here. But if you want to resolve this earlier, and be able to install your stuff, you can! Just run:
yum install --setopt=obsoletes=0 python2-certbot-dns-route53
Loaded plugins: priorities 7 packages excluded due to repository priority protections Resolving Dependencies --> Running transaction check ---> Package python2-certbot-dns-route53.noarch 0:0.27.1-1.el7 will be installed --> Processing Dependency: python2-boto3 for package: python2-certbot-dns-route53-0.27.1-1.el7.noarch --> Running transaction check ---> 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 --> Processing Dependency: python2-jmespath >= 0.7.1 for package: python2-boto3-1.4.6-1.el7.noarch --> Processing Dependency: python2-botocore >= 1.5.0 for package: python2-boto3-1.4.6-1.el7.noarch --> Processing Dependency: python-futures >= 2.2.0 for package: python2-boto3-1.4.6-1.el7.noarch --> Running transaction check ---> Package python2-botocore.noarch 0:1.6.0-1.el7 will be installed --> Processing Dependency: python-docutils >= 0.10 for package: python2-botocore-1.6.0-1.el7.noarch --> Processing Dependency: python-dateutil >= 1.4 for package: python2-botocore-1.6.0-1.el7.noarch ---> Package python2-futures.noarch 0:3.1.1-5.el7 will be installed ---> Package python2-jmespath.noarch 0:0.9.0-3.el7 will be installed ---> Package python2-s3transfer.noarch 0:0.1.10-1.el7 will be installed --> Running transaction check ---> Package python-dateutil.noarch 0:1.5-7.el7 will be installed ---> Package python-docutils.noarch 0:0.11-0.3.20130715svn7687.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================ Package Arch Version Repository Size ============================================================================================================================================================================================================ Installing: python2-certbot-dns-route53 noarch 0.27.1-1.el7 epel 22 k Installing for dependencies: python-dateutil noarch 1.5-7.el7 base 85 k python-docutils noarch 0.11-0.3.20130715svn7687.el7 base 1.5 M python2-boto3 noarch 1.4.6-1.el7 epel 131 k python2-botocore noarch 1.6.0-1.el7 epel 2.4 M python2-futures noarch 3.1.1-5.el7 base 29 k python2-jmespath noarch 0.9.0-3.el7 extras 39 k python2-s3transfer noarch 0.1.10-1.el7 epel 82 k Transaction Summary ============================================================================================================================================================================================================ Install 1 Package (+7 Dependent packages) Total download size: 4.3 M Installed size: 32 M Is this ok [y/d/N]: y Downloading packages: (1/8): python-dateutil-1.5-7.el7.noarch.rpm | 85 kB 00:00:00 (2/8): python-docutils-0.11-0.3.20130715svn7687.el7.noarch.rpm | 1.5 MB 00:00:00 (3/8): python2-boto3-1.4.6-1.el7.noarch.rpm | 131 kB 00:00:00 (4/8): python2-botocore-1.6.0-1.el7.noarch.rpm | 2.4 MB 00:00:00 (5/8): python2-futures-3.1.1-5.el7.noarch.rpm | 29 kB 00:00:00 (6/8): python2-certbot-dns-route53-0.27.1-1.el7.noarch.rpm | 22 kB 00:00:00 (7/8): python2-jmespath-0.9.0-3.el7.noarch.rpm | 39 kB 00:00:00 (8/8): python2-s3transfer-0.1.10-1.el7.noarch.rpm | 82 kB 00:00:00 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Total 5.5 MB/s | 4.3 MB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : python2-futures-3.1.1-5.el7.noarch 1/8 Installing : python2-jmespath-0.9.0-3.el7.noarch 2/8 Installing : python-dateutil-1.5-7.el7.noarch 3/8 Installing : python-docutils-0.11-0.3.20130715svn7687.el7.noarch 4/8 Installing : python2-botocore-1.6.0-1.el7.noarch 5/8 Installing : python2-s3transfer-0.1.10-1.el7.noarch 6/8 Installing : python2-boto3-1.4.6-1.el7.noarch 7/8 Installing : python2-certbot-dns-route53-0.27.1-1.el7.noarch 8/8 Verifying : python-docutils-0.11-0.3.20130715svn7687.el7.noarch 1/8 Verifying : python2-jmespath-0.9.0-3.el7.noarch 2/8 Verifying : python-dateutil-1.5-7.el7.noarch 3/8 Verifying : python2-boto3-1.4.6-1.el7.noarch 4/8 Verifying : python2-botocore-1.6.0-1.el7.noarch 5/8 Verifying : python2-futures-3.1.1-5.el7.noarch 6/8 Verifying : python2-s3transfer-0.1.10-1.el7.noarch 7/8 Verifying : python2-certbot-dns-route53-0.27.1-1.el7.noarch 8/8 Installed: python2-certbot-dns-route53.noarch 0:0.27.1-1.el7 Dependency Installed: python-dateutil.noarch 0:1.5-7.el7 python-docutils.noarch 0:0.11-0.3.20130715svn7687.el7 python2-boto3.noarch 0:1.4.6-1.el7 python2-botocore.noarch 0:1.6.0-1.el7 python2-futures.noarch 0:3.1.1-5.el7 python2-jmespath.noarch 0:0.9.0-3.el7 python2-s3transfer.noarch 0:0.1.10-1.el7 Complete!
JIm
On a CentOS 7.5 system, running
yum –enablerepo=epel-testing -y install python2-boto3
yum –enablerepo=epel -y install certbot python2-certbot-dns-route53
completes without errors, but ‘certbot –version’ (or –anything) dies with
An unexpected error occurred:
VersionConflict: (s3transfer 0.0.1 (/usr/lib/python2.7/site-packages), Requirement.parse(‘s3transfer>=0.1.10,<0.2.0’))
What did I miss?
Danila Vershinin
Tried it on 7.6 without issue. Looks like your python-s3transfer is too old,
so you can try upgrading it first:
Or
Verify what is your package version with
yum list installed | grep s3transfer
.If
certbot
reports that your current version is0.0.1
butyum
says otherwise, then you likely have screwed your system by doing things likepip install
(which is a no-no) asroot
.If that is so, then you can see this post for resolution – basically doing the fix for consequences of playing with
pip
as root.