Merge "change default aws region for kqueen"
diff --git a/jenkins/client/job/debian/packages/horizon/modules.yml b/jenkins/client/job/debian/packages/horizon/modules.yml
index ebf3b21..c908e5c 100644
--- a/jenkins/client/job/debian/packages/horizon/modules.yml
+++ b/jenkins/client/job/debian/packages/horizon/modules.yml
@@ -114,6 +114,18 @@
               os_version: ocata
               branch: stable/ocata
             # Trusty
+            - name: horizon-contrail-panels
+              os: ubuntu
+              dist: trusty
+              os_version: pike
+              branch: stable/pike
+            # Xenial
+            - name: horizon-contrail-panels
+              os: ubuntu
+              dist: xenial
+              os_version: pike
+              branch: stable/pike
+            # Trusty
             - name: horizon-jenkins-dashboard
               os: ubuntu
               dist: trusty
diff --git a/jenkins/client/job/git-mirrors/upstream/models.yml b/jenkins/client/job/git-mirrors/upstream/models.yml
index 9a16673..edb0c7e 100644
--- a/jenkins/client/job/git-mirrors/upstream/models.yml
+++ b/jenkins/client/job/git-mirrors/upstream/models.yml
@@ -6,7 +6,7 @@
       - name: kubernetes-aws-model
         downstream: mk/kubernetes-aws-model
         upstream: "git@github.com:Mirantis/kubernetes-aws-model"
-        branches: master
+        branches: allinone,master
       - name: ceph-ha-model
         downstream: ceph/ceph-ha-model
         upstream: "git@github.com:Mirantis/ceph-ha-model"
diff --git a/jenkins/client/job/opencontrail/build/generic.yml b/jenkins/client/job/opencontrail/build/generic.yml
index d9be124..1506326 100644
--- a/jenkins/client/job/opencontrail/build/generic.yml
+++ b/jenkins/client/job/opencontrail/build/generic.yml
@@ -111,6 +111,14 @@
               upload_source_package: true
               dpdk: contrail_dpdk_17_02
               build_trigger: "H H(20-23) */7 * *"
+            - buildname: oc50
+              os: ubuntu
+              dist: xenial
+              branch: R5.0
+              ppa: mirantis-opencontrail/opencontrail-5.0
+              upload_source_package: true
+              dpdk: contrail_dpdk_17_02
+              build_trigger: "H H(20-23) */7 * *"
             - buildname: oc666
               os: ubuntu
               dist: trusty
diff --git a/jenkins/client/job/opencontrail/init.yml b/jenkins/client/job/opencontrail/init.yml
index d2ecdb6..c6d1ca6 100644
--- a/jenkins/client/job/opencontrail/init.yml
+++ b/jenkins/client/job/opencontrail/init.yml
@@ -3,7 +3,7 @@
   - system.jenkins.client.job.opencontrail.git-mirrors
 parameters:
   _param:
-    contrail_branches: "R3.0.2.x,R3.0.3.x,R3.1,R3.1.1.x,R3.2,R3.2.3.x,R4.0,R4.1,master"
+    contrail_branches: "R3.0.2.x,R3.0.3.x,R3.1,R3.1.1.x,R3.2,R3.2.3.x,R4.0,R4.1,R5.0,master"
     contrail_kubernetes_branches: "master,release-1.2"
     contrail_dpdk_extra_branches: "mitaka,mitaka_dpdk_17_02,mitaka_dpdk_17_05,kilo,liberty-multiqueue,newton,ocata"
     contrail_ceilometer_plugin_branches: "master,R4.0,R4.1"
@@ -34,5 +34,7 @@
               naming_rule: "R4.0"
             - group_regex: "build-opencontrail-oc41-.*"
               naming_rule: "R4.1"
+            - group_regex: "build-opencontrail-oc50-.*"
+              naming_rule: "R5.0"
             - group_regex: "build-opencontrail-oc666-.*"
               naming_rule: "oc-666"
diff --git a/jenkins/client/job/oscore/tests.yml b/jenkins/client/job/oscore/tests.yml
index ba44bc0..7a73f01 100644
--- a/jenkins/client/job/oscore/tests.yml
+++ b/jenkins/client/job/oscore/tests.yml
@@ -217,18 +217,6 @@
                 type: string
                 description: Version of formulas for salt-master bootstrap
                 default: "{{formula_pkg_revision}}"
-              EXTRA_REPO:
-                type: string
-                description: Optional extra repository to run tests with
-                default: ''
-              EXTRA_REPO_PIN:
-                type: string
-                description: Optional extra repository pin definition
-                default: ''
-              EXTRA_REPO_PRIORITY:
-                type: string
-                description: Optional extra repository pin priority
-                default: ''
               # openstack api
               OPENSTACK_API_URL:
                 type: string
