From a608842c0b747226b20d387186cb42af52d2db3b Mon Sep 17 00:00:00 2001 From: Jonathan Rosser Date: Tue, 12 Jan 2021 11:45:34 +0000 Subject: [PATCH] Move neutron pip packages from constraints to requirements This is necessary to support the new pip resolver. Depends-On: I9be6bbf4a29a4da2ddf96dc0336bc2a7d8ec9281 Depends-On: I49c75dd11d6c4e8d37fe013b7ffdfd56ff193fcd Change-Id: Ib17a2712993c6c7e3b5622fc944d7754dbb872ba --- defaults/main.yml | 11 ----------- tasks/neutron_install.yml | 13 ++++++++++++- vars/main.yml | 22 +++++++++++----------- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index a476fe3f..1787f8b0 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -76,17 +76,6 @@ networking_nsxlib_git_install_branch: master neutron_upper_constraints_url: "{{ requirements_git_url | default('https://releases.openstack.org/constraints/upper/' ~ requirements_git_install_branch | default('master')) }}" neutron_git_constraints: - - "git+{{ neutron_git_repo }}@{{ neutron_git_install_branch }}#egg=neutron" - - "git+{{ neutron_vpnaas_git_repo }}@{{ neutron_vpnaas_git_install_branch }}#egg=neutron-vpnaas" - - "git+{{ neutron_dynamic_routing_git_repo }}@{{ neutron_dynamic_routing_git_install_branch }}#egg=neutron-dynamic-routing" - - "git+{{ networking_calico_git_repo }}@{{ networking_calico_git_install_branch }}#egg=networking-calico" - - "git+{{ networking_odl_git_repo }}@{{ networking_odl_git_install_branch }}#egg=networking-odl" - - "git+{{ networking_sfc_git_repo }}@{{ networking_sfc_git_install_branch }}#egg=networking-sfc" - - "git+{{ networking_bgpvpn_git_repo }}@{{ networking_bgpvpn_git_install_branch }}#egg=networking-bgpvpn" - - "git+{{ ceilometer_git_repo }}@{{ ceilometer_git_install_branch }}#egg=ceilometer" - - "git+{{ networking_generic_switch_git_repo }}@{{ networking_generic_switch_git_install_branch }}#egg=networking-generic-switch" - - "git+{{ networking_nsx_git_repo }}@{{ networking_nsx_git_install_branch }}#egg=vmware-nsx" - - "git+{{ networking_nsxlib_git_repo }}@{{ networking_nsxlib_git_install_branch }}#egg=vmware-nsxlib" - "--constraint {{ neutron_upper_constraints_url }}" neutron_pip_install_args: "{{ pip_install_options | default('') }}" diff --git a/tasks/neutron_install.yml b/tasks/neutron_install.yml index a15a38d2..683cd15f 100644 --- a/tasks/neutron_install.yml +++ b/tasks/neutron_install.yml @@ -46,12 +46,23 @@ delay: 2 with_items: "{{ neutron_remove_distro_packages }}" +# NOTE(jrosser) +# ceilometer appears in u-c as is used by networking-odl stats plugin. +# the new pip resolver will fail to install ceilometer if two contradictory +# constraints are given which will always happen with a source install +# and wheels built on the repo server. We must filter ceilometer out of u-c. +- name: Retrieve the constraints URL + uri: + url: "{{ neutron_upper_constraints_url }}" + return_content: yes + register: _u_c_contents + - name: Install the python venv import_role: name: "python_venv_build" vars: venv_python_executable: "{{ neutron_venv_python_executable }}" - venv_build_constraints: "{{ neutron_git_constraints }}" + venv_build_constraints: "{{ _u_c_contents.content.split('\n') | reject('match', '[ceilometer=*]') | list }}" venv_build_distro_package_list: "{{ neutron_devel_distro_packages }}" venv_install_destination_path: "{{ neutron_bin | dirname }}" venv_install_distro_package_list: "{{ neutron_package_list }}" diff --git a/vars/main.yml b/vars/main.yml index 62676786..a94de306 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -32,7 +32,7 @@ calico_felix_bin: /usr/local/bin/calico-felix ### neutron_pip_packages: - - neutron + - "git+{{ neutron_git_repo }}@{{ neutron_git_install_branch }}#egg=neutron" - osprofiler - PyMySQL - pymemcache @@ -46,23 +46,23 @@ neutron_optional_oslomsg_amqp1_pip_packages: - oslo.messaging[amqp1] neutron_optional_bgp_pip_packages: - - neutron_dynamic_routing + - "git+{{ neutron_dynamic_routing_git_repo }}@{{ neutron_dynamic_routing_git_install_branch }}#egg=neutron-dynamic-routing" neutron_optional_calico_pip_packages: - - networking-calico + - "git+{{ networking_calico_git_repo }}@{{ networking_calico_git_install_branch }}#egg=networking-calico" - python-etcd - etcd3gw neutron_optional_vpnaas_pip_packages: - - neutron_vpnaas + - "git+{{ neutron_vpnaas_git_repo }}@{{ neutron_vpnaas_git_install_branch }}#egg=neutron-vpnaas" neutron_optional_opendaylight_pip_packages: - - networking-odl - - ceilometer - - networking-bgpvpn + - "git+{{ networking_odl_git_repo }}@{{ networking_odl_git_install_branch }}#egg=networking-odl" + - "git+{{ ceilometer_git_repo }}@{{ ceilometer_git_install_branch }}#egg=ceilometer" + - "git+{{ networking_bgpvpn_git_repo }}@{{ networking_bgpvpn_git_install_branch }}#egg=networking-bgpvpn" neutron_optional_sfc_pip_packages: - - networking-sfc + - "git+{{ networking_sfc_git_repo }}@{{ networking_sfc_git_install_branch }}#egg=networking-sfc" neutron_proprietary_nuage_pip_packages: - nuage-openstack-neutron @@ -70,11 +70,11 @@ neutron_proprietary_nuage_pip_packages: - nuagenetlib neutron_optional_ngs_pip_packages: - - networking-generic-switch + - "git+{{ networking_generic_switch_git_repo }}@{{ networking_generic_switch_git_install_branch }}#egg=networking-generic-switch" neutron_optional_nsx_pip_packages: - - vmware-nsx - - vmware-nsxlib + - "git+{{ networking_nsx_git_repo }}@{{ networking_nsx_git_install_branch }}#egg=vmware-nsx" + - "git+{{ networking_nsxlib_git_repo }}@{{ networking_nsxlib_git_install_branch }}#egg=vmware-nsxlib" neutron_venv_packages: >- {%- set pkg_list = neutron_pip_packages | union(neutron_user_pip_packages) %}