From cf894cbcffe0e1b2b28f6743e41407522cf20a63 Mon Sep 17 00:00:00 2001 From: Markos Chandras Date: Fri, 16 Mar 2018 11:05:56 +0000 Subject: xci: Copy XCI environment to deployment hosts The XCI hosts may need some of the XCI env variables to perform certain tasks so dump the XCI environment to /root/xci.env file and make that available to every host on the deployment. Change-Id: I286a01ca7da8ff206438c261798167f5e4daf7f2 Signed-off-by: Markos Chandras --- xci/installer/osa/playbooks/configure-opnfvhost.yml | 4 ++++ xci/installer/osa/playbooks/configure-targethosts.yml | 5 +++++ xci/playbooks/configure-localhost.yml | 5 +++++ xci/playbooks/roles/prepare-functest/templates/env.j2 | 2 -- .../roles/prepare-functest/templates/run-functest.sh.j2 | 16 ++++++++++++++++ 5 files changed, 30 insertions(+), 2 deletions(-) diff --git a/xci/installer/osa/playbooks/configure-opnfvhost.yml b/xci/installer/osa/playbooks/configure-opnfvhost.yml index 8b596b3c..8255995a 100644 --- a/xci/installer/osa/playbooks/configure-opnfvhost.yml +++ b/xci/installer/osa/playbooks/configure-opnfvhost.yml @@ -136,6 +136,10 @@ content: "{{ xci_ssl_key }}" dest: "/etc/ssl/private/xci.key" become: true + - name: fetch xci environment + copy: + src: "{{ XCI_PATH }}/.cache/xci.env" + dest: /root/xci.env - hosts: localhost remote_user: root diff --git a/xci/installer/osa/playbooks/configure-targethosts.yml b/xci/installer/osa/playbooks/configure-targethosts.yml index 4341a884..ad8bafc9 100644 --- a/xci/installer/osa/playbooks/configure-targethosts.yml +++ b/xci/installer/osa/playbooks/configure-targethosts.yml @@ -7,6 +7,11 @@ src: "{{ XCI_PATH }}/xci/files/authorized_keys" dest: /root/.ssh/authorized_keys + - name: fetch xci environment + copy: + src: "{{ XCI_PATH }}/.cache/xci.env" + dest: /root/xci.env + - hosts: controller remote_user: root vars_files: diff --git a/xci/playbooks/configure-localhost.yml b/xci/playbooks/configure-localhost.yml index a5b0e3fa..0e3cde6e 100644 --- a/xci/playbooks/configure-localhost.yml +++ b/xci/playbooks/configure-localhost.yml @@ -98,3 +98,8 @@ - OPENSTACK_OSA_DEV_PATH != "" when: - INSTALLER_TYPE == "osa" + + - name: Dump XCI execution environment to a file + shell: env > "{{ XCI_PATH }}/.cache/xci.env" + args: + executable: /bin/bash diff --git a/xci/playbooks/roles/prepare-functest/templates/env.j2 b/xci/playbooks/roles/prepare-functest/templates/env.j2 index 43a581bd..af271ac7 100644 --- a/xci/playbooks/roles/prepare-functest/templates/env.j2 +++ b/xci/playbooks/roles/prepare-functest/templates/env.j2 @@ -1,7 +1,5 @@ -INSTALLER_TYPE=osa INSTALLER_IP=192.168.122.2 EXTERNAL_NETWORK={{ external_network }} -DEPLOY_SCENARIO="os-nosdn-nofeature-noha" CI_LOOP=daily TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results ENERGY_RECORDER_API_URL=http://energy.opnfv.fr/resources diff --git a/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 b/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 index c0b9bc88..81a0734f 100644 --- a/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 +++ b/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 @@ -1,5 +1,8 @@ #!/bin/bash +# Variables that we need to pass from XCI to functest +XCI_ENV=(INSTALLER_TYPE DEPLOY_SCENARIO XCI_FLAVOR) + source /root/openrc openstack --insecure network create --external \ @@ -14,6 +17,19 @@ openstack --insecure subnet create --network {{ external_network }} \ mkdir ~/results/ mkdir ~/images && cd ~/images && wget -q http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img && cd ~ +# Extract variables from xci.env file +if [[ -e /root/xci.env ]]; then + for x in ${XCI_ENV[@]}; do + grep "^${x}=" /root/xci.env >> /root/env + done +fi + +# Dump the env file +echo "------------------------------------------------------" +echo "------------- functest environment file --------------" +cat /root/env +echo "------------------------------------------------------" + sudo docker run --env-file env \ -v $(pwd)/openrc:/home/opnfv/functest/conf/env_file \ -v $(pwd)/images:/home/opnfv/functest/images \ -- cgit 1.2.3-korg