Merge "Adding doctor driver and datasource"
authorMichael Chapman <michapma@redhat.com>
Tue, 12 Jul 2016 10:04:24 +0000 (10:04 +0000)
committerGerrit Code Review <gerrit@172.30.200.206>
Tue, 12 Jul 2016 10:04:24 +0000 (10:04 +0000)
build/overcloud-full.sh
build/python-congressclient.diff [new file with mode: 0644]
build/undercloud.sh
build/variables.sh
lib/post-install-functions.sh

index 936decc..73709a2 100755 (executable)
@@ -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 (file)
index 0000000..82e76e0
--- /dev/null
@@ -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()})
index 9873c17..7b40625 100755 (executable)
@@ -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" \
index ccd1add..2f97727 100644 (file)
@@ -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=(
index 75207ba..e1f121b 100755 (executable)
@@ -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