Merge "Add ability to deploy designate and pdns on different nodes"
diff --git a/barbican/server/cluster.yml b/barbican/server/cluster.yml
index 81ee5af..972c05d 100644
--- a/barbican/server/cluster.yml
+++ b/barbican/server/cluster.yml
@@ -11,3 +11,9 @@
         protocol: ${_param:cluster_internal_protocol}
       database:
         host: ${_param:openstack_database_address}
+  linux:
+    system:
+      package:
+        python-pymysql:
+          fromrepo: ${_param:openstack_version}
+          version: latest
diff --git a/barbican/server/single.yml b/barbican/server/single.yml
index b115e79..207957f 100644
--- a/barbican/server/single.yml
+++ b/barbican/server/single.yml
@@ -8,3 +8,9 @@
       role: ${_param:openstack_node_role}
       identity:
         protocol: ${_param:internal_protocol}
+  linux:
+    system:
+      package:
+        python-pymysql:
+          fromrepo: ${_param:openstack_version}
+          version: latest
diff --git a/jenkins/client/job/stacklight/cookiecutter.yml b/jenkins/client/job/stacklight/cookiecutter.yml
index fa97f29..0a2c6ed 100644
--- a/jenkins/client/job/stacklight/cookiecutter.yml
+++ b/jenkins/client/job/stacklight/cookiecutter.yml
@@ -19,6 +19,9 @@
             credentials: "gerrit"
             branch: 'master'
             script: test-cookiecutter-model-pipeline.groovy
+          trigger:
+            timer:
+              spec: "H H(0-3) * * *"
           param:
             CREDENTIALS_ID:
               type: string
@@ -57,5 +60,5 @@
               default: 'core,openstack,ovs,stacklight'
             STACK_DELETE:
               type: boolean
-              description: "Delete Heat stack when finished (bool)"
-              default: 'false'
+              description: "Delete Heat stack when finished (bool). Don't enable it if you need to use the lab after"
+              default: 'true'
diff --git a/keepalived/cluster/instance/openstack_barbican_vip.yml b/keepalived/cluster/instance/openstack_barbican_vip.yml
new file mode 100644
index 0000000..3c733c4
--- /dev/null
+++ b/keepalived/cluster/instance/openstack_barbican_vip.yml
@@ -0,0 +1,11 @@
+classes:
+- service.keepalived.cluster.single
+parameters:
+  _param:
+    keepalived_openstack_barbican_vip_address: ${_param:cluster_vip_address}
+    keepalived_openstack_barbican_vip_password: password
+    keepalived_openstack_barbican_vip_interface: eth1
+    keepalived_vip_virtual_router_id: 250
+    keepalived_vip_address: ${_param:keepalived_openstack_barbican_vip_address}
+    keepalived_vip_password: ${_param:keepalived_openstack_barbican_vip_password}
+    keepalived_vip_interface: ${_param:keepalived_openstack_barbican_vip_interface}
diff --git a/salt/minion/cert/barbican.yml b/salt/minion/cert/barbican.yml
new file mode 100644
index 0000000..f499732
--- /dev/null
+++ b/salt/minion/cert/barbican.yml
@@ -0,0 +1,20 @@
+parameters:
+  _param:
+    salt_minion_ca_host: kmn01.${_param:cluster_domain}
+    salt_minion_ca_authority: salt_master_ca
+    barbican_cert_alternative_names: IP:127.0.0.1,IP:${_param:cluster_local_address},IP:${_param:cluster_vip_address},DNS:${linux:system:name},DNS:${linux:network:fqdn}
+  salt:
+    minion:
+        cert:
+          barbican_server:
+            host: ${_param:salt_minion_ca_host}
+            authority: ${_param:salt_minion_ca_authority}
+            common_name: barbican_server
+            signing_policy: cert_server
+            alternative_names: ${_param:barbican_cert_alternative_names}
+            key_file: ${barbican:server:ssl:key_file}
+            cert_file: ${barbican:server:ssl:cert_file}
+            all_file: ${barbican:server:ssl:all_file}
+            ca_file: ${barbican:server:ssl:ca_file}
+            enabled: true
+            engine: salt