diff --git a/keepalived/cluster/instance/stacklight_control_vip.yml b/keepalived/cluster/instance/stacklight_control_vip.yml
new file mode 100644
index 0000000..15e507b
--- /dev/null
+++ b/keepalived/cluster/instance/stacklight_control_vip.yml
@@ -0,0 +1,31 @@
+# This instance is needed for the case, where on control node the GlusterFS is deployed with keepalived and
+# a `remote_agent` from `Stacklight` sends its queries to the control's VIP to gather the GlusterFS data.
+# In case of `glusterd` process failure, the VIP should be moved to another node, to prevent `remote_agent` from failing.
+# In addition, check for haproxy process too, as on its failure VIP should be also moved to another node.
+classes:
+- service.keepalived.support
+parameters:
+  _param:
+    keepalived_stacklight_control_vip_address: ${_param:keepalived_vip_address}
+    keepalived_stacklight_control_vip_password: ${_param:keepalived_vip_password}
+    keepalived_stacklight_control_vip_interface: ${_param:keepalived_vip_interface}
+    keepalived_stacklight_control_vip_priority: ${_param:keepalived_vip_priority}
+    keepalived_stacklight_control_vip_virtual_router_id: ${_param:keepalived_vip_virtual_router_id}
+    keepalived_stacklight_control_vip_vrrp_check_script_content: "pidof glusterd && pidof haproxy"
+  keepalived:
+    cluster:
+      vrrp_scripts:
+        vrrp_check:
+          content: ${_param:keepalived_stacklight_control_vip_vrrp_check_script_content}
+          interval: 10
+          rise: 1
+          fall: 1
+      enabled: true
+      instance:
+        VIP:
+          address: ${_param:keepalived_stacklight_control_vip_address}
+          password: ${_param:keepalived_stacklight_control_vip_password}
+          interface: ${_param:keepalived_stacklight_control_vip_interface}
+          priority: ${_param:keepalived_stacklight_control_vip_priority}
+          virtual_router_id: ${_param:keepalived_stacklight_control_vip_virtual_router_id}
+          track_script: vrrp_check
diff --git a/keystone/client/os_client_config/admin_identity.yml b/keystone/client/os_client_config/admin_identity.yml
index 35cdf19..d31db49 100644
--- a/keystone/client/os_client_config/admin_identity.yml
+++ b/keystone/client/os_client_config/admin_identity.yml
@@ -10,6 +10,7 @@
                 admin_identity:
                   region_name: ${_param:openstack_region}
                   identity_api_version: '3'
+                  interface: 'internal'
                   auth:
                     username: 'admin'
                     password: ${_param:keystone_admin_password}
diff --git a/keystone/client/service/aodh.yml b/keystone/client/service/aodh.yml
index e7b0dbb..7ed3772 100644
--- a/keystone/client/service/aodh.yml
+++ b/keystone/client/service/aodh.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.aodh
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/barbican.yml b/keystone/client/service/barbican.yml
index d222fb6..aeb7035 100644
--- a/keystone/client/service/barbican.yml
+++ b/keystone/client/service/barbican.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.barbican
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/billometer.yml b/keystone/client/service/billometer.yml
index 6100dc9..282848e 100644
--- a/keystone/client/service/billometer.yml
+++ b/keystone/client/service/billometer.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.billometer
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/ceilometer.yml b/keystone/client/service/ceilometer.yml
index 40f4ebf..ba4d66e 100644
--- a/keystone/client/service/ceilometer.yml
+++ b/keystone/client/service/ceilometer.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.ceilometer
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/cinder.yml b/keystone/client/service/cinder.yml
index 64705e3..958fae1 100644
--- a/keystone/client/service/cinder.yml
+++ b/keystone/client/service/cinder.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.cinder
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/cinder2.yml b/keystone/client/service/cinder2.yml
index cb289e1..a7e8e49 100644
--- a/keystone/client/service/cinder2.yml
+++ b/keystone/client/service/cinder2.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.cinder2
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/cinder3.yml b/keystone/client/service/cinder3.yml
index d5e0ae1..5c6b6d0 100644
--- a/keystone/client/service/cinder3.yml
+++ b/keystone/client/service/cinder3.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.cinder3
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/congress.yml b/keystone/client/service/congress.yml
index 49e8337..a6599d5 100644
--- a/keystone/client/service/congress.yml
+++ b/keystone/client/service/congress.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.congress
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/designate.yml b/keystone/client/service/designate.yml
index 75a588e..b1828cc 100644
--- a/keystone/client/service/designate.yml
+++ b/keystone/client/service/designate.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.designate
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/glance.yml b/keystone/client/service/glance.yml
index 3c0db9c..ac4394f 100644
--- a/keystone/client/service/glance.yml
+++ b/keystone/client/service/glance.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.glance
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/gnocchi.yml b/keystone/client/service/gnocchi.yml
index 6707764..27d38b0 100644
--- a/keystone/client/service/gnocchi.yml
+++ b/keystone/client/service/gnocchi.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.gnocchi
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/heat-cfn.yml b/keystone/client/service/heat-cfn.yml
index 1a2486a..2ccafc9 100644
--- a/keystone/client/service/heat-cfn.yml
+++ b/keystone/client/service/heat-cfn.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.heat-cfn
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/heat.yml b/keystone/client/service/heat.yml
index c8882dd..28aa582 100644
--- a/keystone/client/service/heat.yml
+++ b/keystone/client/service/heat.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.heat
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/ironic.yml b/keystone/client/service/ironic.yml
index e4c384c..c1b00d0 100644
--- a/keystone/client/service/ironic.yml
+++ b/keystone/client/service/ironic.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.ironic
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/keystone.yml b/keystone/client/service/keystone.yml
index ba116f8..0cfa963 100644
--- a/keystone/client/service/keystone.yml
+++ b/keystone/client/service/keystone.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.keystone
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/manila.yml b/keystone/client/service/manila.yml
index 07e88b2..d230892 100644
--- a/keystone/client/service/manila.yml
+++ b/keystone/client/service/manila.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.manila
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/manila2.yml b/keystone/client/service/manila2.yml
index 1a3a125..ae9a02f 100644
--- a/keystone/client/service/manila2.yml
+++ b/keystone/client/service/manila2.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.manila2
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/neutron.yml b/keystone/client/service/neutron.yml
index 8bec7f2..06690ce 100644
--- a/keystone/client/service/neutron.yml
+++ b/keystone/client/service/neutron.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.neutron
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/nova-placement.yml b/keystone/client/service/nova-placement.yml
index 3ed0654..3ab8e95 100644
--- a/keystone/client/service/nova-placement.yml
+++ b/keystone/client/service/nova-placement.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.nova-placement
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/nova.yml b/keystone/client/service/nova.yml
index ca20106..147d0f7 100644
--- a/keystone/client/service/nova.yml
+++ b/keystone/client/service/nova.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.nova
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/nova21.yml b/keystone/client/service/nova21.yml
index 2782ec2..33ebda5 100644
--- a/keystone/client/service/nova21.yml
+++ b/keystone/client/service/nova21.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.nova21
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/octavia.yml b/keystone/client/service/octavia.yml
index c08312e..304d70f 100644
--- a/keystone/client/service/octavia.yml
+++ b/keystone/client/service/octavia.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.octavia
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/panko.yml b/keystone/client/service/panko.yml
index 6f86b36..6c6a036 100644
--- a/keystone/client/service/panko.yml
+++ b/keystone/client/service/panko.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.panko
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/radosgw-s3.yml b/keystone/client/service/radosgw-s3.yml
index c97c812..e53d9fc 100644
--- a/keystone/client/service/radosgw-s3.yml
+++ b/keystone/client/service/radosgw-s3.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.radosgw-s3
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/service/radosgw-swift.yml b/keystone/client/service/radosgw-swift.yml
index 14a24af..a643433 100644
--- a/keystone/client/service/radosgw-swift.yml
+++ b/keystone/client/service/radosgw-swift.yml
@@ -1,3 +1,5 @@
+classes:
+- system.keystone.client.v3.service.radosgw-swift
 parameters:
   _param:
     cluster_public_protocol: https
