summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkos Chandras <mchandras@suse.de>2018-03-16 11:05:56 +0000
committerMarkos Chandras <mchandras@suse.de>2018-03-16 22:52:35 +0000
commitcf894cbcffe0e1b2b28f6743e41407522cf20a63 (patch)
tree7f01785f8ea5098383b87fbc19c71bda0cb770f6
parent5dcc328f7506166e049c0310d5d8f70fa4579d45 (diff)
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 <mchandras@suse.de>
-rw-r--r--xci/installer/osa/playbooks/configure-opnfvhost.yml4
-rw-r--r--xci/installer/osa/playbooks/configure-targethosts.yml5
-rw-r--r--xci/playbooks/configure-localhost.yml5
-rw-r--r--xci/playbooks/roles/prepare-functest/templates/env.j22
-rw-r--r--xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j216
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 \