--- # Copyright 2014, Rackspace US, Inc. # # 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. # TODO(odyssey4me): # This can be simplified once all the roles are using # python_venv_build. We can then switch to using a # set of constraints in pip.conf inside the venv, # perhaps prepared by giving a giving a list of # constraints to the role. - name: Create developer mode constraint file copy: dest: "/opt/developer-pip-constraints.txt" content: | {% for item in cinder_developer_constraints %} {{ item }} {% endfor %} when: cinder_developer_mode | bool - name: Ensure remote wheel building is disabled in developer mode set_fact: venv_build_host: "{{ ansible_hostname }}" when: - cinder_developer_mode | bool - name: Install the python venv include_role: name: "python_venv_build" private: yes vars: venv_build_distro_package_list: "{{ cinder_devel_distro_packages }}" venv_install_destination_path: "{{ cinder_bin | dirname }}" venv_install_distro_package_list: "{{ cinder_distro_packages }}" venv_pip_install_args: "{{ cinder_pip_install_args }}" venv_pip_packages: >- {{ cinder_pip_packages + (cinder_oslomsg_amqp1_enabled | bool) | ternary(cinder_optional_oslomsg_amqp1_pip_packages, []) }} venv_facts_when_changed: - section: "cinder" option: "need_service_restart" value: True - section: "cinder" option: "need_online_data_migrations" value: True - section: "cinder" option: "venv_tag" value: "{{ cinder_venv_tag }}" - name: Copy cinder rootwrap filters command: >- rsync --archive --itemize-changes --delete /openstack/venvs/cinder-{{ cinder_venv_tag }}/etc/cinder/rootwrap.d/ /etc/cinder/rootwrap.d/ args: warn: no register: _copy_rootwraps changed_when: _copy_rootwraps.stdout != '' notify: - Manage LB - Restart cinder services