summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Radez <dradez@redhat.com>2016-06-28 15:34:32 -0400
committerDan Radez <dradez@redhat.com>2016-07-11 14:53:19 -0400
commitdfc2eb500dd291efdb0e3b7c467e4f330911d7bc (patch)
treee98352c6dfc337ae98196f05657b114bb90a6674
parente73182cbfa7f7b544fddfcbc0ea79644722d730e (diff)
Adding doctor driver and datasource
opnfv-tht-pr: 37 JIRA: APEX-158 Change-Id: I079d22e8ee7798bddf7f2f1b6cc3f1b49f1d5773 Signed-off-by: Dan Radez <dradez@redhat.com>
-rwxr-xr-xbuild/overcloud-full.sh2
-rw-r--r--build/python-congressclient.diff25
-rwxr-xr-xbuild/undercloud.sh3
-rw-r--r--build/variables.sh1
-rwxr-xr-xlib/post-install-functions.sh1
5 files changed, 32 insertions, 0 deletions
diff --git a/build/overcloud-full.sh b/build/overcloud-full.sh
index 936decc3..73709a28 100755
--- a/build/overcloud-full.sh
+++ b/build/overcloud-full.sh
@@ -64,6 +64,7 @@ popd > /dev/null
# enable connection tracking for protocal sctp
# install the congress rpms
# upload and explode the congress puppet module
+# install doctor driver ## Can be removed in Newton
LIBGUESTFS_BACKEND=direct virt-customize \
--upload ../opnfv-puppet-tripleo.tar.gz:/etc/puppet/modules \
--run-command "sed -i 's/^#UseDNS.*$/UseDNS no/' /etc/ssh/sshd_config" \
@@ -81,6 +82,7 @@ LIBGUESTFS_BACKEND=direct virt-customize \
--install "python2-congressclient" \
--upload puppet-congress.tar.gz:/etc/puppet/modules/ \
--run-command "cd /etc/puppet/modules/ && tar xzf puppet-congress.tar.gz" \
+ --run-command "cd /usr/lib/python2.7/site-packages/congress/datasources && curl -O $doctor_driver" \
-a overcloud-full_build.qcow2
mv -f overcloud-full_build.qcow2 overcloud-full.qcow2
diff --git a/build/python-congressclient.diff b/build/python-congressclient.diff
new file mode 100644
index 00000000..82e76e07
--- /dev/null
+++ b/build/python-congressclient.diff
@@ -0,0 +1,25 @@
+From 26d39efbb931e04a5e95d504c27ede12d0a81c43 Mon Sep 17 00:00:00 2001
+From: Masahito Muroi <muroi.masahito@lab.ntt.co.jp>
+Date: Fri, 25 Mar 2016 14:06:00 +0900
+Subject: [PATCH] Allows DataSource's config field to have not dict type obj
+
+CongressClient expects all datasource driver has dict object in
+config field. It raises an error when a datasource doesn't have
+any config.
+
+This patch allows config fields to be None object.
+
+Change-Id: I73354f1073f3f814854652eaeaa4b3bbe4bfcf7d
+---
+
+diff --git a/congressclient/common/utils.py b/congressclient/common/utils.py
+index 9a381e8..b5cedd4 100644
+--- a/congressclient/common/utils.py
++++ b/congressclient/common/utils.py
+@@ -77,6 +77,8 @@
+ :param data: a dict
+ :rtype: a string formatted to {a:b, c:d}
+ """
++ if not isinstance(data, dict):
++ return str(data)
+ return str({str(key): str(value) for key, value in data.items()})
diff --git a/build/undercloud.sh b/build/undercloud.sh
index 9873c177..7b40625e 100755
--- a/build/undercloud.sh
+++ b/build/undercloud.sh
@@ -27,6 +27,7 @@ pushd images > /dev/null
# enabling ceph OSDs to live on the controller
# OpenWSMan package update supports the AMT Ironic driver for the TealBox
# seeding configuration files specific to OPNFV
+# add congress client and apply: https://review.openstack.org/#/c/297515/
# add congress password to python-triploclient
LIBGUESTFS_BACKEND=direct virt-customize \
--upload ../opnfv-tht.tar.gz:/usr/share \
@@ -39,6 +40,8 @@ LIBGUESTFS_BACKEND=direct virt-customize \
--upload ../opnfv-environment.yaml:/home/stack/ \
--upload ../virtual-environment.yaml:/home/stack/ \
--install "python2-congressclient" \
+ --upload ../python-congressclient.diff:/tmp \
+ --run-command "cd /usr/lib/python2.7/site-packages && patch -p1 < /tmp/python-congressclient.diff" \
--run-command "sed -i '/SERVICE_LIST/a\\ \x27congress\x27: {\x27password_field\x27: \x27OVERCLOUD_CONGRESS_PASSWORD\x27},' /usr/lib/python2.7/site-packages/tripleoclient/constants.py" \
--run-command "sed -i '/PASSWORD_NAMES =/a\\ \"OVERCLOUD_CONGRESS_PASSWORD\",' /usr/lib/python2.7/site-packages/tripleoclient/utils.py" \
--run-command "sed -i '/AodhPassword/a\\ parameters\[\x27CongressPassword\x27\] = passwords\[\x27OVERCLOUD_CONGRESS_PASSWORD\x27\]' /usr/lib/python2.7/site-packages/tripleoclient/v1/overcloud_deploy.py" \
diff --git a/build/variables.sh b/build/variables.sh
index ccd1add5..2f97727e 100644
--- a/build/variables.sh
+++ b/build/variables.sh
@@ -14,6 +14,7 @@ onos_release_file=onos-1.6.0-rc2.tar.gz
onos_jdk_uri=https://www.dropbox.com/s/qyujpib8zyhzeev
onos_ovs_uri=https://www.dropbox.com/s/gm6o6k80l56pf0o
openstack_congress=https://radez.fedorapeople.org/openstack-congress-2016.1-1.fc24.noarch.rpm
+doctor_driver=https://raw.githubusercontent.com/muroi/congress/doctor-poc/congress/datasources/doctor_driver.py
dpdk_uri_base=http://artifacts.opnfv.org/ovsnfv
dpdk_rpms=(
diff --git a/lib/post-install-functions.sh b/lib/post-install-functions.sh
index 75207ba2..e1f121b9 100755
--- a/lib/post-install-functions.sh
+++ b/lib/post-install-functions.sh
@@ -91,6 +91,7 @@ if [ "${deploy_options_array['congress']}" == 'True' ]; then
--config password=\$OS_PASSWORD \\
--config auth_url=\$OS_AUTH_URL
done
+ openstack congress datasource create doctor "doctor"
fi
EOI