# Copyright (c) 2018 OpenStack Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or # implied. # See the License for the specific language governing permissions and # limitations under the License. - hosts: all become: true roles: - ensure-pip tasks: - name: upgrade pip, but not too far pip: # 20.* works on both py2 and py3, and the pip for centos7 in EPEL # isn't smart enough to prevent us upgrading to 21+ name: pip<21 extra_args: --upgrade - name: install rsync-daemon - CentOS 8 package: name: rsync-daemon state: present when: - ansible_facts['distribution'] == "CentOS" - ansible_facts['distribution_major_version'] == "8" - name: install python modules with pip pip: name={{ item }} state=present extra_args='--upgrade' with_items: # For some reason, pip on py2 isn't smart enough to prevent us # trying to install a too-new mock or attrs?? - 'mock<4' - 'attrs<22.1.0' # crudini pulls in iniparse which can conflict with distro-installed # packages on centos7 - 'crudini<0.9.4' # Order matters; install constrained versions *first*, then unconstrained - eventlet - pyeclib - pytest - pytest-cov - python-swiftclient - name: install PasteDeploy - CentOS 7 pip: name={{ item }} state=present extra_args='--upgrade' with_items: # py2_constraints isn't obeyed by pip install swift - 'PasteDeploy==2.1.1' when: - ansible_facts['distribution'] == "CentOS" - ansible_facts['distribution_major_version'] == "7"