diff --git a/keystone/client/v3/service/aodh.yml b/keystone/client/v3/service/aodh.yml
new file mode 100644
index 0000000..de85fb0
--- /dev/null
+++ b/keystone/client/v3/service/aodh.yml
@@ -0,0 +1,35 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    aodh_service_protocol: http
+    aodh_public_host: ${_param:cluster_public_host}
+  keystone:
+    client:
+      resources:
+        v3:
+          cloud_name: 'admin_identity'
+          users:
+            aodh:
+              password: ${_param:keystone_aodh_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            aodh:
+              type: alarming
+              description: OpenStack Alarming Service
+              endpoints:
+                aodh_public:
+                  interface: 'public'
+                  region: ${_param:openstack_region}
+                  url: ${_param:cluster_public_protocol}://${_param:aodh_public_host}:8042/
+                aodh_internal:
+                  interface: 'internal'
+                  region: ${_param:openstack_region}
+                  url: ${_param:aodh_service_protocol}://${_param:aodh_service_host}:8042/
+                aodh_admin:
+                  interface: 'admin'
+                  region: ${_param:openstack_region}
+                  url: ${_param:aodh_service_protocol}://${_param:aodh_service_host}:8042/
diff --git a/keystone/client/v3/service/barbican.yml b/keystone/client/v3/service/barbican.yml
new file mode 100644
index 0000000..4262ffd
--- /dev/null
+++ b/keystone/client/v3/service/barbican.yml
@@ -0,0 +1,46 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    barbican_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          roles:
+            global_creator:
+              name: creator
+              enabled: true
+            global_key_manager_admin:
+              name: key-manager:service-admin
+              enabled: true
+          users:
+            barbican:
+              password: ${_param:keystone_barbican_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+                global_creator:
+                  name: creator
+                  project_id: service
+                global_key_manager_admin:
+                  name: key-manager:service-admin
+                  project_id: service
+          services:
+            barbican:
+              type: key-manager
+              description: OpenStack Key-Manager Service
+              endpoints:
+                barbican_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:9311/
+                  region: ${_param:openstack_region}
+                barbican_internal:
+                  interface: 'internal'
+                  url: ${_param:barbican_service_protocol}://${_param:barbican_service_host}:9311/
+                  region: ${_param:openstack_region}
+                barbican_admin:
+                  interface: 'admin'
+                  url: ${_param:barbican_service_protocol}://${_param:barbican_service_host}:9311/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/billometer.yml b/keystone/client/v3/service/billometer.yml
new file mode 100644
index 0000000..17cc28a
--- /dev/null
+++ b/keystone/client/v3/service/billometer.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    billometer_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          user:
+            billometer:
+              password: ${_param:keystone_billometer_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            billometer:
+              type: billing
+              description: OpenStack Billing Service
+              endpoints:
+                billometer_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:9753/v1
+                  region: ${_param:openstack_region}
+                billometer_internal:
+                  interface: 'internal'
+                  url: ${_param:billometer_service_protocol}://${_param:billometer_service_host}:9753/v1
+                  region: ${_param:openstack_region}
+                billometer_admin:
+                  interface: 'admin'
+                  url: ${_param:billometer_service_protocol}://${_param:billometer_service_host}:9753/v1
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/ceilometer.yml b/keystone/client/v3/service/ceilometer.yml
new file mode 100644
index 0000000..e52a5c0
--- /dev/null
+++ b/keystone/client/v3/service/ceilometer.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    ceilometer_service_protocol: http
+    ceilometer_public_host: ${_param:cluster_public_host}
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            ceilometer:
+              password: ${_param:keystone_ceilometer_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            ceilometer:
+              type: metering
+              description: OpenStack Telemetry Service
+              endpoints:
+                ceilometer_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:ceilometer_public_host}:8777/
+                  region: ${_param:openstack_region}
+                ceilometer_internal:
+                  interface: 'internal'
+                  url: ${_param:ceilometer_service_protocol}://${_param:ceilometer_service_host}:8777/
+                  region: ${_param:openstack_region}
+                ceilometer_admin:
+                  interface: 'admin'
+                  url: ${_param:ceilometer_service_protocol}://${_param:ceilometer_service_host}:8777/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/cinder.yml b/keystone/client/v3/service/cinder.yml
new file mode 100644
index 0000000..bfb0e70
--- /dev/null
+++ b/keystone/client/v3/service/cinder.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    cinder_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            cinder:
+              password: ${_param:keystone_cinder_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            cinder:
+              type: volume
+              description: OpenStack Volume Service
+              endpoints:
+                cinder_public_v1:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8776/v1/$(project_id)s
+                  region: ${_param:openstack_region}
+                cinder_internal_v1:
+                  interface: 'internal'
+                  url: ${_param:cinder_service_protocol}://${_param:cinder_service_host}:8776/v1/$(project_id)s
+                  region: ${_param:openstack_region}
+                cinder_admin_v1:
+                  interface: 'admin'
+                  url: ${_param:cinder_service_protocol}://${_param:cinder_service_host}:8776/v1/$(project_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/cinder2.yml b/keystone/client/v3/service/cinder2.yml
new file mode 100644
index 0000000..c1ccec6
--- /dev/null
+++ b/keystone/client/v3/service/cinder2.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    cinder_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            cinder:
+              password: ${_param:keystone_cinder_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            cinderv2:
+              type: volumev2
+              description: OpenStack Volume Service V2
+              endpoints:
+                cinder_public_v2:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8776/v2/$(project_id)s
+                  region: ${_param:openstack_region}
+                cinder_internal_v2:
+                  interface: 'internal'
+                  url: ${_param:cinder_service_protocol}://${_param:cinder_service_host}:8776/v2/$(project_id)s
+                  region: ${_param:openstack_region}
+                cinder_admin_v2:
+                  interface: 'admin'
+                  url: ${_param:cinder_service_protocol}://${_param:cinder_service_host}:8776/v2/$(project_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/cinder3.yml b/keystone/client/v3/service/cinder3.yml
new file mode 100644
index 0000000..2184c4c
--- /dev/null
+++ b/keystone/client/v3/service/cinder3.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    cinder_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            cinder:
+              password: ${_param:keystone_cinder_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            cinderv3:
+              type: volumev3
+              description: OpenStack Volume Service V3
+              endpoints:
+                cinder_public_v3:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8776/v3/$(project_id)s
+                  region: ${_param:openstack_region}
+                cinder_internal_v3:
+                  interface: 'internal'
+                  url: ${_param:cinder_service_protocol}://${_param:cinder_service_host}:8776/v3/$(project_id)s
+                  region: ${_param:openstack_region}
+                cinder_admin_v3:
+                  interface: 'admin'
+                  url: ${_param:cinder_service_protocol}://${_param:cinder_service_host}:8776/v3/$(project_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/congress.yml b/keystone/client/v3/service/congress.yml
new file mode 100644
index 0000000..db0085b
--- /dev/null
+++ b/keystone/client/v3/service/congress.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    congress_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            congress:
+              password: ${_param:keystone_congress_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                    name: admin
+                    project_id: service
+          services:
+            congress:
+              type: policy
+              description: Congress service
+              endpoints:
+                congress_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:1789/
+                  region: ${_param:openstack_region}
+                congress_internal:
+                  interface: 'internal'
+                  url: ${_param:congress_service_protocol}://${_param:congress_service_host}:1789/
+                  region: ${_param:openstack_region}
+                congress_admin:
+                  interface: 'admin'
+                  url: ${_param:congress_service_protocol}://${_param:congress_service_host}:1789/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/designate.yml b/keystone/client/v3/service/designate.yml
new file mode 100644
index 0000000..59b2e6b
--- /dev/null
+++ b/keystone/client/v3/service/designate.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    designate_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            designate:
+              password: ${_param:keystone_designate_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            designate:
+                type: dns
+                description: OpenStack DNS service
+                endpoints:
+                  designate_public:
+                    interface: 'public'
+                    url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:9001/
+                    region: ${_param:openstack_region}
+                  designate_internal:
+                    interface: 'internal'
+                    url: ${_param:designate_service_protocol}://${_param:designate_service_host}:9001/
+                    region: ${_param:openstack_region}
+                  designate_admin:
+                    interface: 'admin'
+                    url: ${_param:designate_service_protocol}://${_param:designate_service_host}:9001/
+                    region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/glance.yml b/keystone/client/v3/service/glance.yml
new file mode 100644
index 0000000..dd86545
--- /dev/null
+++ b/keystone/client/v3/service/glance.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    glance_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            glance:
+              password: ${_param:keystone_glance_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            glance:
+              type: image
+              description: OpenStack Image Service
+              endpoints:
+                glance_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:9292
+                  region: ${_param:openstack_region}
+                glance_internal:
+                  interface: 'internal'
+                  url: ${_param:glance_service_protocol}://${_param:glance_service_host}:9292
+                  region: ${_param:openstack_region}
+                glance_admin:
+                  interface: 'admin'
+                  url: ${_param:glance_service_protocol}://${_param:glance_service_host}:9292
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/gnocchi.yml b/keystone/client/v3/service/gnocchi.yml
new file mode 100644
index 0000000..82c796a
--- /dev/null
+++ b/keystone/client/v3/service/gnocchi.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    gnocchi_service_protocol: http
+    gnocchi_public_host: ${_param:cluster_public_host}
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            gnocchi:
+              password: ${_param:keystone_gnocchi_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            gnocchi:
+              type: metric
+              description: OpenStack Metric Service
+              endpoints:
+                gnocchi_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:gnocchi_public_host}:8041/
+                  region: ${_param:openstack_region}
+                gnocchi_internal:
+                  interface: 'internal'
+                  url: ${_param:gnocchi_service_protocol}://${_param:gnocchi_service_host}:8041/
+                  region: ${_param:openstack_region}
+                gnocchi_admin:
+                  interface: 'admin'
+                  url: ${_param:gnocchi_service_protocol}://${_param:gnocchi_service_host}:8041/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/heat-cfn.yml b/keystone/client/v3/service/heat-cfn.yml
new file mode 100644
index 0000000..786d9d8
--- /dev/null
+++ b/keystone/client/v3/service/heat-cfn.yml
@@ -0,0 +1,24 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    heat_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          heat-cfn:
+            type: cloudformation
+            description: OpenStack CloudFormation Service
+            endpoints:
+              heat-cfn_public_v1:
+                interface: 'public'
+                url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8000/v1
+                region: ${_param:openstack_region}
+              heat-cfn_internal_v1:
+                interface: 'internal'
+                url: ${_param:heat_service_protocol}://${_param:heat_service_host}:8000/v1
+                region: ${_param:openstack_region}
+              heat-cfn_admin_v1:
+                interface: 'admin'
+                url: ${_param:heat_service_protocol}://${_param:heat_service_host}:8000/v1
+                region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/heat.yml b/keystone/client/v3/service/heat.yml
new file mode 100644
index 0000000..6c45bfe
--- /dev/null
+++ b/keystone/client/v3/service/heat.yml
@@ -0,0 +1,40 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    heat_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          roles:
+            heat_stack_user:
+              name: heat_stack_user
+              enabled: true
+            heat_stack_owner:
+              name: heat_stack_owner
+              enabled: true
+          users:
+            heat:
+              password: ${_param:keystone_heat_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            heat:
+              type: orchestration
+              description: OpenStack Orchestration Service
+              endpoints:
+                heat_public_v1:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8004/v1/%(project_id)s
+                  region: ${_param:openstack_region}
+                heat_internal_v1:
+                  interface: 'internal'
+                  url: ${_param:heat_service_protocol}://${_param:heat_service_host}:8004/v1/%(project_id)s
+                  region: ${_param:openstack_region}
+                heat_admin_v1:
+                  interface: 'admin'
+                  url: ${_param:heat_service_protocol}://${_param:heat_service_host}:8004/v1/%(project_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/ironic.yml b/keystone/client/v3/service/ironic.yml
new file mode 100644
index 0000000..09c6967
--- /dev/null
+++ b/keystone/client/v3/service/ironic.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    keystone_service_protocol: http
+    ironic_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            ironic:
+              password: ${_param:keystone_ironic_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          service:
+            ironic:
+              type: baremetal
+              description: OpenStack Baremetal Service
+              endpoints:
+                ironic_public:
+                  internface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:6385
+                  region: ${_param:openstack_region}
+                ironic_internal:
+                  internface: 'internal'
+                  url: ${_param:ironic_service_protocol}://${_param:ironic_service_host}:6385
+                  region: ${_param:openstack_region}
+                ironic_admin:
+                  internface: 'admin'
+                  url: ${_param:ironic_service_protocol}://${_param:ironic_service_host}:6385
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/keystone.yml b/keystone/client/v3/service/keystone.yml
new file mode 100644
index 0000000..a2c7837
--- /dev/null
+++ b/keystone/client/v3/service/keystone.yml
@@ -0,0 +1,49 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    keystone_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          cloud_name: 'admin_identity'
+          domains:
+            'Default':
+              projects:
+                service:
+                  description: "OpenStack Service tenant"
+                admin:
+                  description: "OpenStack Admin tenant"
+          roles:
+            service_admin:
+              name: admin
+              enabled: true
+            global_Member:
+              name: Member
+              enabled: true
+          users:
+            admin:
+              password: ${_param:keystone_admin_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  enabled: true
+                  project_id: admin
+          services:
+            keystone:
+              type: 'identity'
+              description: "OpenStack Identity Service"
+              endpoints:
+                keystone_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:5000/
+                  region: ${_param:openstack_region}
+                keystone_internal:
+                  interface: 'internal'
+                  url: ${_param:keystone_service_protocol}://${_param:keystone_service_host}:5000/
+                  region: ${_param:openstack_region}
+                keystone_admin:
+                  interface: 'admin'
+                  url: ${_param:keystone_service_protocol}://${_param:keystone_service_host}:5000/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/manila.yml b/keystone/client/v3/service/manila.yml
new file mode 100644
index 0000000..f486845
--- /dev/null
+++ b/keystone/client/v3/service/manila.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    manila_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            manila:
+              password: ${_param:keystone_manila_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            manila:
+              type: share
+              description: OpenStack Shared File Systems V1
+              endpoints:
+                manila_public_v1:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8786/v1/$(tenant_id)s
+                  region: ${_param:openstack_region}
+                manila_internal_v1:
+                  interface: 'internal'
+                  url: ${_param:manila_service_protocol}://${_param:manila_service_host}:8786/v1/$(tenant_id)s
+                  region: ${_param:openstack_region}
+                manila_admin_v1:
+                  interface: 'admin'
+                  url: ${_param:manila_service_protocol}://${_param:manila_service_host}:8786/v1/$(tenant_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/manila2.yml b/keystone/client/v3/service/manila2.yml
new file mode 100644
index 0000000..635147a
--- /dev/null
+++ b/keystone/client/v3/service/manila2.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    manila_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            manila:
+              password: ${_param:keystone_manila_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            manilav2:
+              type: sharev2
+              description: OpenStack Shared File Systems V2
+              endpoints:
+                manila_public_v2:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8786/v2/$(tenant_id)s
+                  region: ${_param:openstack_region}
+                manila_internal_v2:
+                  interface: 'internal'
+                  url: ${_param:manila_service_protocol}://${_param:manila_service_host}:8786/v2/$(tenant_id)s
+                  region: ${_param:openstack_region}
+                manila_admin_v2:
+                  interface: 'admin'
+                  url: ${_param:manila_service_protocol}://${_param:manila_service_host}:8786/v2/$(tenant_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/neutron.yml b/keystone/client/v3/service/neutron.yml
new file mode 100644
index 0000000..277a563
--- /dev/null
+++ b/keystone/client/v3/service/neutron.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    neutron_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            neutron:
+              password: ${_param:keystone_neutron_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            neutron:
+              type: network
+              description: OpenStack Networking Service
+              endpoints:
+                neutron_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:9696/
+                  region: ${_param:openstack_region}
+                neutron_interna;:
+                  interface: 'internal'
+                  url: ${_param:neutron_service_protocol}://${_param:neutron_service_host}:9696/
+                  region: ${_param:openstack_region}
+                neutron_admin:
+                  interface: 'admin'
+                  url: ${_param:neutron_service_protocol}://${_param:neutron_service_host}:9696/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/nova-placement.yml b/keystone/client/v3/service/nova-placement.yml
new file mode 100644
index 0000000..1fea757
--- /dev/null
+++ b/keystone/client/v3/service/nova-placement.yml
@@ -0,0 +1,25 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    nova_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          services:
+            placement:
+              type: placement
+              description: OpenStack Placement API
+              endpoints:
+                nova_placement_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8778
+                  region: ${_param:openstack_region}
+                nova_placement_internal:
+                  interface: 'internal'
+                  url: ${_param:nova_service_protocol}://${_param:nova_service_host}:8778
+                  region: ${_param:openstack_region}
+                nova_placement_admin:
+                  interface: 'admin'
+                  url: ${_param:nova_service_protocol}://${_param:nova_service_host}:8778
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/nova.yml b/keystone/client/v3/service/nova.yml
new file mode 100644
index 0000000..6665617
--- /dev/null
+++ b/keystone/client/v3/service/nova.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    nova_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            nova:
+              password: ${_param:keystone_nova_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            nova20:
+              type: compute_legacy
+              description: OpenStack Compute Service V2
+              endpoints:
+                nova_public_v2:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8774/v2/$(project_id)s
+                  region: ${_param:openstack_region}
+                nova_internal_v2:
+                  interface: 'internal'
+                  url: ${_param:nova_service_protocol}://${_param:nova_service_host}:8774/v2/$(project_id)s
+                  region: ${_param:openstack_region}
+                nova_admin_v2:
+                  interface: 'admin'
+                  url: ${_param:nova_service_protocol}://${_param:nova_service_host}:8774/v2/$(project_id)s
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/nova21.yml b/keystone/client/v3/service/nova21.yml
new file mode 100644
index 0000000..e936676
--- /dev/null
+++ b/keystone/client/v3/service/nova21.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    nova_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            nova:
+              password: ${_param:keystone_nova_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            nova:
+              type: compute
+              description: OpenStack Compute Service V2.1
+              endpoints:
+                nova_public_v2.1:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:8774/v2.1
+                  region: ${_param:openstack_region}
+                nova_internal_v2.1:
+                  interface: 'internal'
+                  url: ${_param:nova_service_protocol}://${_param:nova_service_host}:8774/v2.1
+                  region: ${_param:openstack_region}
+                nova_admin_v2.1:
+                  interface: 'admin'
+                  url: ${_param:nova_service_protocol}://${_param:nova_service_host}:8774/v2.1
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/octavia.yml b/keystone/client/v3/service/octavia.yml
new file mode 100644
index 0000000..a43b0a9
--- /dev/null
+++ b/keystone/client/v3/service/octavia.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    keystone_service_protocol: http
+    octavia_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            octavia:
+              password: ${_param:keystone_octavia_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          services:
+            octavia:
+              type: octavia
+              description: OpenStack Loadbalancing Service
+              endpoints:
+                octavia_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:9876/
+                  region: ${_param:openstack_region}
+                octavia_internal:
+                  interface: 'internal'
+                  url: ${_param:octavia_service_protocol}://${_param:octavia_service_host}:9876/
+                  region: ${_param:openstack_region}
+                octavia_admin:
+                  interface: 'admin'
+                  url: ${_param:octavia_service_protocol}://${_param:octavia_service_host}:9876/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/panko.yml b/keystone/client/v3/service/panko.yml
new file mode 100644
index 0000000..ee94697
--- /dev/null
+++ b/keystone/client/v3/service/panko.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    panko_service_protocol: http
+    panko_public_host: ${_param:cluster_public_host}
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            panko:
+              password: ${_param:keystone_panko_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          service:
+            panko:
+              type: event
+              description: OpenStack Event Service
+              endpoints:
+                panko_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:panko_public_host}:8977/
+                  region: ${_param:openstack_region}
+                panko_internal:
+                  interface: 'internal'
+                  url: ${_param:panko_service_protocol}://${_param:panko_service_host}:8977/
+                  region: ${_param:openstack_region}
+                panko_admin:
+                  interface: 'admin'
+                  url: ${_param:panko_service_protocol}://${_param:panko_service_host}:8977/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/radosgw-s3.yml b/keystone/client/v3/service/radosgw-s3.yml
new file mode 100644
index 0000000..25614cb
--- /dev/null
+++ b/keystone/client/v3/service/radosgw-s3.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    radosgw_s3_cluster_port: 8081
+    radosgw_service_protocol: http
+  keystone:
+    client:
+      resource:
+        v3:
+          users:
+            swift:
+              password: ${_param:keystone_swift_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          service:
+            radosgw-s3:
+              type: s3
+              description: S3 Service (radosgw)
+              endpoints:
+                radosgw-s3_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:${_param:radosgw_s3_cluster_port}/
+                  region: ${_param:openstack_region}
+                radosgw-s3_internal:
+                  interface: 'internal'
+                  url: ${_param:radosgw_service_protocol}://${_param:radosgw_service_host}:${_param:radosgw_s3_cluster_port}/
+                  region: ${_param:openstack_region}
+                radosgw-s3_admin:
+                  interface: 'admin'
+                  url: ${_param:radosgw_service_protocol}://${_param:radosgw_service_host}:${_param:radosgw_s3_cluster_port}/
+                  region: ${_param:openstack_region}
diff --git a/keystone/client/v3/service/radosgw-swift.yml b/keystone/client/v3/service/radosgw-swift.yml
new file mode 100644
index 0000000..4fa6756
--- /dev/null
+++ b/keystone/client/v3/service/radosgw-swift.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    radosgw_swift_cluster_port: 8081
+    radosgw_service_protocol: http
+  keystone:
+    client:
+      resources:
+        v3:
+          users:
+            swift:
+              password: ${_param:keystone_swift_password}
+              email: ${_param:admin_email}
+              roles:
+                service_admin:
+                  name: admin
+                  project_id: service
+          service:
+            radosgw-swift:
+              type: object-store
+              description: Swift Service (radosgw)
+              endpoints:
+                radosgw-swift_public:
+                  interface: 'public'
+                  url: ${_param:cluster_public_protocol}://${_param:cluster_public_host}:${_param:radosgw_swift_cluster_port}/swift/v1
+                  region: ${_param:openstack_region}
+                radosgw-swift_internal:
+                  interface: 'internal'
+                  url: ${_param:radosgw_service_protocol}://${_param:radosgw_service_host}:${_param:radosgw_swift_cluster_port}/swift/v1
+                  region: ${_param:openstack_region}
+                radosgw-swift_admin:
+                  interface: 'admin'
+                  url: ${_param:radosgw_service_protocol}://${_param:radosgw_service_host}:${_param:radosgw_swift_cluster_port}/swift/v1
+                  region: ${_param:openstack_region}
diff --git a/kubernetes/master/cluster.yml b/kubernetes/master/cluster.yml
index 864b031..1295f3a 100644
--- a/kubernetes/master/cluster.yml
+++ b/kubernetes/master/cluster.yml
@@ -5,11 +5,10 @@
 - system.haproxy.proxy.listen.kubernetes.apiserver
 parameters:
   _param:
-    kubernetes_netchecker_agent_image: mirantis/k8s-netchecker-agent:v1.2.2
-    kubernetes_netchecker_server_image: mirantis/k8s-netchecker-server:v1.2.2
-    aptly_server_hostname: apt
-    kubernetes_netchecker_agent_image_local: ${_param:aptly_server_hostname}:5000/mirantis/k8s-netchecker-agent:v1.2.2
-    kubernetes_netchecker_server_image_local: ${_param:aptly_server_hostname}:5000/mirantis/k8s-netchecker-server:v1.2.2
+    kubernetes_netchecker_agent_repo: mirantis
+    kubernetes_netchecker_server_repo: mirantis
+    kubernetes_netchecker_agent_image: ${_param:kubernetes_netchecker_agent_repo}/k8s-netchecker-agent:v1.2.2
+    kubernetes_netchecker_server_image: ${_param:kubernetes_netchecker_server_repo}/k8s-netchecker-server:v1.2.2
   kubernetes:
     master:
       container: false
@@ -17,3 +16,4 @@
         calico:
           prometheus:
             enabled: true
+
diff --git a/kubernetes/master/single.yml b/kubernetes/master/single.yml
index 2b67bd5..7fada57 100644
--- a/kubernetes/master/single.yml
+++ b/kubernetes/master/single.yml
@@ -2,11 +2,10 @@
 - service.kubernetes.master.single
 parameters:
   _param:
-    kubernetes_netchecker_agent_image: mirantis/k8s-netchecker-agent:v1.2.2
-    kubernetes_netchecker_server_image: mirantis/k8s-netchecker-server:v1.2.2
-    aptly_server_hostname: apt
-    kubernetes_netchecker_agent_image_local: ${_param:aptly_server_hostname}:5000/mirantis/k8s-netchecker-agent:v1.2.2
-    kubernetes_netchecker_server_image_local: ${_param:aptly_server_hostname}:5000/mirantis/k8s-netchecker-server:v1.2.2
+    kubernetes_netchecker_agent_repo: mirantis
+    kubernetes_netchecker_server_repo: mirantis
+    kubernetes_netchecker_agent_image: ${_param:kubernetes_netchecker_agent_repo}/k8s-netchecker-agent:v1.2.2
+    kubernetes_netchecker_server_image: ${_param:kubernetes_netchecker_server_repo}/k8s-netchecker-server:v1.2.2
   kubernetes:
     master:
       container: false
diff --git a/kubernetes/pool/cluster.yml b/kubernetes/pool/cluster.yml
index dfcfbcc..17e9006 100644
--- a/kubernetes/pool/cluster.yml
+++ b/kubernetes/pool/cluster.yml
@@ -3,21 +3,20 @@
 - service.docker.host
 parameters:
   _param:
+    kubernetes_calico_calicoctl_repo: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico
+    kubernetes_calico_repo: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico
+    kubernetes_calico_cni_repo: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico
+    kubernetes_hyperkube_repo: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes
+    kubernetes_contrail_cni_repo: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes
+    kubernetes_contrail_network_controller_repo: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/contrail-integration
+
     # component docker images
-    kubernetes_calico_calicoctl_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/ctl:v1.6.1-38-20171010022253
-    kubernetes_calico_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/node:v2.6.1
-    kubernetes_calico_cni_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/cni:v1.11.0-31-20171010012204
-    kubernetes_hyperkube_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/hyperkube-amd64:v1.8.11
-    kubernetes_contrail_cni_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/contrail-integration/contrail-cni:v1.2.0
-    kubernetes_contrail_network_controller_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/contrail-integration/contrail-network-controller:v1.2.0
-    #Local versions of images
-    aptly_server_hostname: apt
-    kubernetes_calico_calicoctl_image_local: ${_param:aptly_server_hostname}:5000/ctl:v1.6.1-38-20171010022253
-    kubernetes_calico_image_local: ${_param:aptly_server_hostname}:5000/node:v2.6.1
-    kubernetes_calico_cni_image_local: ${_param:aptly_server_hostname}:5000/cni:v1.11.0-31-20171010012204
-    kubernetes_hyperkube_image_local: ${_param:aptly_server_hostname}:5000/hyperkube-amd64:v1.8.11
-    kubernetes_contrail_cni_image_local: ${_param:aptly_server_hostname}:5000/contrail-cni:v1.2.0
-    kubernetes_contrail_network_controller_image_local: ${_param:aptly_server_hostname}:5000/contrail-network-controller:v1.2.0
+    kubernetes_calico_calicoctl_image: ${_param:kubernetes_calico_calicoctl_repo}/ctl:v1.6.4
+    kubernetes_calico_image: ${_param:kubernetes_calico_repo}/node:v2.6.9
+    kubernetes_calico_cni_image: ${_param:kubernetes_calico_cni_repo}/cni:v1.11.5
+    kubernetes_hyperkube_image: ${_param:kubernetes_hyperkube_repo}/hyperkube-amd64:v1.8.11-9
+    kubernetes_contrail_cni_image: ${_param:kubernetes_contrail_cni_repo}/contrail-cni:v1.2.0
+    kubernetes_contrail_network_controller_image: ${_param:kubernetes_contrail_network_controller_repo}/contrail-network-controller:v1.2.0
 
   kubernetes:
     pool:
diff --git a/kubernetes/pool/single.yml b/kubernetes/pool/single.yml
index fd17078..62a1d4b 100644
--- a/kubernetes/pool/single.yml
+++ b/kubernetes/pool/single.yml
@@ -3,21 +3,20 @@
 - service.docker.host
 parameters:
   _param:
+    kubernetes_calico_calicoctl_repo: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico
+    kubernetes_calico_repo: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico
+    kubernetes_calico_cni_repo: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico
+    kubernetes_hyperkube_repo: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes
+    kubernetes_contrail_cni_repo: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes
+    kubernetes_contrail_network_controller_repo: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/contrail-integration
+
     # component docker images
-    kubernetes_calico_calicoctl_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/ctl:v1.6.1-38-20171010022253
-    kubernetes_calico_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/node:v2.6.1
-    kubernetes_calico_cni_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/cni:v1.11.0-31-20171010012204
-    kubernetes_hyperkube_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/hyperkube-amd64:v1.8.11
-    kubernetes_contrail_cni_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/contrail-integration/contrail-cni:v1.2.0
-    kubernetes_contrail_network_controller_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/contrail-integration/contrail-network-controller:v1.2.0
-    #Local versions of images
-    aptly_server_hostname: apt
-    kubernetes_calico_calicoctl_image_local: ${_param:aptly_server_hostname}:5000/ctl:v1.6.1-38-20171010022253
-    kubernetes_calico_image_local: ${_param:aptly_server_hostname}:5000/node:v2.6.1
-    kubernetes_calico_cni_image_local: ${_param:aptly_server_hostname}:5000/cni:v1.11.0-31-20171010012204
-    kubernetes_hyperkube_image_local: ${_param:aptly_server_hostname}:5000/hyperkube-amd64:v1.8.11
-    kubernetes_contrail_cni_image_local: ${_param:aptly_server_hostname}:5000/contrail-cni:v1.2.0
-    kubernetes_contrail_network_controller_image_local: ${_param:aptly_server_hostname}:5000/contrail-network-controller:v1.2.0
+    kubernetes_calico_calicoctl_image: ${_param:kubernetes_calico_calicoctl_repo}/ctl:v1.6.1-38-20171010022253
+    kubernetes_calico_image: ${_param:kubernetes_calico_repo}/node:v2.6.1
+    kubernetes_calico_cni_image: ${_param:kubernetes_calico_cni_repo}/cni:v1.11.0-31-20171010012204
+    kubernetes_hyperkube_image: ${_param:kubernetes_hyperkube_repo}/hyperkube-amd64:v1.8.11-9
+    kubernetes_contrail_cni_image: ${_param:kubernetes_contrail_cni_repo}/contrail-cni:v1.2.0
+    kubernetes_contrail_network_controller_image: ${_param:kubernetes_contrail_network_controller_repo}/contrail-network-controller:v1.2.0
 
   kubernetes:
     pool:
diff --git a/octavia/api/cluster.yml b/octavia/api/cluster.yml
index 75a4c19..958f3d4 100644
--- a/octavia/api/cluster.yml
+++ b/octavia/api/cluster.yml
@@ -2,8 +2,17 @@
 - service.octavia.api.cluster
 - system.haproxy.proxy.listen.openstack.octavia
 parameters:
+  _param:
+    cluster_internal_protocol: 'http'
   octavia:
     api:
       enabled: true
       bind:
         address: ${_param:cluster_local_address}
+      database:
+        host: ${_param:openstack_database_address}
+      identity:
+        region: ${_param:openstack_region}
+        protocol: ${_param:cluster_internal_protocol}
+      message_queue:
+        host: ${_param:openstack_message_queue_address}
diff --git a/octavia/api/single.yml b/octavia/api/single.yml
index 685c4b4..a9d30a5 100644
--- a/octavia/api/single.yml
+++ b/octavia/api/single.yml
@@ -1,8 +1,17 @@
 classes:
 - service.octavia.api.single
 parameters:
+  _param:
+    internal_protocol: 'http'
   octavia:
     api:
       enabled: true
       bind:
         address: ${_param:single_address}
+      database:
+        host: ${_param:openstack_database_address}
+      identity:
+        region: ${_param:openstack_region}
+        protocol: ${_param:internal_protocol}
+      message_queue:
+        host: ${_param:openstack_message_queue_address}
diff --git a/octavia/manager/single.yml b/octavia/manager/single.yml
index acab136..6071764 100644
--- a/octavia/manager/single.yml
+++ b/octavia/manager/single.yml
@@ -1,6 +1,8 @@
 classes:
 - service.octavia.manager.single
 parameters:
+  _param:
+    internal_protocol: 'http'
   octavia:
     manager:
       enabled: true
@@ -9,3 +11,10 @@
         private_key: ${_param:octavia_private_key}
         user: octavia
         group: octavia
+      database:
+        host: ${_param:openstack_database_address}
+      identity:
+        region: ${_param:openstack_region}
+        protocol: ${_param:internal_protocol}
+      message_queue:
+        host: ${_param:openstack_message_queue_address}
diff --git a/openssh/server/single.yml b/openssh/server/single.yml
index 6ce0209..84f1fe5 100644
--- a/openssh/server/single.yml
+++ b/openssh/server/single.yml
@@ -1,2 +1,7 @@
 classes:
 - service.openssh.server
+- service.openssh.server.cis
+
+parameters:
+  _param:
+    ssh_banner_company_name: COMPANY_NAME