From 99db836c87fd64efb225b7515065159530cddeac Mon Sep 17 00:00:00 2001 From: Yifei Xue Date: Thu, 5 Oct 2017 17:42:34 +0800 Subject: add tacker support JIRA: - Add tacker support in compass euphrates. Upsteam OSA currently doesn't support tacker in Ocata. But OPNFV needs to use tacker in SFC scenario. So we refactor os_tacker of Pike to satisfy OpenStack Ocata. Change-Id: I40bb90949d8cd3b9db166527b0d85ff42ad5cdb9 Signed-off-by: Yifei Xue (cherry picked from commit d0886a8dcf47ef0d27a0b7960dd152596f0a3a88) --- deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml | 1 + .../adapters/ansible/roles/config-osa/files/op-venv-script.sh | 11 +++++++++++ deploy/adapters/ansible/roles/config-osa/tasks/main.yml | 6 ++++++ .../roles/config-osa/templates/openstack_user_config.yml.j2 | 7 +++++++ deploy/adapters/ansible/roles/config-osa/vars/main.yml | 1 + 5 files changed, 26 insertions(+) (limited to 'deploy') diff --git a/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml b/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml index 3f58435e..2e4afc09 100644 --- a/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml +++ b/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml @@ -71,6 +71,7 @@ - network_hosts - repo_container - utility + - tacker_all remote_user: root roles: - setup-odl-sfc diff --git a/deploy/adapters/ansible/roles/config-osa/files/op-venv-script.sh b/deploy/adapters/ansible/roles/config-osa/files/op-venv-script.sh index c598027f..fb197555 100644 --- a/deploy/adapters/ansible/roles/config-osa/files/op-venv-script.sh +++ b/deploy/adapters/ansible/roles/config-osa/files/op-venv-script.sh @@ -201,6 +201,17 @@ unset ROLE_VENV_WITH_INDEX #unset ROLE_VENV_FILE #unset ROLE_VENV_WITH_INDEX +ROLE_VENV_WITH_INDEX=false +ROLE_VENV_PATH="/tmp/openstack-venv-builder/venvs/tacker" +ROLE_VENV_FILE="tacker-15.1.4-x86_64" +if [ ! -f "${ROLE_VENV_FILE}.tgz" ];then + venv_create "${ROLE_VENV_PATH}" "${ROLE_VENV_FILE}" "${ROLE_VENV_WITH_INDEX}" "python-tackerclient mysql-python networking-sfc==4.0.0 pymysql python-heatclient python-tackerclient tacker" & + pid[3]=$! +fi +unset ROLE_VENV_PATH +unset ROLE_VENV_FILE +unset ROLE_VENV_WITH_INDEX + ROLE_VENV_WITH_INDEX=false ROLE_VENV_PATH="/tmp/openstack-venv-builder/venvs/horizon" ROLE_VENV_FILE="horizon-15.1.4-x86_64" diff --git a/deploy/adapters/ansible/roles/config-osa/tasks/main.yml b/deploy/adapters/ansible/roles/config-osa/tasks/main.yml index edd1bc0b..d96a83da 100755 --- a/deploy/adapters/ansible/roles/config-osa/tasks/main.yml +++ b/deploy/adapters/ansible/roles/config-osa/tasks/main.yml @@ -138,6 +138,12 @@ {% endraw %} when: offline_deployment is defined and offline_deployment == "Enable" +# This is a bug in ocata, will be removed in the future +- name: limit the version of networking-sfc in os_tacker + shell: | + sed -i 's/networking-sfc$/networking-sfc=={{ networking_sfc_version }}/g' \ + /etc/ansible/roles/os_tacker/defaults/main.yml + - name: add rally and tempest to requirement.txt blockinfile: dest: /etc/ansible/roles/repo_build/tasks/repo_pre_build.yml diff --git a/deploy/adapters/ansible/roles/config-osa/templates/openstack_user_config.yml.j2 b/deploy/adapters/ansible/roles/config-osa/templates/openstack_user_config.yml.j2 index cadf5308..be119fbe 100644 --- a/deploy/adapters/ansible/roles/config-osa/templates/openstack_user_config.yml.j2 +++ b/deploy/adapters/ansible/roles/config-osa/templates/openstack_user_config.yml.j2 @@ -213,6 +213,13 @@ metrics_hosts: ip: {{ hostvars[host]['ansible_ssh_host'] }} {% endfor %} +# tacker (mano service) +mano_hosts: +{% for host in groups.controller%} + {{host}}: + ip: {{ hostvars[host]['ansible_ssh_host'] }} +{% endfor %} + # nova hypervisors compute_hosts: {% for host in groups.compute%} diff --git a/deploy/adapters/ansible/roles/config-osa/vars/main.yml b/deploy/adapters/ansible/roles/config-osa/vars/main.yml index 18687fa5..0b3b0c1e 100644 --- a/deploy/adapters/ansible/roles/config-osa/vars/main.yml +++ b/deploy/adapters/ansible/roles/config-osa/vars/main.yml @@ -10,3 +10,4 @@ LOCAL_REPOSITORY_IP: "192.168.137.222" ceph_host: "{{ hostvars[inventory_hostname]['groups']['ceph_osd'][0] }}" repo_dest_path: "/var/www/repo/os-releases/15.1.4/ubuntu-16.04-x86_64/" +networking_sfc_version: 4.0.0 -- cgit 1.2.3-korg