From f004ad478b359709dd8a886085f8e13a224e6f24 Mon Sep 17 00:00:00 2001 From: Markos Chandras Date: Tue, 9 May 2017 21:20:59 +0100 Subject: prototypes: xci: Add ability to use local repositories for testing When developing XCI features it's useful to be able to use the local repositories rather than cloning them from git since that makes it harder to test local modifications against XCI. As such, we add three new variables which can be used to hold local paths to the bifrost, releng and openstack-ansible repositories. We are still cloning the repositories but we then use the 'synchronize' Ansible module to copy modified files from the local repositories. Change-Id: I6d593ea48d8b9c51415d9d0848f77a498ef2f486 Signed-off-by: Markos Chandras --- xci/playbooks/configure-localhost.yml | 22 ++++++++++++++++++++++ xci/playbooks/configure-opnfvhost.yml | 31 +++++++++++++++++++++++++++++++ xci/playbooks/provision-vm-nodes.yml | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+) (limited to 'xci/playbooks') diff --git a/xci/playbooks/configure-localhost.yml b/xci/playbooks/configure-localhost.yml index e2024dd8..b6d0fccb 100644 --- a/xci/playbooks/configure-localhost.yml +++ b/xci/playbooks/configure-localhost.yml @@ -15,6 +15,28 @@ roles: - role: remove-folders - { role: clone-repository, project: "opnfv/releng", repo: "{{ OPNFV_RELENG_GIT_URL }}", dest: "{{ OPNFV_RELENG_PATH }}", version: "{{ OPNFV_RELENG_VERSION }}" } + +- hosts: localhost + connection: local + gather_facts: false + vars_files: + - ../var/{{ ansible_os_family }}.yml + - ../var/opnfv.yml + tasks: + - name: Synchronize local development releng repository to XCI paths + synchronize: + src: "{{ OPNFV_RELENG_DEV_PATH }}" + dest: "{{ OPNFV_RELENG_PATH }}" + recursive: yes + delete: yes + when: + - OPNFV_RELENG_DEV_PATH != "" + +- hosts: localhost + connection: local + vars_files: + - ../var/{{ ansible_os_family }}.yml + - ../var/opnfv.yml tasks: - name: create log directory {{LOG_PATH}} file: diff --git a/xci/playbooks/configure-opnfvhost.yml b/xci/playbooks/configure-opnfvhost.yml index 64fcef0d..28e6b217 100644 --- a/xci/playbooks/configure-opnfvhost.yml +++ b/xci/playbooks/configure-opnfvhost.yml @@ -17,6 +17,37 @@ - role: remove-folders - { role: clone-repository, project: "opnfv/releng", repo: "{{ OPNFV_RELENG_GIT_URL }}", dest: "{{ OPNFV_RELENG_PATH }}", version: "{{ OPNFV_RELENG_VERSION }}" } - { role: clone-repository, project: "openstack/openstack-ansible", repo: "{{ OPENSTACK_OSA_GIT_URL }}", dest: "{{ OPENSTACK_OSA_PATH }}", version: "{{ OPENSTACK_OSA_VERSION }}" } + +- hosts: opnfv + remote_user: root + vars_files: + - ../var/{{ ansible_os_family }}.yml + - ../var/opnfv.yml + tasks: + - name: Synchronize local development releng repository to XCI paths + synchronize: + src: "{{ OPNFV_RELENG_DEV_PATH }}" + dest: "{{ OPNFV_RELENG_PATH }}" + recursive: yes + delete: yes + when: + - OPNFV_RELENG_DEV_PATH != "" + - name: Synchronize local development openstack-ansible repository to XCI paths + synchronize: + src: "{{ OPENSTACK_OSA_DEV_PATH }}" + dest: "{{ OPENSTACK_OSA_PATH }}" + recursive: yes + delete: yes + when: + - OPENSTACK_OSA_DEV_PATH != "" + +- hosts: opnfv + remote_user: root + vars_files: + - ../var/{{ ansible_os_family }}.yml + - ../var/flavor-vars.yml + - ../var/opnfv.yml + roles: # TODO: this only works for ubuntu/xenial and need to be adjusted for other distros - { role: configure-network, when: ansible_distribution_release == "xenial", src: "../template/opnfv.interface.j2", dest: "/etc/network/interfaces" } tasks: diff --git a/xci/playbooks/provision-vm-nodes.yml b/xci/playbooks/provision-vm-nodes.yml index dad0184f..8be36c7a 100644 --- a/xci/playbooks/provision-vm-nodes.yml +++ b/xci/playbooks/provision-vm-nodes.yml @@ -17,6 +17,38 @@ - role: remove-folders - { role: clone-repository, project: "opnfv/releng", repo: "{{ OPNFV_RELENG_GIT_URL }}", dest: "{{ OPNFV_RELENG_PATH }}", version: "{{ OPNFV_RELENG_VERSION }}" } - { role: clone-repository, project: "opnfv/bifrost", repo: "{{ OPENSTACK_BIFROST_GIT_URL }}", dest: "{{ OPENSTACK_BIFROST_PATH }}", version: "{{ OPENSTACK_BIFROST_VERSION }}" } + +- hosts: localhost + connection: local + gather_facts: false + vars_files: + - ../var/{{ ansible_os_family }}.yml + - ../var/opnfv.yml + tasks: + - name: Synchronize local development bifrost repository to XCI paths + # command module is much faster than the copy module + synchronize: + src: "{{ OPENSTACK_BIFROST_DEV_PATH }}" + dest: "{{ OPENSTACK_BIFROST_PATH }}" + recursive: yes + delete: yes + when: + - OPENSTACK_BIFROST_DEV_PATH != "" + - name: Synchronize local development releng repository to XCI paths + synchronize: + src: "{{ OPNFV_RELENG_DEV_PATH }}" + dest: "{{ OPNFV_RELENG_PATH }}" + recursive: yes + delete: yes + when: + - OPNFV_RELENG_DEV_PATH != "" + +- hosts: localhost + connection: local + gather_facts: false + vars_files: + - ../var/{{ ansible_os_family }}.yml + - ../var/opnfv.yml tasks: - name: combine opnfv/releng and openstack/bifrost scripts/playbooks copy: -- cgit 1.2.3-korg