Use PyPi packages for ceph python bindings

Ceph python bindings are now available from pypi, so they can be
installed within a venv. Previously we were relying on the bindings
being installed via an apt package and symlinking out of the relevant
venvs into site packages.

This commit also includes a revert for the commit that introduced the
symlinks:

Revert "Symlink ceph libraries out of venv"

This reverts commit a0ab6f7a6efea1dabf5ac006f766c17596a0d10b.

Ceph Bug: http://tracker.ceph.com/issues/5900
Related-Bug: #1509837
Package URL: https://pypi.python.org/pypi/python-cephlibs/0.94.5.post1

Change-Id: Id8a0b8ea810fd9e43f9743bb2572e2b6b0985230
This commit is contained in:
Hugh Saunders 2015-11-12 09:54:40 +00:00 committed by Jesse Pretorius
parent 5371a0eb93
commit 33c7bc2aa3
6 changed files with 3 additions and 66 deletions

View File

@ -243,6 +243,7 @@ cinder_pip_packages:
- python-cinderclient - python-cinderclient
- python-keystoneclient - python-keystoneclient
- pywbem - pywbem
- python-cephlibs
# Service Names # Service Names
cinder_service_names: cinder_service_names:

View File

@ -124,28 +124,6 @@
- cinder-install - cinder-install
- cinder-pip-packages - cinder-pip-packages
# TODO(mattt): remove once ceph_client role can install ceph packages from pypi
# This is being done as a temporary workaround since we currently cannot obtain
# ceph-related libraries from pypi. There is work in progress [1] to address
# this.
# [1] http://tracker.ceph.com/issues/5900
- name: Link ceph libraries into the venv
file:
src: "{{ item.name }}"
dest: "{{ cinder_venv_bin | dirname }}/lib/python2.7/site-packages/{{ item.name | basename }}"
state: "{{ item.state }}"
force: "yes"
with_items:
- { state: link, name: "/usr/lib/python2.7/dist-packages/rados.py" }
- { state: link, name: "/usr/lib/python2.7/dist-packages/rbd.py" }
when:
- cinder_venv_enabled | bool
- inventory_hostname in groups['cinder_volume']
- cinder_backend_rbd_inuse|bool
tags:
- cinder-install
- cinder-pip-packages
- name: Install pip packages (no venv) - name: Install pip packages (no venv)
pip: pip:
name: "{{ item }}" name: "{{ item }}"

View File

@ -192,6 +192,7 @@ glance_pip_packages:
- python-cinderclient - python-cinderclient
- python-keystoneclient - python-keystoneclient
- warlock - warlock
- python-cephlibs
## Service Names ## Service Names
glance_service_names: glance_service_names:

View File

@ -124,28 +124,6 @@
- glance-install - glance-install
- glance-pip-packages - glance-pip-packages
# TODO(mattt): remove once ceph_client role can install ceph packages from pypi
# This is being done as a temporary workaround since we currently cannot obtain
# ceph-related libraries from pypi. There is work in progress [1] to address
# this.
# [1] http://tracker.ceph.com/issues/5900
- name: Link ceph libraries into the venv
file:
src: "{{ item.name }}"
dest: "{{ glance_venv_bin | dirname }}/lib/python2.7/site-packages/{{ item.name | basename }}"
state: "{{ item.state }}"
force: "yes"
with_items:
- { state: link, name: "/usr/lib/python2.7/dist-packages/rados.py" }
- { state: link, name: "/usr/lib/python2.7/dist-packages/rbd.py" }
when:
- glance_venv_enabled | bool
- inventory_hostname in groups['glance_api']
- glance_default_store == 'rbd'
tags:
- glance-install
- glance-pip-packages
- name: Install pip packages (no venv) - name: Install pip packages (no venv)
pip: pip:
name: "{{ item }}" name: "{{ item }}"

View File

@ -312,6 +312,7 @@ nova_pip_packages:
- python-novaclient - python-novaclient
- keystonemiddleware - keystonemiddleware
- nova - nova
- python-cephlibs
## Tunable overrides ## Tunable overrides

View File

@ -77,28 +77,6 @@
- nova-install - nova-install
- nova-pip-packages - nova-pip-packages
# TODO(mattt): remove once ceph_client role can install ceph packages from pypi
# This is being done as a temporary workaround since we currently cannot obtain
# ceph-related libraries from pypi. There is work in progress [1] to address
# this.
# [1] http://tracker.ceph.com/issues/5900
- name: Link ceph libraries into the venv
file:
src: "{{ item.name }}"
dest: "{{ nova_venv_bin | dirname }}/lib/python2.7/site-packages/{{ item.name | basename }}"
state: "{{ item.state }}"
force: "yes"
with_items:
- { state: link, name: "/usr/lib/python2.7/dist-packages/rados.py" }
- { state: link, name: "/usr/lib/python2.7/dist-packages/rbd.py" }
when:
- nova_venv_enabled | bool
- inventory_hostname in groups['nova_compute']
- (cinder_backends_rbd_inuse|bool or nova_libvirt_images_rbd_pool is defined)
tags:
- nova-install
- nova-pip-packages
- name: Install pip packages (no venv) - name: Install pip packages (no venv)
pip: pip:
name: "{{ item }}" name: "{{ item }}"