Curator python-urllib3 from elasticsearch repo conflict with rhel7 package

Hello,
we get some transaction error caused by elasticsearch python-urllib3.

Transaction check error:
file /usr/lib/python2.7/site-packages/urllib3/packages/ssl_match_hostname/init.py from install of python-urllib3-1.14-1.noarch conflicts with file from package python-backports-ssl_match_hostname-3.4.0.2-4.el7.noarch

Repository: http://packages.elasticsearch.org/curator/3/centos/7

Red Hat Enterprise Linux Server release 7.2 (Maipo)

Package Info:
Available Packages
Name : python-urllib3
Arch : noarch
Version : 1.14
Release : 1
Size : 124 k
Repo : elasticsearch
Summary : HTTP library with thread-safe connection pooling for Python
License : MIT
Description : HTTP library with thread-safe connection pooling for Python
: urllib3 supports features left out of urllib and urllib2 libraries.
: .
: - Re-use the same socket connection for multiple requests (HTTPConnectionPool
: and HTTPSConnectionPool) (with optional client-side certificate
: verification).
: - File posting (encode_multipart_formdata).
: - Built-in redirection and retries (optional).
: - Supports gzip and deflate decoding.
: - Thread-safe and sanity-safe.
: - Small and easy to understand codebase perfect for extending and
: building upon.

Can you submit an issue report here: https://github.com/elastic/curator/issues

Thanks!

I open a issue. Thanks.

I'm including the text I responded in the issue as follows:

It sounds like you have some other package which depends on a specific version of python-urllib3 + RHEL's backported security fixes. Unfortunately, I can't force Curator to use plugins from the official RHEL repository.

I am obliged to ship updated plugins for whatever Curator depends on in the Elasticsearch repository. This is for security reasons. If there are collisions, you'll have to do some manual work to install using other repositories.

The reason you're getting conflicts is that the Elasticsearch repository has newer versions of the plugins available, and yum/rpm wants to use the newest by default. Curator should work with the older versions, but I can't put old versions of the plugins in the repository just to satisfy RHEL/CentOS.

My recommendation is to remove the Elasticsearch Curator repository and use the default repository. If there are dependencies not met, install each manually until Curator works.

This is why I recommend using pip instead of packages in the official documentation. It saves a lot of headache in this vein.