Merge "Use a common python build/install role"
This commit is contained in:
commit
6a451848d8
@ -22,7 +22,3 @@ aodh_service_adminuri: "{{ openstack_service_publicuri_proto|default(aodh_servic
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
aodh_package_state: "{{ package_state }}"
|
aodh_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
aodh_venv_tag: "{{ venv_tag }}"
|
|
||||||
aodh_venv_download_url: "{{ venv_base_download_url }}/aodh-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -16,7 +16,3 @@
|
|||||||
barbican_service_region: "{{ service_region }}"
|
barbican_service_region: "{{ service_region }}"
|
||||||
barbican_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
barbican_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
||||||
barbican_keystone_auth: yes
|
barbican_keystone_auth: yes
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
barbican_venv_tag: "{{ venv_tag }}"
|
|
||||||
barbican_venv_download_url: "{{ venv_base_download_url }}/barbican-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -28,10 +28,6 @@ ceilometer_gnocchi_enabled: "{{ groups['gnocchi_all'] is defined and groups['gno
|
|||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
ceilometer_package_state: "{{ package_state }}"
|
ceilometer_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
ceilometer_venv_tag: "{{ venv_tag }}"
|
|
||||||
ceilometer_venv_download_url: "{{ venv_base_download_url }}/ceilometer-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
# Swift vars used when swift is enabled
|
# Swift vars used when swift is enabled
|
||||||
swift_system_user_name: "{{ hostvars['localhost']['swift_system_user_name'] }}"
|
swift_system_user_name: "{{ hostvars['localhost']['swift_system_user_name'] }}"
|
||||||
swift_system_shell: "{{ hostvars['localhost']['swift_system_shell'] }}"
|
swift_system_shell: "{{ hostvars['localhost']['swift_system_shell'] }}"
|
||||||
|
@ -44,9 +44,5 @@ cinder_package_state: "{{ package_state }}"
|
|||||||
# The system user for all cinder services
|
# The system user for all cinder services
|
||||||
cinder_system_user_name: cinder
|
cinder_system_user_name: cinder
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
cinder_venv_tag: "{{ venv_tag }}"
|
|
||||||
cinder_venv_download_url: "{{ venv_base_download_url }}/cinder-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
# If there are any Barbican hosts in the environment, then enable its usage
|
# If there are any Barbican hosts in the environment, then enable its usage
|
||||||
cinder_barbican_enabled: "{{ (groups['barbican_all'] is defined) and (groups['barbican_all'] | length > 0) }}"
|
cinder_barbican_enabled: "{{ (groups['barbican_all'] is defined) and (groups['barbican_all'] | length > 0) }}"
|
||||||
|
@ -18,7 +18,3 @@ congress_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
congress_package_state: "{{ package_state }}"
|
congress_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
congress_venv_tag: "{{ venv_tag }}"
|
|
||||||
congress_venv_download_url: "{{ venv_base_download_url }}/congress-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -18,7 +18,3 @@ designate_ceilometer_enabled: "{{ (groups['designate_all'] is defined) and (grou
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
designate_package_state: "{{ package_state }}"
|
designate_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
designate_venv_tag: "{{ venv_tag }}"
|
|
||||||
designate_venv_download_url: "{{ venv_base_download_url }}/designate-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -25,10 +25,6 @@ glance_default_store: "{{ ((groups['swift_all'] is defined) and (groups['swift_a
|
|||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
glance_package_state: "{{ package_state }}"
|
glance_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
glance_venv_tag: "{{ venv_tag }}"
|
|
||||||
glance_venv_download_url: "{{ venv_base_download_url }}/glance-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
# glance default list of bind mounts
|
# glance default list of bind mounts
|
||||||
glance_container_bind_mounts:
|
glance_container_bind_mounts:
|
||||||
- bind_dir_path: "/var/lib/glance/images"
|
- bind_dir_path: "/var/lib/glance/images"
|
||||||
|
@ -27,10 +27,6 @@ gnocchi_package_state: "{{ package_state }}"
|
|||||||
# Ensure that keystone authentication is enabled for gnocchi
|
# Ensure that keystone authentication is enabled for gnocchi
|
||||||
gnocchi_keystone_auth: "{{ (groups['keystone_all'] is defined) and (groups['keystone_all'] | length > 0) }}"
|
gnocchi_keystone_auth: "{{ (groups['keystone_all'] is defined) and (groups['keystone_all'] | length > 0) }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
gnocchi_venv_tag: "{{ venv_tag }}"
|
|
||||||
gnocchi_venv_download_url: "{{ venv_base_download_url }}/gnocchi-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
# Gnocchi default list of bind mounts
|
# Gnocchi default list of bind mounts
|
||||||
gnocchi_container_bind_mounts:
|
gnocchi_container_bind_mounts:
|
||||||
- bind_dir_path: "/var/lib/gnocchi"
|
- bind_dir_path: "/var/lib/gnocchi"
|
||||||
|
@ -25,7 +25,3 @@ heat_package_state: "{{ package_state }}"
|
|||||||
# Only enable the heat cinder backups functionality if the cinder backup
|
# Only enable the heat cinder backups functionality if the cinder backup
|
||||||
# service is enabled.
|
# service is enabled.
|
||||||
heat_cinder_backups_enabled: "{{ hostvars['localhost']['cinder_service_backup_program_enabled'] }}"
|
heat_cinder_backups_enabled: "{{ hostvars['localhost']['cinder_service_backup_program_enabled'] }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
heat_venv_tag: "{{ venv_tag }}"
|
|
||||||
heat_venv_download_url: "{{ venv_base_download_url }}/heat-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -35,7 +35,3 @@ horizon_package_state: "{{ package_state }}"
|
|||||||
horizon_enable_sahara_ui: "{{ (groups['sahara_all'] is defined) and (groups['sahara_all'] | length > 0) }}"
|
horizon_enable_sahara_ui: "{{ (groups['sahara_all'] is defined) and (groups['sahara_all'] | length > 0) }}"
|
||||||
# If there are any Trove hosts in the environment, then enable trove-dashboard
|
# If there are any Trove hosts in the environment, then enable trove-dashboard
|
||||||
horizon_enable_trove_ui: "{{ (groups['trove_all'] is defined) and (groups['trove_all'] | length > 0) }}"
|
horizon_enable_trove_ui: "{{ (groups['trove_all'] is defined) and (groups['trove_all'] | length > 0) }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
horizon_venv_tag: "{{ venv_tag }}"
|
|
||||||
horizon_venv_download_url: "{{ venv_base_download_url }}/horizon-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -17,7 +17,3 @@ ironic_service_name: ironic
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
ironic_package_state: "{{ package_state }}"
|
ironic_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
ironic_venv_tag: "{{ venv_tag }}"
|
|
||||||
ironic_venv_download_url: "{{ venv_base_download_url }}/ironic-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -33,7 +33,3 @@ keystone_set_real_ip_from: "{{ groups['haproxy'] | map('extract', hostvars, 'con
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
keystone_package_state: "{{ package_state }}"
|
keystone_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
keystone_venv_tag: "{{ venv_tag }}"
|
|
||||||
keystone_venv_download_url: "{{ venv_base_download_url }}/keystone-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -25,7 +25,3 @@ magnum_service_region: "{{ service_region }}"
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
magnum_package_state: "{{ package_state }}"
|
magnum_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
magnum_venv_tag: "{{ venv_tag }}"
|
|
||||||
magnum_venv_download_url: "{{ venv_base_download_url }}/magnum-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -24,8 +24,4 @@ neutron_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
|||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
neutron_package_state: "{{ package_state }}"
|
neutron_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
neutron_venv_tag: "{{ venv_tag }}"
|
|
||||||
neutron_venv_download_url: "{{ venv_base_download_url }}/neutron-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
neutron_lbaas_octavia: "{{ (groups['octavia_all'] is defined) and (groups['octavia_all'] | length > 0) }}"
|
neutron_lbaas_octavia: "{{ (groups['octavia_all'] is defined) and (groups['octavia_all'] | length > 0) }}"
|
||||||
|
@ -59,10 +59,6 @@ nova_package_state: "{{ package_state }}"
|
|||||||
# The system user for all nova services
|
# The system user for all nova services
|
||||||
nova_system_user_name: nova
|
nova_system_user_name: nova
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
nova_venv_tag: "{{ venv_tag }}"
|
|
||||||
nova_venv_download_url: "{{ venv_base_download_url }}/nova-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
# TODO: (andymccr) remove this once https://review.openstack.org/#/c/428120/ merges
|
# TODO: (andymccr) remove this once https://review.openstack.org/#/c/428120/ merges
|
||||||
nova_reserved_host_disk_mb: 0
|
nova_reserved_host_disk_mb: 0
|
||||||
|
|
||||||
|
@ -16,7 +16,3 @@
|
|||||||
octavia_service_internalurl: "{{ octavia_service_internaluri }}/v1/%(project_id)s"
|
octavia_service_internalurl: "{{ octavia_service_internaluri }}/v1/%(project_id)s"
|
||||||
octavia_service_user_name: octavia
|
octavia_service_user_name: octavia
|
||||||
octavia_service_region: "{{ service_region }}"
|
octavia_service_region: "{{ service_region }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
octavia_venv_tag: "{{ venv_tag }}"
|
|
||||||
octavia_venv_download_url: "{{ venv_base_download_url }}/octavia-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -16,7 +16,3 @@ sahara_ceilometer_enabled: "{{ (groups['ceilometer_all'] is defined) and (groups
|
|||||||
|
|
||||||
sahara_service_region: "{{ service_region }}"
|
sahara_service_region: "{{ service_region }}"
|
||||||
sahara_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
sahara_service_in_ldap: "{{ service_ldap_backend_enabled }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
sahara_venv_tag: "{{ venv_tag }}"
|
|
||||||
sahara_venv_download_url: "{{ venv_base_download_url }}/sahara-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -31,10 +31,6 @@ swift_package_state: "{{ package_state }}"
|
|||||||
# Used to optionally filter Gnocchi-originated traffic in Ceilometermiddleware
|
# Used to optionally filter Gnocchi-originated traffic in Ceilometermiddleware
|
||||||
swift_gnocchi_enabled: "{{ (groups['gnocchi_all'] is defined and groups['gnocchi_all'] | length > 0) }}"
|
swift_gnocchi_enabled: "{{ (groups['gnocchi_all'] is defined and groups['gnocchi_all'] | length > 0) }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
swift_venv_tag: "{{ venv_tag }}"
|
|
||||||
swift_venv_download_url: "{{ venv_base_download_url }}/swift-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
|
||||||
# Ceilometer vars used when ceilometer is enabled
|
# Ceilometer vars used when ceilometer is enabled
|
||||||
ceilometer_service_user_name: "{{ hostvars['localhost']['ceilometer_service_user_name'] }}"
|
ceilometer_service_user_name: "{{ hostvars['localhost']['ceilometer_service_user_name'] }}"
|
||||||
ceilometer_service_tenant_name: "{{ hostvars['localhost']['ceilometer_service_tenant_name'] }}"
|
ceilometer_service_tenant_name: "{{ hostvars['localhost']['ceilometer_service_tenant_name'] }}"
|
||||||
|
@ -26,7 +26,3 @@ tacker_gnocchi_enabled: "{{ groups['gnocchi_all'] is defined and groups['gnocchi
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
tacker_package_state: "{{ package_state }}"
|
tacker_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
tacker_venv_tag: "{{ venv_tag }}"
|
|
||||||
tacker_venv_download_url: "{{ venv_base_download_url }}/tacker-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -22,7 +22,3 @@ trove_ceilometer_enabled: "{{ (groups['trove_all'] is defined) and (groups['trov
|
|||||||
|
|
||||||
# Ensure that the package state matches the global setting
|
# Ensure that the package state matches the global setting
|
||||||
trove_package_state: "{{ package_state }}"
|
trove_package_state: "{{ package_state }}"
|
||||||
|
|
||||||
# venv fetch configuration
|
|
||||||
trove_venv_tag: "{{ venv_tag }}"
|
|
||||||
trove_venv_download_url: "{{ venv_base_download_url }}/trove-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -65,14 +65,6 @@ tempest_service_available_swift: "{{ (groups['swift_all'] is defined and groups[
|
|||||||
tempest_service_available_congress: "{{ groups['congress_all'] is defined and groups['congress_all'] | length > 0 }}"
|
tempest_service_available_congress: "{{ groups['congress_all'] is defined and groups['congress_all'] | length > 0 }}"
|
||||||
|
|
||||||
tempest_log_dir: /var/log/utility
|
tempest_log_dir: /var/log/utility
|
||||||
tempest_venv_tag: "{{ openstack_release }}"
|
|
||||||
|
|
||||||
# This sets the tempest group to the utility group
|
# This sets the tempest group to the utility group
|
||||||
tempest_main_group: utility_all
|
tempest_main_group: utility_all
|
||||||
|
|
||||||
#
|
|
||||||
# Rally settings
|
|
||||||
#
|
|
||||||
|
|
||||||
rally_venv_tag: "{{ venv_tag }}"
|
|
||||||
rally_venv_download_url: "{{ venv_base_download_url }}/rally-{{ openstack_release }}-{{ ansible_architecture | lower }}.tgz"
|
|
||||||
|
@ -13,12 +13,12 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
cinder_bin: "/openstack/venvs/cinder-{{ cinder_venv_tag }}/bin"
|
cinder_bin: "/openstack/venvs/cinder-{{ venv_tag }}/bin"
|
||||||
glance_bin: "/openstack/venvs/glance-{{ glance_venv_tag }}/bin"
|
glance_bin: "/openstack/venvs/glance-{{ venv_tag }}/bin"
|
||||||
keystone_bin: "/openstack/venvs/keystone-{{ keystone_venv_tag }}/bin"
|
keystone_bin: "/openstack/venvs/keystone-{{ venv_tag }}/bin"
|
||||||
nova_bin: "/openstack/venvs/nova-{{ nova_venv_tag }}/bin"
|
nova_bin: "/openstack/venvs/nova-{{ venv_tag }}/bin"
|
||||||
octavia_bin: "/openstack/venvs/octavia-{{ octavia_venv_tag }}/bin"
|
octavia_bin: "/openstack/venvs/octavia-{{ venv_tag }}/bin"
|
||||||
tempest_venv_bin: "/openstack/venvs/tempest-{{ tempest_venv_tag }}/bin"
|
tempest_venv_bin: "/openstack/venvs/tempest-{{ venv_tag }}/bin"
|
||||||
|
|
||||||
# URL for the frozen internal openstack repo.
|
# URL for the frozen internal openstack repo.
|
||||||
repo_release_path: "{{ openstack_repo_url }}/os-releases/{{ openstack_release }}/{{ os_distro_version }}"
|
repo_release_path: "{{ openstack_repo_url }}/os-releases/{{ openstack_release }}/{{ os_distro_version }}"
|
||||||
|
@ -100,24 +100,16 @@
|
|||||||
tags:
|
tags:
|
||||||
- always
|
- always
|
||||||
|
|
||||||
- name: Create the virtualenv (if it does not exist)
|
- name: Install the python venv
|
||||||
command: "virtualenv --never-download --no-site-packages {{ utility_venv_bin | dirname }}"
|
include_role:
|
||||||
args:
|
name: "python_venv_build"
|
||||||
creates: "{{ utility_venv_bin }}/activate"
|
private: yes
|
||||||
|
vars:
|
||||||
- name: Install pip packages
|
venv_install_destination_path: "{{ utility_venv_bin | dirname }}"
|
||||||
pip:
|
venv_pip_install_args: >-
|
||||||
name: "{{ _openstack_client_list | union(utility_pip_packages) }}"
|
|
||||||
state: "{{ utility_pip_package_state }}"
|
|
||||||
virtualenv: "{{ utility_venv_bin | dirname }}"
|
|
||||||
virtualenv_site_packages: "no"
|
|
||||||
extra_args: >-
|
|
||||||
{{ (pip_install_upper_constraints is defined) | ternary('--constraint ' + pip_install_upper_constraints | default(''),'') }}
|
{{ (pip_install_upper_constraints is defined) | ternary('--constraint ' + pip_install_upper_constraints | default(''),'') }}
|
||||||
{{ pip_install_options | default('') }}
|
{{ pip_install_options | default('') }}
|
||||||
register: install_packages
|
venv_pip_packages: "{{ _openstack_client_list | union(utility_pip_packages) }}"
|
||||||
until: install_packages is success
|
|
||||||
retries: 5
|
|
||||||
delay: 2
|
|
||||||
|
|
||||||
- name: Create symlinks for openstack clients
|
- name: Create symlinks for openstack clients
|
||||||
shell: |
|
shell: |
|
||||||
|
Loading…
Reference in New Issue
Block a user