From 08a1414738df061bc352c906c4859148394b09cb Mon Sep 17 00:00:00 2001
From: Swapnil Kulkarni <me@coolsvap.net>
Date: Thu, 16 Jul 2015 10:36:22 +0000
Subject: [PATCH] Parttially implement ceilometer container code

Added the compose yaml file
Added the genenv
Added fixes to run the containter

Change-Id: Ied3ea92e495fc0fc0274a0da736394d2ab52a754
Partially Implements: blueprint ceilometer-container
---
 compose/ceilometer.yml                        | 39 +++++++++++++++++++
 .../ceilometer-base/config-ceilometer.sh      |  2 +-
 docs/integration-guide.md                     |  6 +++
 docs/minimal-environment-vars.md              |  1 -
 tools/genenv                                  | 14 +++++++
 tools/kolla                                   |  1 +
 6 files changed, 61 insertions(+), 2 deletions(-)
 create mode 100644 compose/ceilometer.yml

diff --git a/compose/ceilometer.yml b/compose/ceilometer.yml
new file mode 100644
index 0000000000..dac86495b3
--- /dev/null
+++ b/compose/ceilometer.yml
@@ -0,0 +1,39 @@
+ceilometerapi:
+  image: kollaglue/centos-rdo-ceilometer-api:latest
+  name: ceilometer-api
+  net: "host"
+  restart: always
+  env_file:
+   - openstack.env
+
+ceilometercentral:
+  image: kollaglue/centos-rdo-ceilometer-central:latest
+  name: ceilometer-central
+  net: "host"
+  restart: always
+  env_file:
+   - openstack.env
+
+ceilometeralarm:
+  image: kollaglue/centos-rdo-ceilometer-alarm:latest
+  name: ceilometer-alarm
+  net: "host"
+  restart: always
+  env_file:
+    - openstack.env
+
+ceilometercollector:
+  image: kollaglue/centos-rdo-ceilometer-collector:latest
+  name: ceilometer-collector
+  net: "host"
+  restart: always
+  env_file:
+    - openstack.env
+
+ceilometernotification:
+  image: kollaglue/centos-rdo-ceilometer-notification:latest
+  name: ceilometer-notification
+  net: "host"
+  restart: always
+  env_file:
+    - openstack.env
diff --git a/docker/common/ceilometer/ceilometer-base/config-ceilometer.sh b/docker/common/ceilometer/ceilometer-base/config-ceilometer.sh
index a2316dcd1d..4161e48df6 100644
--- a/docker/common/ceilometer/ceilometer-base/config-ceilometer.sh
+++ b/docker/common/ceilometer/ceilometer-base/config-ceilometer.sh
@@ -13,7 +13,7 @@ set -e
 : ${RABBIT_PASSWORD:=guest}
 
 check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \
-                    KEYSTONE_ADMIN_SERVICE_PORT KEYSTONE_PUBLIC_SERVICE_HOST \
+                    KEYSTONE_ADMIN_SERVICE_PORT KEYSTONE_PUBLIC_SERVICE_HOST
 dump_vars
 
 cat > /openrc <<EOF
diff --git a/docs/integration-guide.md b/docs/integration-guide.md
index 38eb900a76..029f370b0c 100755
--- a/docs/integration-guide.md
+++ b/docs/integration-guide.md
@@ -179,6 +179,12 @@ all containers.  This allows a simple method of ensuring every type of node
     INIT_CINDER_DB=<true|false> - Initialize or update the cinder db
     KEEPALIVED_HOST_PRIORITIES=<host1:100,host2:99> - Map of priorities per node. Priorities have to be unique.
     CINDER_API_VERSION=<2> - The API version for Cinder
+    CEILOMETER_ADMIN_PASSWORD=<password> - The Ceilometer password
+    CEILOMETER_API_SERVICE_HOST=<IP> - The IP Address where Ceilometer listens
+    CEILOMETER_DB_NAME=<ceilometer> - Ceilometer DB name
+    CEILOMETER_DB_PASSWORD=<password> - Ceilometer DB password
+    CEILOMETER_DB_USER=<ceilometer> - Ceilometer DB User
+    CEILOMETER_KEYSTONE_USER=<ceilometer> - Ceilometer Keystone user
 
 [Minimum environment variable setup guide.](https://github.com/stackforge/kolla/blob/master/docs/minimal-environment-vars.md)
 
diff --git a/docs/minimal-environment-vars.md b/docs/minimal-environment-vars.md
index 8e11781a3a..c91efc6679 100644
--- a/docs/minimal-environment-vars.md
+++ b/docs/minimal-environment-vars.md
@@ -34,7 +34,6 @@ In order for each service to function, there is a minimum set of required variab
     KEYSTONE_ADMIN_SERVICE_PORT
     KEYSTONE_ADMIN_TOKEN
     KEYSTONE_PUBLIC_SERVICE_HOST
-    dump_vars
 
 # Ceilometer-central
 
diff --git a/tools/genenv b/tools/genenv
index 95082ee542..9d1fba3664 100755
--- a/tools/genenv
+++ b/tools/genenv
@@ -242,6 +242,14 @@ KEYSTONE_AUTH_PROTOCOL=http
 BARBICAN_KEYSTONE_USER=barbican
 ADMIN_TENANT_NAME=admin
 
+#Ceilometer
+CEILOMETER_ADMIN_PASSWORD=password
+CEILOMETER_API_SERVICE_HOST=$HOST_IP
+CEILOMETER_DB_NAME=ceilometer
+CEILOMETER_DB_PASSWORD=password
+CEILOMETER_DB_USER=ceilometer
+CEILOMETER_KEYSTONE_USER=ceilometer
+
 # this should use the keystone admin port
 # https://bugs.launchpad.net/kolla/+bug/1469209
 cat > ./openrc <<EOF
@@ -412,6 +420,12 @@ BARBICAN_DB_NAME=$BARBICAN_DB_NAME
 KEYSTONE_AUTH_PROTOCOL=$KEYSTONE_AUTH_PROTOCOL
 BARBICAN_KEYSTONE_USER=$BARBICAN_KEYSTONE_USER
 ADMIN_TENANT_NAME=$ADMIN_TENANT_NAME
+CEILOMETER_ADMIN_PASSWORD=$CEILOMETER_ADMIN_PASSWORD
+CEILOMETER_API_SERVICE_HOST=$CEILOMETER_API_SERVICE_HOST
+CEILOMETER_DB_NAME=$CEILOMETER_DB_NAME
+CEILOMETER_DB_PASSWORD=$CEILOMETER_DB_PASSWORD
+CEILOMETER_DB_USER=$CEILOMETER_DB_USER
+CEILOMETER_KEYSTONE_USER=$CEILOMETER_KEYSTONE_USER
 
 EOF
 echo Please customize your FLAT_INTERFACE to a different network then your
diff --git a/tools/kolla b/tools/kolla
index 3f99c4b43f..b65f7b0229 100755
--- a/tools/kolla
+++ b/tools/kolla
@@ -45,6 +45,7 @@ function process_all {
     process cinder-api-scheduler
     process cinder-backup
     process cinder-volume
+    process ceilometer
 }
 
 function check_selinux {