From ff5a1401ef6a06509a680ca73b9e1c42abcb673c Mon Sep 17 00:00:00 2001
From: Clark Boylan <clark.boylan@gmail.com>
Date: Fri, 18 Jan 2013 10:45:36 -0800
Subject: [PATCH] Add postgres server to Jenkins slaves.

Add postgres servers to each non bare Jenkins slave so that tests can be
performed against postgres.

Change-Id: I374afdf2443086e2c5ad42d2e163adbf2d3df74b
Reviewed-on: https://review.openstack.org/20041
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Kurt Taylor <krtaylor@us.ibm.com>
Reviewed-by: Sean Dague <sdague@linux.vnet.ibm.com>
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
---
 install_modules.sh                 |  1 +
 modules/jenkins/manifests/slave.pp | 16 ++++++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/install_modules.sh b/install_modules.sh
index 5d6008fa70..9bfae94daa 100755
--- a/install_modules.sh
+++ b/install_modules.sh
@@ -22,6 +22,7 @@ MODULES["openstackci-vcsrepo"]="0.0.8"
 MODULES["puppetlabs-apache"]="0.0.4"
 MODULES["puppetlabs-apt"]="0.0.4"
 MODULES["puppetlabs-mysql"]="0.5.0"
+MODULES["puppetlabs-postgresql"]="2.0.1"
 MODULES["saz-memcached"]="2.0.2"
 
 MODULE_LIST=`puppet module list`
diff --git a/modules/jenkins/manifests/slave.pp b/modules/jenkins/manifests/slave.pp
index 9aa85cdf82..6c8b350473 100644
--- a/modules/jenkins/manifests/slave.pp
+++ b/modules/jenkins/manifests/slave.pp
@@ -174,6 +174,22 @@ class jenkins::slave(
         Class['mysql::server::account_security'],
       ],
     }
+
+    class { 'postgresql::server':
+      config_hash => {
+        'postgres_password'      => 'insecure_slave',
+        'manage_redhat_firewall' => false,
+        'listen_addresses'       => '127.0.0.1',
+      },
+    }
+    include postgresql::devel
+
+    postgresql::db { 'openstack_citest':
+      user     => 'openstack_citest',
+      password => 'openstack_citest',
+      grant    => 'all',
+      require  => Class['postgresql::server'],
+    }
   }
 
   file { '/usr/local/jenkins':