Merge "Added gerrit custom network to docker compose file model"
diff --git a/.releasenotes/notes/psql-issues-16cb5e030ef7dac5.yaml b/.releasenotes/notes/psql-issues-16cb5e030ef7dac5.yaml
new file mode 100644
index 0000000..9d0410e
--- /dev/null
+++ b/.releasenotes/notes/psql-issues-16cb5e030ef7dac5.yaml
@@ -0,0 +1,14 @@
+---
+summary: >
+  Enabled the Runbooks automation service to use an external datasource
+
+features:
+  - |
+    Enabled the Runbooks automation service to use an external datasource.
+    Now, you can configure the service to use the PostgreSQL database as an
+    external source for the datastore.
+
+    .. seealso::
+
+       * `MCP Operations Guide: Configure an external datasource <https://docs.mirantis.com/mcp/latest/mcp-operations-guide/devops-portal/use-runbooks-automation/configure-rundeck/configure-external-datasource.html>`__
+
diff --git a/.releasenotes/notes/raise-telegraf-version-a3e797a577b7e555.yaml b/.releasenotes/notes/raise-telegraf-version-a3e797a577b7e555.yaml
new file mode 100644
index 0000000..129681a
--- /dev/null
+++ b/.releasenotes/notes/raise-telegraf-version-a3e797a577b7e555.yaml
@@ -0,0 +1,9 @@
+---
+summary: >
+  Updated Telegraf to version 1.5
+
+upgrades:
+  - |
+    Changed the branch for building of the Telegraf package from v1.2 to
+    v1.5. The new branch includes the upstream release 1.5 branch and all
+    downstream improvements. By default, Telegraf v1.5 is installed.
diff --git a/.releasenotes/notes/rundeck-iframe-7b50b9185b0b27a5.yaml b/.releasenotes/notes/rundeck-iframe-7b50b9185b0b27a5.yaml
new file mode 100644
index 0000000..3f67dd4
--- /dev/null
+++ b/.releasenotes/notes/rundeck-iframe-7b50b9185b0b27a5.yaml
@@ -0,0 +1,18 @@
+---
+summary:
+  - Added the possibility to configure iFrame forwarding for the Runbooks
+    Automation service
+
+features:
+  - |
+    Added the possibility to configure iFrame forwarding for the Runbooks
+    Automation service. By default, the Rundeck service configuration does not
+    enable you to get access through an external proxy address and exposed
+    Rundeck port, which is 14440 by default. Now, you can easily forward the
+    Runbooks dashboard through a proxy endpoint in case of using the Devops
+    Portal through external proxy networks.
+
+    .. seealso::
+
+       * `MCP Operations Guide: Configure iFrame forwarding <https://docs.mirantis.com/mcp/latest/mcp-operations-guide/devops-portal/use-runbooks-automation/configure-rundeck/configure-iframe-forwarding.html>`__
+
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml
new file mode 100644
index 0000000..938fc7b
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_trusty_cassandra_source: http://apt.mirantis.com/trusty/cassandra/
+    mirror_mirantis_openstack_trusty_cassandra_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_trusty_cassandra_components: 21x
+    mirror_mirantis_openstack_trusty_cassandra_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_trusty_cassandra_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_trusty_cassandra:
+          source: ${_param:mirror_mirantis_openstack_trusty_cassandra_source}
+          distribution: ${_param:mirror_mirantis_openstack_trusty_cassandra_distribution}
+          components: ${_param:mirror_mirantis_openstack_trusty_cassandra_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_trusty_cassandra_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_trusty_cassandra_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_trusty_cassandra_components}
+            distributions:
+              - ubuntu-trusty/cassandra/${_param:apt_mk_version}/
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/grafana.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/grafana.yml
new file mode 100644
index 0000000..197e58c
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/grafana.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_trusty_grafana_source: http://apt.mirantis.com/trusty/grafana/
+    mirror_mirantis_openstack_trusty_grafana_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_trusty_grafana_components: main
+    mirror_mirantis_openstack_trusty_grafana_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_trusty_grafana_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_trusty_grafana:
+          source: ${_param:mirror_mirantis_openstack_trusty_grafana_source}
+          distribution: ${_param:mirror_mirantis_openstack_trusty_grafana_distribution}
+          components: ${_param:mirror_mirantis_openstack_trusty_grafana_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_trusty_grafana_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_trusty_grafana_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_trusty_grafana_components}
+            distributions:
+              - ubuntu-trusty/grafana/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/mitaka.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/mitaka.yml
new file mode 100644
index 0000000..556e1a3
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/mitaka.yml
@@ -0,0 +1,103 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+
+    mirror_mirantis_openstack_mitaka_trusty_source: http://apt.mirantis.com/trusty/openstack/mitaka/
+    mirror_mirantis_openstack_mitaka_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_trusty_components: main restricted
+    mirror_mirantis_openstack_mitaka_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_hotfix_trusty_source: http://apt.mirantis.com/trusty/openstack/mitaka/hotfix/
+    mirror_mirantis_openstack_mitaka_hotfix_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_hotfix_trusty_components: main restricted
+    mirror_mirantis_openstack_mitaka_hotfix_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_hotfix_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_security_trusty_source: http://apt.mirantis.com/trusty/openstack/mitaka/security/
+    mirror_mirantis_openstack_mitaka_security_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_security_trusty_components: main restricted
+    mirror_mirantis_openstack_mitaka_security_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_security_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_updates_trusty_source: http://apt.mirantis.com/trusty/openstack/mitaka/updates/
+    mirror_mirantis_openstack_mitaka_updates_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_updates_trusty_components: main restricted
+    mirror_mirantis_openstack_mitaka_updates_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_updates_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_holdback_trusty_source: http://apt.mirantis.com/trusty/openstack/mitaka/holdback/
+    mirror_mirantis_openstack_mitaka_holdback_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_holdback_trusty_components: main restricted
+    mirror_mirantis_openstack_mitaka_holdback_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_holdback_trusty_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_mitaka_trusty:
+          source: ${_param:mirror_mirantis_openstack_mitaka_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/mitaka/${_param:apt_mk_version}
+
+        mirantis_openstack_mitaka_hotfix_trusty:
+          source: ${_param:mirror_mirantis_openstack_mitaka_hotfix_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_hotfix_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_hotfix_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_hotfix_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_hotfix_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/mitaka/hotfix/${_param:apt_mk_version}
+
+        mirantis_openstack_mitaka_security_trusty:
+          source: ${_param:mirror_mirantis_openstack_mitaka_security_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_security_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_security_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_security_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_security_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/mitaka/security/${_param:apt_mk_version}
+
+        # required for alternative horizon plugins/etc..
+        mirantis_openstack_mitaka_updates_trusty:
+          source: ${_param:mirror_mirantis_openstack_mitaka_updates_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_updates_trusty_distribution}
+          components:  ${_param:mirror_mirantis_openstack_mitaka_updates_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_updates_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_updates_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/mitaka/updates/${_param:apt_mk_version}
+
+        # required for salt formulas
+        mirantis_openstack_mitaka_holdback_trusty:
+          source: ${_param:mirror_mirantis_openstack_mitaka_holdback_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_holdback_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_holdback_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_holdback_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_holdback_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/mitaka/holdback/${_param:apt_mk_version}
+
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/newton.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/newton.yml
new file mode 100644
index 0000000..ad867c3
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/newton.yml
@@ -0,0 +1,103 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+
+    mirror_mirantis_openstack_newton_trusty_source: http://apt.mirantis.com/trusty/openstack/newton/
+    mirror_mirantis_openstack_newton_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_trusty_components: main restricted
+    mirror_mirantis_openstack_newton_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_hotfix_trusty_source: http://apt.mirantis.com/trusty/openstack/newton/hotfix/
+    mirror_mirantis_openstack_newton_hotfix_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_hotfix_trusty_components: main restricted
+    mirror_mirantis_openstack_newton_hotfix_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_hotfix_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_security_trusty_source: http://apt.mirantis.com/trusty/openstack/newton/security/
+    mirror_mirantis_openstack_newton_security_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_security_trusty_components: main restricted
+    mirror_mirantis_openstack_newton_security_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_security_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_updates_trusty_source: http://apt.mirantis.com/trusty/openstack/newton/updates/
+    mirror_mirantis_openstack_newton_updates_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_updates_trusty_components: main restricted
+    mirror_mirantis_openstack_newton_updates_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_updates_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_holdback_trusty_source: http://apt.mirantis.com/trusty/openstack/newton/holdback/
+    mirror_mirantis_openstack_newton_holdback_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_holdback_trusty_components: main restricted
+    mirror_mirantis_openstack_newton_holdback_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_holdback_trusty_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_newton_trusty:
+          source: ${_param:mirror_mirantis_openstack_newton_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/newton/${_param:apt_mk_version}
+
+        mirantis_openstack_newton_hotfix_trusty:
+          source: ${_param:mirror_mirantis_openstack_newton_hotfix_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_hotfix_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_hotfix_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_hotfix_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_hotfix_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/newton/hotfix/${_param:apt_mk_version}
+
+        mirantis_openstack_newton_security_trusty:
+          source: ${_param:mirror_mirantis_openstack_newton_security_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_security_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_security_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_security_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_security_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/newton/security/${_param:apt_mk_version}
+
+        # required for alternative horizon plugins/etc..
+        mirantis_openstack_newton_updates_trusty:
+          source: ${_param:mirror_mirantis_openstack_newton_updates_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_updates_trusty_distribution}
+          components:  ${_param:mirror_mirantis_openstack_newton_updates_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_updates_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_updates_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/newton/updates/${_param:apt_mk_version}
+
+        # required for salt formulas
+        mirantis_openstack_newton_holdback_trusty:
+          source: ${_param:mirror_mirantis_openstack_newton_holdback_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_holdback_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_holdback_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_holdback_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_holdback_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/newton/holdback/${_param:apt_mk_version}
+
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/ocata.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/ocata.yml
new file mode 100644
index 0000000..c01b864
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/openstack/ocata.yml
@@ -0,0 +1,103 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+
+    mirror_mirantis_openstack_ocata_trusty_source: http://apt.mirantis.com/trusty/openstack/ocata/
+    mirror_mirantis_openstack_ocata_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_trusty_components: main restricted
+    mirror_mirantis_openstack_ocata_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_hotfix_trusty_source: http://apt.mirantis.com/trusty/openstack/ocata/hotfix/
+    mirror_mirantis_openstack_ocata_hotfix_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_hotfix_trusty_components: main restricted
+    mirror_mirantis_openstack_ocata_hotfix_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_hotfix_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_security_trusty_source: http://apt.mirantis.com/trusty/openstack/ocata/security/
+    mirror_mirantis_openstack_ocata_security_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_security_trusty_components: main restricted
+    mirror_mirantis_openstack_ocata_security_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_security_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_updates_trusty_source: http://apt.mirantis.com/trusty/openstack/ocata/updates/
+    mirror_mirantis_openstack_ocata_updates_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_updates_trusty_components: main restricted
+    mirror_mirantis_openstack_ocata_updates_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_updates_trusty_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_holdback_trusty_source: http://apt.mirantis.com/trusty/openstack/ocata/holdback/
+    mirror_mirantis_openstack_ocata_holdback_trusty_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_holdback_trusty_components: main restricted
+    mirror_mirantis_openstack_ocata_holdback_trusty_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_holdback_trusty_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_ocata_trusty:
+          source: ${_param:mirror_mirantis_openstack_ocata_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/ocata/${_param:apt_mk_version}
+
+        mirantis_openstack_ocata_hotfix_trusty:
+          source: ${_param:mirror_mirantis_openstack_ocata_hotfix_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_hotfix_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_hotfix_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_hotfix_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_hotfix_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/ocata/hotfix/${_param:apt_mk_version}
+
+        mirantis_openstack_ocata_security_trusty:
+          source: ${_param:mirror_mirantis_openstack_ocata_security_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_security_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_security_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_security_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_security_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/ocata/security/${_param:apt_mk_version}
+
+        # required for alternative horizon plugins/etc..
+        mirantis_openstack_ocata_updates_trusty:
+          source: ${_param:mirror_mirantis_openstack_ocata_updates_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_updates_trusty_distribution}
+          components:  ${_param:mirror_mirantis_openstack_ocata_updates_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_updates_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_updates_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/ocata/updates/${_param:apt_mk_version}
+
+        # required for salt formulas
+        mirantis_openstack_ocata_holdback_trusty:
+          source: ${_param:mirror_mirantis_openstack_ocata_holdback_trusty_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_holdback_trusty_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_holdback_trusty_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_holdback_trusty_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_holdback_trusty_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-trusty/openstack/ocata/holdback/${_param:apt_mk_version}
+
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/init.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/init.yml
new file mode 100644
index 0000000..8dfe2cd
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/init.yml
@@ -0,0 +1,3 @@
+classes:
+- system.aptly.server.mirror.ubuntu.trusty.mcp.apt_mk.saltstack.salt-2016-3
+- system.aptly.server.mirror.ubuntu.trusty.mcp.apt_mk.saltstack.salt-2017-7
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/salt-2016-3.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/salt-2016-3.yml
new file mode 100644
index 0000000..19b002a
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/salt-2016-3.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_trusty_saltstack_2016_3_source: http://apt.mirantis.com/trusty/salt/2016.3/
+    mirror_mirantis_openstack_trusty_saltstack_2016_3_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_trusty_saltstack_2016_3_components: main
+    mirror_mirantis_openstack_trusty_saltstack_2016_3_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_trusty_saltstack_2016_3_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_trusty_saltstack_2016_3:
+          source: ${_param:mirror_mirantis_openstack_trusty_saltstack_2016_3_source}
+          distribution: ${_param:mirror_mirantis_openstack_trusty_saltstack_2016_3_distribution}
+          components: ${_param:mirror_mirantis_openstack_trusty_saltstack_2016_3_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_trusty_saltstack_2016_3_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_trusty_saltstack_2016_3_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_trusty_saltstack_2016_3_components}
+            distributions:
+              - ubuntu-trusty/salt/2016.3/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/salt-2017-7.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/salt-2017-7.yml
new file mode 100644
index 0000000..703d0bf
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/saltstack/salt-2017-7.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_trusty_saltstack_2017_7_source: http://apt.mirantis.com/trusty/salt/2017.7/
+    mirror_mirantis_openstack_trusty_saltstack_2017_7_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_trusty_saltstack_2017_7_components: main
+    mirror_mirantis_openstack_trusty_saltstack_2017_7_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_trusty_saltstack_2017_7_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_trusty_saltstack_2017_7:
+          source: ${_param:mirror_mirantis_openstack_trusty_saltstack_2017_7_source}
+          distribution: ${_param:mirror_mirantis_openstack_trusty_saltstack_2017_7_distribution}
+          components: ${_param:mirror_mirantis_openstack_trusty_saltstack_2017_7_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_trusty_saltstack_2017_7_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_trusty_saltstack_2017_7_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_trusty_saltstack_2017_7_components}
+            distributions:
+              - ubuntu-trusty/salt/2017.7/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml
new file mode 100644
index 0000000..507ed5e
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_aptly_source: http://apt.mirantis.com/xenial/aptly/
+    mirror_mirantis_openstack_xenial_aptly_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_aptly_components: main
+    mirror_mirantis_openstack_xenial_aptly_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_aptly_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_aptly:
+          source: ${_param:mirror_mirantis_openstack_xenial_aptly_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_aptly_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_aptly_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_aptly_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_aptly_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_aptly_components}
+            distributions:
+              - ubuntu-xenial/aptly/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/cassandra.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/cassandra.yml
new file mode 100644
index 0000000..ce120b5
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/cassandra.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_cassandra_source: http://apt.mirantis.com/xenial/cassandra/
+    mirror_mirantis_openstack_xenial_cassandra_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_cassandra_components: 21x
+    mirror_mirantis_openstack_xenial_cassandra_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_cassandra_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_cassandra:
+          source: ${_param:mirror_mirantis_openstack_xenial_cassandra_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_cassandra_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_cassandra_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_cassandra_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_cassandra_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_cassandra_components}
+            distributions:
+              - ubuntu-xenial/cassandra/${_param:apt_mk_version}/
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/ceph.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/ceph.yml
new file mode 100644
index 0000000..d58dd96
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/ceph.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_ceph_source: http://apt.mirantis.com/xenial/ceph/
+    mirror_mirantis_openstack_xenial_ceph_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_ceph_components: luminous
+    mirror_mirantis_openstack_xenial_ceph_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_ceph_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_ceph:
+          source: ${_param:mirror_mirantis_openstack_xenial_ceph_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_ceph_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_ceph_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_ceph_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_ceph_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_ceph_components}
+            distributions:
+              - ubuntu-xenial/ceph/${_param:apt_mk_version}/
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml
new file mode 100644
index 0000000..703d202
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_docker_source: http://apt.mirantis.com/xenial/docker/
+    mirror_mirantis_openstack_xenial_docker_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_docker_components: stable
+    mirror_mirantis_openstack_xenial_docker_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_docker_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_docker:
+          source: ${_param:mirror_mirantis_openstack_xenial_docker_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_docker_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_docker_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_docker_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_docker_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_docker_components}
+            distributions:
+              - ubuntu-xenial/docker/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic.yml
new file mode 100644
index 0000000..b4946e1
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_elastic_source: http://apt.mirantis.com/xenial/elastic/2.x/
+    mirror_mirantis_openstack_xenial_elastic_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_elastic_components: main
+    mirror_mirantis_openstack_xenial_elastic_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_elastic_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_elastic:
+          source: ${_param:mirror_mirantis_openstack_xenial_elastic_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_elastic_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_elastic_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_elastic_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_elastic_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_elastic_components}
+            distributions:
+              - ubuntu-xenial/elastic/2.x/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml
new file mode 100644
index 0000000..9b6fe2a
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_glusterfs_source: http://apt.mirantis.com/xenial/glusterfs/
+    mirror_mirantis_openstack_xenial_glusterfs_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_glusterfs_components: "3.12"
+    mirror_mirantis_openstack_xenial_glusterfs_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_glusterfs_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_glusterfs:
+          source: ${_param:mirror_mirantis_openstack_xenial_glusterfs_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_glusterfs_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_glusterfs_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_glusterfs_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_glusterfs_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_glusterfs_components}
+            distributions:
+              - ubuntu-xenial/glusterfs/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/grafana.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/grafana.yml
new file mode 100644
index 0000000..e09ba61
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/grafana.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_grafana_source: http://apt.mirantis.com/xenial/grafana/
+    mirror_mirantis_openstack_xenial_grafana_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_grafana_components: main
+    mirror_mirantis_openstack_xenial_grafana_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_grafana_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_grafana:
+          source: ${_param:mirror_mirantis_openstack_xenial_grafana_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_grafana_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_grafana_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_grafana_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_grafana_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_grafana_components}
+            distributions:
+              - ubuntu-xenial/grafana/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/influxdb.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/influxdb.yml
new file mode 100644
index 0000000..01093fe
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/influxdb.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_influxdb_source: http://apt.mirantis.com/xenial/influxdb/
+    mirror_mirantis_openstack_xenial_influxdb_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_influxdb_components: main
+    mirror_mirantis_openstack_xenial_influxdb_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_influxdb_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_influxdb:
+          source: ${_param:mirror_mirantis_openstack_xenial_influxdb_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_influxdb_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_influxdb_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_influxdb_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_influxdb_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_influxdb_components}
+            distributions:
+              - ubuntu-xenial/influxdb/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana.yml
new file mode 100644
index 0000000..40df719
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_kibana_source: http://apt.mirantis.com/xenial/kibana/4.6/
+    mirror_mirantis_openstack_xenial_kibana_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_kibana_components: "kibana-46"
+    mirror_mirantis_openstack_xenial_kibana_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_kibana_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_kibana:
+          source: ${_param:mirror_mirantis_openstack_xenial_kibana_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_kibana_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_kibana_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_kibana_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_kibana_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_kibana_components}
+            distributions:
+              - ubuntu-xenial/kibana/4.6/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/maas.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/maas.yml
new file mode 100644
index 0000000..3d63b00
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/maas.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_maas_source: http://apt.mirantis.com/xenial/maas/
+    mirror_mirantis_openstack_xenial_maas_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_maas_components: main
+    mirror_mirantis_openstack_xenial_maas_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_maas_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_maas:
+          source: ${_param:mirror_mirantis_openstack_xenial_maas_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_maas_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_maas_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_maas_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_maas_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_maas_components}
+            distributions:
+              - ubuntu-xenial/maas/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/mitaka.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/mitaka.yml
new file mode 100644
index 0000000..d50b2ca
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/mitaka.yml
@@ -0,0 +1,103 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+
+    mirror_mirantis_openstack_mitaka_xenial_source: http://apt.mirantis.com/xenial/openstack/mitaka/
+    mirror_mirantis_openstack_mitaka_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_xenial_components: main restricted
+    mirror_mirantis_openstack_mitaka_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_hotfix_xenial_source: http://apt.mirantis.com/xenial/openstack/mitaka/hotfix/
+    mirror_mirantis_openstack_mitaka_hotfix_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_hotfix_xenial_components: main restricted
+    mirror_mirantis_openstack_mitaka_hotfix_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_hotfix_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_security_xenial_source: http://apt.mirantis.com/xenial/openstack/mitaka/security/
+    mirror_mirantis_openstack_mitaka_security_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_security_xenial_components: main restricted
+    mirror_mirantis_openstack_mitaka_security_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_security_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_updates_xenial_source: http://apt.mirantis.com/xenial/openstack/mitaka/updates/
+    mirror_mirantis_openstack_mitaka_updates_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_updates_xenial_components: main restricted
+    mirror_mirantis_openstack_mitaka_updates_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_updates_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_mitaka_holdback_xenial_source: http://apt.mirantis.com/xenial/openstack/mitaka/holdback/
+    mirror_mirantis_openstack_mitaka_holdback_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_mitaka_holdback_xenial_components: main restricted
+    mirror_mirantis_openstack_mitaka_holdback_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_mitaka_holdback_xenial_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_mitaka_xenial:
+          source: ${_param:mirror_mirantis_openstack_mitaka_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/mitaka/${_param:apt_mk_version}
+
+        mirantis_openstack_mitaka_hotfix_xenial:
+          source: ${_param:mirror_mirantis_openstack_mitaka_hotfix_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_hotfix_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_hotfix_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_hotfix_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_hotfix_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/mitaka/hotfix/${_param:apt_mk_version}
+
+        mirantis_openstack_mitaka_security_xenial:
+          source: ${_param:mirror_mirantis_openstack_mitaka_security_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_security_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_security_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_security_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_security_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/mitaka/security/${_param:apt_mk_version}
+
+        # required for alternative horizon plugins/etc..
+        mirantis_openstack_mitaka_updates_xenial:
+          source: ${_param:mirror_mirantis_openstack_mitaka_updates_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_updates_xenial_distribution}
+          components:  ${_param:mirror_mirantis_openstack_mitaka_updates_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_updates_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_updates_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/mitaka/updates/${_param:apt_mk_version}
+
+        # required for salt formulas
+        mirantis_openstack_mitaka_holdback_xenial:
+          source: ${_param:mirror_mirantis_openstack_mitaka_holdback_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_mitaka_holdback_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_mitaka_holdback_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_mitaka_holdback_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_mitaka_holdback_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/mitaka/holdback/${_param:apt_mk_version}
+
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/newton.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/newton.yml
new file mode 100644
index 0000000..95eb192
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/newton.yml
@@ -0,0 +1,103 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+
+    mirror_mirantis_openstack_newton_xenial_source: http://apt.mirantis.com/xenial/openstack/newton/
+    mirror_mirantis_openstack_newton_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_xenial_components: main restricted
+    mirror_mirantis_openstack_newton_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_hotfix_xenial_source: http://apt.mirantis.com/xenial/openstack/newton/hotfix/
+    mirror_mirantis_openstack_newton_hotfix_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_hotfix_xenial_components: main restricted
+    mirror_mirantis_openstack_newton_hotfix_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_hotfix_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_security_xenial_source: http://apt.mirantis.com/xenial/openstack/newton/security/
+    mirror_mirantis_openstack_newton_security_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_security_xenial_components: main restricted
+    mirror_mirantis_openstack_newton_security_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_security_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_updates_xenial_source: http://apt.mirantis.com/xenial/openstack/newton/updates/
+    mirror_mirantis_openstack_newton_updates_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_updates_xenial_components: main restricted
+    mirror_mirantis_openstack_newton_updates_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_updates_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_newton_holdback_xenial_source: http://apt.mirantis.com/xenial/openstack/newton/holdback/
+    mirror_mirantis_openstack_newton_holdback_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_newton_holdback_xenial_components: main restricted
+    mirror_mirantis_openstack_newton_holdback_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_newton_holdback_xenial_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_newton_xenial:
+          source: ${_param:mirror_mirantis_openstack_newton_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/newton/${_param:apt_mk_version}
+
+        mirantis_openstack_newton_hotfix_xenial:
+          source: ${_param:mirror_mirantis_openstack_newton_hotfix_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_hotfix_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_hotfix_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_hotfix_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_hotfix_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/newton/hotfix/${_param:apt_mk_version}
+
+        mirantis_openstack_newton_security_xenial:
+          source: ${_param:mirror_mirantis_openstack_newton_security_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_security_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_security_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_security_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_security_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/newton/security/${_param:apt_mk_version}
+
+        # required for alternative horizon plugins/etc..
+        mirantis_openstack_newton_updates_xenial:
+          source: ${_param:mirror_mirantis_openstack_newton_updates_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_updates_xenial_distribution}
+          components:  ${_param:mirror_mirantis_openstack_newton_updates_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_updates_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_updates_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/newton/updates/${_param:apt_mk_version}
+
+        # required for salt formulas
+        mirantis_openstack_newton_holdback_xenial:
+          source: ${_param:mirror_mirantis_openstack_newton_holdback_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_newton_holdback_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_newton_holdback_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_newton_holdback_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_newton_holdback_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/newton/holdback/${_param:apt_mk_version}
+
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/ocata.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/ocata.yml
new file mode 100644
index 0000000..67f11c8
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/openstack/ocata.yml
@@ -0,0 +1,103 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+
+    mirror_mirantis_openstack_ocata_xenial_source: http://apt.mirantis.com/xenial/openstack/ocata/
+    mirror_mirantis_openstack_ocata_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_xenial_components: main restricted
+    mirror_mirantis_openstack_ocata_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_hotfix_xenial_source: http://apt.mirantis.com/xenial/openstack/ocata/hotfix/
+    mirror_mirantis_openstack_ocata_hotfix_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_hotfix_xenial_components: main restricted
+    mirror_mirantis_openstack_ocata_hotfix_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_hotfix_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_security_xenial_source: http://apt.mirantis.com/xenial/openstack/ocata/security/
+    mirror_mirantis_openstack_ocata_security_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_security_xenial_components: main restricted
+    mirror_mirantis_openstack_ocata_security_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_security_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_updates_xenial_source: http://apt.mirantis.com/xenial/openstack/ocata/updates/
+    mirror_mirantis_openstack_ocata_updates_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_updates_xenial_components: main restricted
+    mirror_mirantis_openstack_ocata_updates_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_updates_xenial_gpgkeys:
+      - A76882D3
+
+    mirror_mirantis_openstack_ocata_holdback_xenial_source: http://apt.mirantis.com/xenial/openstack/ocata/holdback/
+    mirror_mirantis_openstack_ocata_holdback_xenial_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_ocata_holdback_xenial_components: main restricted
+    mirror_mirantis_openstack_ocata_holdback_xenial_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_ocata_holdback_xenial_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_ocata_xenial:
+          source: ${_param:mirror_mirantis_openstack_ocata_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/ocata/${_param:apt_mk_version}
+
+        mirantis_openstack_ocata_hotfix_xenial:
+          source: ${_param:mirror_mirantis_openstack_ocata_hotfix_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_hotfix_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_hotfix_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_hotfix_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_hotfix_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/ocata/hotfix/${_param:apt_mk_version}
+
+        mirantis_openstack_ocata_security_xenial:
+          source: ${_param:mirror_mirantis_openstack_ocata_security_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_security_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_security_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_security_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_security_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/ocata/security/${_param:apt_mk_version}
+
+        # required for alternative horizon plugins/etc..
+        mirantis_openstack_ocata_updates_xenial:
+          source: ${_param:mirror_mirantis_openstack_ocata_updates_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_updates_xenial_distribution}
+          components:  ${_param:mirror_mirantis_openstack_ocata_updates_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_updates_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_updates_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/ocata/updates/${_param:apt_mk_version}
+
+        # required for salt formulas
+        mirantis_openstack_ocata_holdback_xenial:
+          source: ${_param:mirror_mirantis_openstack_ocata_holdback_xenial_source}
+          distribution: ${_param:mirror_mirantis_openstack_ocata_holdback_xenial_distribution}
+          components: ${_param:mirror_mirantis_openstack_ocata_holdback_xenial_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_ocata_holdback_xenial_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_ocata_holdback_xenial_gpgkeys}
+          publisher:
+            component: main
+            distributions:
+              - ubuntu-xenial/openstack/ocata/holdback/${_param:apt_mk_version}
+
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/init.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/init.yml
new file mode 100644
index 0000000..59952be
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/init.yml
@@ -0,0 +1,3 @@
+classes:
+- system.aptly.server.mirror.ubuntu.xenial.mcp.apt_mk.saltstack.salt-2016-3
+- system.aptly.server.mirror.ubuntu.xenial.mcp.apt_mk.saltstack.salt-2017-7
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2016-3.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2016-3.yml
new file mode 100644
index 0000000..86a33e6
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2016-3.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_saltstack_2016_3_source: http://apt.mirantis.com/xenial/salt/2016.3/
+    mirror_mirantis_openstack_xenial_saltstack_2016_3_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_saltstack_2016_3_components: main
+    mirror_mirantis_openstack_xenial_saltstack_2016_3_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_saltstack_2016_3_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_saltstack_2016_3:
+          source: ${_param:mirror_mirantis_openstack_xenial_saltstack_2016_3_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_saltstack_2016_3_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_saltstack_2016_3_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_saltstack_2016_3_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_saltstack_2016_3_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_saltstack_2016_3_components}
+            distributions:
+              - ubuntu-xenial/salt/2016.3/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2017-7.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2017-7.yml
new file mode 100644
index 0000000..0478cde
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2017-7.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_saltstack_2017_7_source: http://apt.mirantis.com/xenial/salt/2017.7/
+    mirror_mirantis_openstack_xenial_saltstack_2017_7_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_saltstack_2017_7_components: main
+    mirror_mirantis_openstack_xenial_saltstack_2017_7_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_saltstack_2017_7_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_saltstack_2017_7:
+          source: ${_param:mirror_mirantis_openstack_xenial_saltstack_2017_7_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_saltstack_2017_7_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_saltstack_2017_7_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_saltstack_2017_7_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_saltstack_2017_7_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_saltstack_2017_7_components}
+            distributions:
+              - ubuntu-xenial/salt/2017.7/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/sensu.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/sensu.yml
new file mode 100644
index 0000000..505ec97
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/sensu.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    mirror_mirantis_openstack_xenial_sensu_source: http://apt.mirantis.com/xenial/sensu/
+    mirror_mirantis_openstack_xenial_sensu_distribution: ${_param:apt_mk_version}
+    mirror_mirantis_openstack_xenial_sensu_components: main
+    mirror_mirantis_openstack_xenial_sensu_key_url: "http://apt.mirantis.com/public.gpg"
+    mirror_mirantis_openstack_xenial_sensu_gpgkeys:
+      - A76882D3
+  aptly:
+    server:
+      mirror:
+        mirantis_openstack_xenial_sensu:
+          source: ${_param:mirror_mirantis_openstack_xenial_sensu_source}
+          distribution: ${_param:mirror_mirantis_openstack_xenial_sensu_distribution}
+          components: ${_param:mirror_mirantis_openstack_xenial_sensu_components}
+          architectures: amd64
+          key_url: ${_param:mirror_mirantis_openstack_xenial_sensu_key_url}
+          gpgkeys: ${_param:mirror_mirantis_openstack_xenial_sensu_gpgkeys}
+          publisher:
+            component: ${_param:mirror_mirantis_openstack_xenial_sensu_components}
+            distributions:
+              - ubuntu-xenial/sensu/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/ceph/backup/client/single.yml b/ceph/backup/client/single.yml
new file mode 100644
index 0000000..c3afe96
--- /dev/null
+++ b/ceph/backup/client/single.yml
@@ -0,0 +1,3 @@
+classes:
+- service.ceph.backup.client
+- system.openssh.client.root
\ No newline at end of file
diff --git a/ceph/backup/server/single.yml b/ceph/backup/server/single.yml
new file mode 100644
index 0000000..ca36297
--- /dev/null
+++ b/ceph/backup/server/single.yml
@@ -0,0 +1,2 @@
+classes:
+- service.ceph.backup.server
diff --git a/devops_portal/service/hce.yml b/devops_portal/service/hce.yml
new file mode 100644
index 0000000..274541c
--- /dev/null
+++ b/devops_portal/service/hce.yml
@@ -0,0 +1,15 @@
+parameters:
+  devops_portal:
+    config:
+      service:
+        hardware-correlation:
+          configure_proxy: true
+          resolve_hostname: true
+          proxy_connect_timeout: 300
+          proxy_send_timeout: 300
+          proxy_read_timeout: 300
+          send_timeout: 300
+          endpoint:
+            address: ${_param:hce_bind_host}
+            port: ${_param:hce_bind_port}
+            https: ${_param:hce_ssl:enabled}
diff --git a/docker/host.yml b/docker/host.yml
index c3cc808..aef7a32 100644
--- a/docker/host.yml
+++ b/docker/host.yml
@@ -13,3 +13,4 @@
       options:
         ipv6: true
         fixed-cidr-v6: fc00::/7
+        storage-driver: overlay2
diff --git a/docker/swarm/manager.yml b/docker/swarm/manager.yml
index 12bfc0c..3b2d916 100644
--- a/docker/swarm/manager.yml
+++ b/docker/swarm/manager.yml
@@ -11,3 +11,7 @@
       master:
         host: ${_param:cluster_node01_address}
         port: ${_param:docker_swarm_master_port}
+    host:
+      options:
+        log-opts:
+          labels: "com.docker.stack.namespace,com.docker.swarm.service.name,com.docker.swarm.task.name"
diff --git a/docker/swarm/master.yml b/docker/swarm/master.yml
index fba9af3..d327796 100644
--- a/docker/swarm/master.yml
+++ b/docker/swarm/master.yml
@@ -7,3 +7,7 @@
     swarm:
       role: master
       advertise_addr: ${_param:single_address}
+    host:
+      options:
+        log-opts:
+          labels: "com.docker.stack.namespace,com.docker.swarm.service.name,com.docker.swarm.task.name"
diff --git a/docker/swarm/stack/hce.yml b/docker/swarm/stack/hce.yml
new file mode 100644
index 0000000..f059602
--- /dev/null
+++ b/docker/swarm/stack/hce.yml
@@ -0,0 +1,34 @@
+parameters:
+  _param:
+    docker_hce_replicas: 1
+    docker_image_hce: docker-prod-local.artifactory.mirantis.com/mirantis/oss/hce
+    hce_bind_host: hce-api
+    hce_bind_port: ${_param:haproxy_hce_bind_port}
+    hce_elasticsearch_host: elastic-endpoint-ip
+    hce_elasticsearch_port: elastic-endpoint-port
+    hce_prometheus_host: prometheus-endpoint-ip
+    hce_prometheus_port: prometheus-endpoint-port
+    hce_ssl:
+      enabled: false
+  docker:
+    client:
+      stack:
+        hce:
+          environment:
+            HCEELASTICHOST: ${_param:hce_elasticsearch_host}
+            HCEELASTICPORT: ${_param:hce_elasticsearch_port}
+            HCEPROMETHEUSHOST: ${_param:hce_prometheus_host}
+            HCEPROMETHEUSPORT: ${_param:hce_prometheus_port}
+          service:
+            hce-api:
+              image: ${_param:docker_image_hce}
+              deploy:
+                replicas: ${_param:docker_hce_replicas}
+                restart_policy:
+                  condition: any
+              ports:
+                - ${_param:haproxy_hce_exposed_port}:${_param:haproxy_hce_bind_port}
+          network:
+            default:
+              external:
+                name: oss_backend
diff --git a/fluentd/label/default_output/drop_event.yml b/fluentd/label/default_output/drop_event.yml
new file mode 100644
index 0000000..295862c
--- /dev/null
+++ b/fluentd/label/default_output/drop_event.yml
@@ -0,0 +1,17 @@
+agent:
+  config:
+    label:
+      default_output:
+        filter:
+          drop_event:
+            tag: '**'
+            type: grep
+            exclude:
+              - name: drop_event
+                regexp: ^.+?$
+          remove_drop_event_key:
+            require:
+              - drop_event
+            tag: '**'
+            type: record_transformer
+            remove_keys: drop_event
diff --git a/fluentd/label/default_output/file.yml b/fluentd/label/default_output/file.yml
index c67e1e0..80707d3 100644
--- a/fluentd/label/default_output/file.yml
+++ b/fluentd/label/default_output/file.yml
@@ -4,7 +4,6 @@
   fluentd:
     agent:
       config:
-        dollar: '$'
         label:
           default_output:
             filter:
@@ -18,9 +17,9 @@
                   - name: environment_label
                     value: ${_param:cluster_domain}
                   - name: Hostname
-                    value: ${fluentd:config:dollar}{ hostname }
+                    value: ${fluentd:dollar}{ hostname }
                   - name: Timestamp
-                    value: ${fluentd:config:dollar}{ time.strftime('%Y-%m-%dT%H:%M:%S%z') }
+                    value: ${fluentd:dollar}{ time.strftime('%Y-%m-%dT%H:%M:%S%z') }
             match:
               everything:
                 tag: '**'
diff --git a/haproxy/proxy/listen/oss/hce.yml b/haproxy/proxy/listen/oss/hce.yml
new file mode 100644
index 0000000..499674c
--- /dev/null
+++ b/haproxy/proxy/listen/oss/hce.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    haproxy_hce_bind_host: ${_param:haproxy_bind_address}
+    haproxy_hce_bind_port: 8886
+    haproxy_hce_exposed_port: 18886
+    haproxy_hce_ssl:
+      enabled: false
+  haproxy:
+    proxy:
+      listen:
+        hce:
+          mode: http
+          balance: source
+          http_request:
+            - action: "add-header X-Forwarded-Proto https"
+              condition: "if { ssl_fc }"
+          binds:
+            - address: ${_param:haproxy_hce_bind_host}
+              port: ${_param:haproxy_hce_bind_port}
+              ssl: ${_param:haproxy_hce_ssl}
+          servers:
+            - name: ${_param:cluster_node01_name}
+              host: ${_param:cluster_node01_address}
+              port: ${_param:haproxy_hce_exposed_port}
+              params: check
+            - name: ${_param:cluster_node02_name}
+              host: ${_param:cluster_node02_address}
+              port: ${_param:haproxy_hce_exposed_port}
+              params: backup check
+            - name: ${_param:cluster_node03_name}
+              host: ${_param:cluster_node03_address}
+              port: ${_param:haproxy_hce_exposed_port}
+              params: backup check
diff --git a/jenkins/client/approved_scripts.yml b/jenkins/client/approved_scripts.yml
index 4f12bd6..1973906 100644
--- a/jenkins/client/approved_scripts.yml
+++ b/jenkins/client/approved_scripts.yml
@@ -131,6 +131,7 @@
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods toBoolean java.lang.Boolean
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.Object java.lang.String
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods multiply java.lang.String java.lang.Number
+        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods minus java.lang.String java.lang.Object
         - method java.io.File listFiles
         - method java.lang.String concat java.lang.String
         - method org.jenkinsci.plugins.workflow.steps.FlowInterruptedException getCauses
diff --git a/jenkins/client/init.yml b/jenkins/client/init.yml
index 3eeac91..e4a3fcd 100644
--- a/jenkins/client/init.yml
+++ b/jenkins/client/init.yml
@@ -8,6 +8,8 @@
     jenkins_client_password: none
     jenkins_master_host: ${_param:control_vip_address}
     jenkins_master_port: 8081
+    jenkins_aptly_storages: "local"
+    jenkins_pipelines_branch: "master"
   jenkins:
     client:
       master:
diff --git a/jenkins/client/job/aptly.yml b/jenkins/client/job/aptly.yml
index 83b70cb..2ac90bb 100644
--- a/jenkins/client/job/aptly.yml
+++ b/jenkins/client/job/aptly.yml
@@ -63,6 +63,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: aptly-promote-pipeline.groovy
             param:
@@ -96,3 +97,60 @@
                 type: string
                 default: "${_param:jenkins_aptly_storages}"
                 description: "Comma separated list of storage"
+      job_template:
+        aptly-all:
+          name: aptly-{{operation}}-all-{{source}}-{{target}}
+          jobs:
+            - operation: promote
+              diff_only: false
+              source: nightly
+              target: testing
+            - operation: promote
+              diff_only: false
+              source: testing
+              target: stable
+          template:
+            discard:
+              build:
+                keep_num: 25
+              artifact:
+                keep_num: 25
+            type: workflow-scm
+            concurrent: false
+            scm:
+              type: git
+              url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
+              credentials: "gerrit"
+              script: aptly-promote-pipeline.groovy
+            param:
+              SOURCE:
+                type: string
+                default: "(.*)/{{source}}"
+              TARGET:
+                type: string
+                default: "{0}/{{target}}"
+              RECREATE:
+                type: boolean
+                default: 'false'
+              DUMP_PUBLISH:
+                type: boolean
+                default: 'true'
+              DIFF_ONLY:
+                type: boolean
+                default: '{{diff_only}}'
+              APTLY_URL:
+                type: string
+                default: "${_param:jenkins_aptly_api_url}"
+              COMPONENTS:
+                type: string
+                default: "all"
+                description: "Comma separated list (,)"
+              PACKAGES:
+                type: string
+                default: "all"
+                description: "Comma separated list (,)"
+              STORAGES:
+                type: string
+                default: "${_param:jenkins_aptly_storages}"
+                description: "Comma separated list of storage"
diff --git a/jenkins/client/job/ceph/add-node.yml b/jenkins/client/job/ceph/add-node.yml
index 9fee51e..29af563 100644
--- a/jenkins/client/job/ceph/add-node.yml
+++ b/jenkins/client/job/ceph/add-node.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ceph-add-node.groovy
           param:
diff --git a/jenkins/client/job/ceph/backend-migration.yml b/jenkins/client/job/ceph/backend-migration.yml
index a8736a2..ab3f639 100644
--- a/jenkins/client/job/ceph/backend-migration.yml
+++ b/jenkins/client/job/ceph/backend-migration.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ceph-backend-migration.groovy
           param:
diff --git a/jenkins/client/job/ceph/remove-node.yml b/jenkins/client/job/ceph/remove-node.yml
index 4a5efe3..af678b5 100644
--- a/jenkins/client/job/ceph/remove-node.yml
+++ b/jenkins/client/job/ceph/remove-node.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ceph-remove-node.groovy
           param:
diff --git a/jenkins/client/job/ceph/remove-osd.yml b/jenkins/client/job/ceph/remove-osd.yml
index af3b9ed..0a5801d 100644
--- a/jenkins/client/job/ceph/remove-osd.yml
+++ b/jenkins/client/job/ceph/remove-osd.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ceph-remove-osd.groovy
           param:
diff --git a/jenkins/client/job/ceph/replace-failed-osd.yml b/jenkins/client/job/ceph/replace-failed-osd.yml
index 775915f..43c2f0b 100644
--- a/jenkins/client/job/ceph/replace-failed-osd.yml
+++ b/jenkins/client/job/ceph/replace-failed-osd.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ceph-replace-failed-osd.groovy
           param:
diff --git a/jenkins/client/job/ceph/upgrade.yml b/jenkins/client/job/ceph/upgrade.yml
index 9b58f3b..7717761 100644
--- a/jenkins/client/job/ceph/upgrade.yml
+++ b/jenkins/client/job/ceph/upgrade.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ceph-upgrade.groovy
           param:
@@ -71,4 +72,4 @@
             BACKUP_ENABLED:
               type: boolean
               default: 'true'
-              description: Set to True if disks of Ceph VMs should be copied before upgrade
+              description: Select to copy the disks of Ceph VMs before upgrade and backup Ceph directories on OSD nodes.
diff --git a/jenkins/client/job/debian/packages/extra.yml b/jenkins/client/job/debian/packages/extra.yml
index 13ee191..383a2d3 100644
--- a/jenkins/client/job/debian/packages/extra.yml
+++ b/jenkins/client/job/debian/packages/extra.yml
@@ -148,11 +148,11 @@
             - package: telegraf
               dist: trusty
               build: telegraf
-              branch: release-1.2
+              branch: release-1.5
             - package: telegraf
               dist: xenial
               build: telegraf
-              branch: release-1.2
+              branch: release-1.5
             - package: libvirt-exporter
               dist: xenial
               build: libvirt-exporter
@@ -195,6 +195,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-{{build}}.groovy
             trigger:
diff --git a/jenkins/client/job/debian/packages/heat/resources.yml b/jenkins/client/job/debian/packages/heat/resources.yml
index 73cceb5..92bdbe0 100644
--- a/jenkins/client/job/debian/packages/heat/resources.yml
+++ b/jenkins/client/job/debian/packages/heat/resources.yml
@@ -26,6 +26,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/debian/packages/horizon/modules.yml b/jenkins/client/job/debian/packages/horizon/modules.yml
index 4fe4966..ebf3b21 100644
--- a/jenkins/client/job/debian/packages/horizon/modules.yml
+++ b/jenkins/client/job/debian/packages/horizon/modules.yml
@@ -160,6 +160,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/debian/packages/horizon/themes.yml b/jenkins/client/job/debian/packages/horizon/themes.yml
index a26977f..dbaab83 100644
--- a/jenkins/client/job/debian/packages/horizon/themes.yml
+++ b/jenkins/client/job/debian/packages/horizon/themes.yml
@@ -40,6 +40,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-pipeline.groovy
             trigger:
@@ -94,4 +95,4 @@
                 default: "amd64"
               UPLOAD_APTLY:
                 type: boolean
-                default: 'true'
\ No newline at end of file
+                default: 'true'
diff --git a/jenkins/client/job/debian/packages/salt-multi.yml b/jenkins/client/job/debian/packages/salt-multi.yml
index 322afde..90e6f02 100644
--- a/jenkins/client/job/debian/packages/salt-multi.yml
+++ b/jenkins/client/job/debian/packages/salt-multi.yml
@@ -56,6 +56,9 @@
             - name: kubernetes
               upload_source_package: true
               dist: xenial
+            - name: mirascan
+              upload_source_package: true
+              dist: xenial
             - name: neutron
               upload_source_package: true
               dist: xenial
@@ -76,6 +79,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/debian/packages/salt.yml b/jenkins/client/job/debian/packages/salt.yml
index 74665e7..6928606 100644
--- a/jenkins/client/job/debian/packages/salt.yml
+++ b/jenkins/client/job/debian/packages/salt.yml
@@ -637,6 +637,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/debian/packages/testing.yml b/jenkins/client/job/debian/packages/testing.yml
index c7ecf98..f150f80 100644
--- a/jenkins/client/job/debian/packages/testing.yml
+++ b/jenkins/client/job/debian/packages/testing.yml
@@ -17,6 +17,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-debian-packages-{{build}}.groovy
             trigger:
diff --git a/jenkins/client/job/deploy/k8s_control.yml b/jenkins/client/job/deploy/k8s_control.yml
index 7e915c2..f851176 100644
--- a/jenkins/client/job/deploy/k8s_control.yml
+++ b/jenkins/client/job/deploy/k8s_control.yml
@@ -13,6 +13,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: deploy-k8s-deployments.groovy
           param:
diff --git a/jenkins/client/job/deploy/lab/cicd.yml b/jenkins/client/job/deploy/lab/cicd.yml
index 9002c9c..d524bbc 100644
--- a/jenkins/client/job/deploy/lab/cicd.yml
+++ b/jenkins/client/job/deploy/lab/cicd.yml
@@ -14,6 +14,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: cicd-lab-pipeline.groovy
             param:
diff --git a/jenkins/client/job/deploy/lab/cleanup.yml b/jenkins/client/job/deploy/lab/cleanup.yml
index 4d2a179..93a0818 100644
--- a/jenkins/client/job/deploy/lab/cleanup.yml
+++ b/jenkins/client/job/deploy/lab/cleanup.yml
@@ -12,6 +12,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: cleanup-pipeline.groovy
           param:
@@ -70,6 +71,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: delete-broken-stacks-pipeline.groovy
           trigger:
diff --git a/jenkins/client/job/deploy/lab/demo.yml b/jenkins/client/job/deploy/lab/demo.yml
index 3ea8a40..2bb6ad5 100644
--- a/jenkins/client/job/deploy/lab/demo.yml
+++ b/jenkins/client/job/deploy/lab/demo.yml
@@ -9,6 +9,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: kafka-demo.groovy
           param:
diff --git a/jenkins/client/job/deploy/lab/deploy.yml b/jenkins/client/job/deploy/lab/deploy.yml
index 308b613..751089a 100644
--- a/jenkins/client/job/deploy/lab/deploy.yml
+++ b/jenkins/client/job/deploy/lab/deploy.yml
@@ -17,6 +17,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: cloud-deploy-pipeline.groovy
             trigger:
@@ -95,7 +96,11 @@
                 description: "Formulas revision to install on Salt Master bootstrap stage"
               EXTRA_FORMULAS:
                 type: string
-                default: "maas memcached ntp nginx collectd sensu heka sphinx mysql grafana libvirt rsyslog glusterfs postfix xtrabackup freeipa prometheus telegraf elasticsearch kibana rundeck devops-portal rsync docker keepalived aptly jenkins gerrit artifactory influxdb horizon"
+                default: "maas memcached ntp nginx collectd sensu heka sphinx mysql grafana libvirt rsyslog glusterfs postfix xtrabackup freeipa prometheus telegraf elasticsearch kibana rundeck devops-portal rsync docker keepalived aptly jenkins gerrit artifactory influxdb horizon ceph"
+              STATIC_MGMT_NETWORK:
+                  type: boolean
+                  default: 'false'
+                  description: "Check if model contains static IP address definitions for all nodes"
 
               # aws api
               AWS_STACK_REGION:
diff --git a/jenkins/client/job/deploy/lab/ironic.yml b/jenkins/client/job/deploy/lab/ironic.yml
index 8c397cf..f0b67e8 100644
--- a/jenkins/client/job/deploy/lab/ironic.yml
+++ b/jenkins/client/job/deploy/lab/ironic.yml
@@ -76,4 +76,5 @@
             script: ironic-node-provision-pipeline.groovy
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
           type: workflow-scm
diff --git a/jenkins/client/job/deploy/openstack.yml b/jenkins/client/job/deploy/openstack.yml
index f316ab4..3595e01 100644
--- a/jenkins/client/job/deploy/openstack.yml
+++ b/jenkins/client/job/deploy/openstack.yml
@@ -13,6 +13,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: cloud-deploy-pipeline.groovy
           param:
@@ -34,6 +35,10 @@
             ASK_ON_ERROR:
                 type: boolean
                 default: 'false'
+            STATIC_MGMT_NETWORK:
+                type: boolean
+                default: 'false'
+                description: "Check if model contains static IP address definitions for all nodes"
         deploy-openstack-compute:
           type: workflow-scm
           concurrent: true
@@ -41,6 +46,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: openstack-compute-install.groovy
           param:
diff --git a/jenkins/client/job/deploy/rollout.yml b/jenkins/client/job/deploy/rollout.yml
index 93f5167..3b05fd6 100644
--- a/jenkins/client/job/deploy/rollout.yml
+++ b/jenkins/client/job/deploy/rollout.yml
@@ -13,6 +13,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: rollout-config-change.groovy
           param:
@@ -78,6 +79,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: git-merge-branches-pipeline.groovy
           param:
diff --git a/jenkins/client/job/deploy/test.yml b/jenkins/client/job/deploy/test.yml
index 9b99ee5..c226fbc 100644
--- a/jenkins/client/job/deploy/test.yml
+++ b/jenkins/client/job/deploy/test.yml
@@ -13,6 +13,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: test-service.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/config.yml b/jenkins/client/job/deploy/update/config.yml
index e956736..7c75e5b 100644
--- a/jenkins/client/job/deploy/update/config.yml
+++ b/jenkins/client/job/deploy/update/config.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: change-config.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/package.yml b/jenkins/client/job/deploy/update/package.yml
index 55a9ef0..b276ce4 100644
--- a/jenkins/client/job/deploy/update/package.yml
+++ b/jenkins/client/job/deploy/update/package.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: update-package.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/restore_cassandra.yml b/jenkins/client/job/deploy/update/restore_cassandra.yml
index 7f53f80..115f7a2 100644
--- a/jenkins/client/job/deploy/update/restore_cassandra.yml
+++ b/jenkins/client/job/deploy/update/restore_cassandra.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: restore-cassandra.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/restore_mysql.yml b/jenkins/client/job/deploy/update/restore_mysql.yml
index 9b2e4d7..2c4ce12 100644
--- a/jenkins/client/job/deploy/update/restore_mysql.yml
+++ b/jenkins/client/job/deploy/update/restore_mysql.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: xtrabackup-restore-mysql-db.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/restore_zookeeper.yml b/jenkins/client/job/deploy/update/restore_zookeeper.yml
index f33607a..b6d044a 100644
--- a/jenkins/client/job/deploy/update/restore_zookeeper.yml
+++ b/jenkins/client/job/deploy/update/restore_zookeeper.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: restore-zookeeper.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/update_mirror_image.yml b/jenkins/client/job/deploy/update/update_mirror_image.yml
index 75363db..ec812c4 100644
--- a/jenkins/client/job/deploy/update/update_mirror_image.yml
+++ b/jenkins/client/job/deploy/update/update_mirror_image.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: update-mirror-image.groovy
           param:
@@ -22,4 +23,37 @@
               default: "${_param:jenkins_salt_api_url}"
             SALT_MASTER_CREDENTIALS:
               type: string
-              default: "salt"
\ No newline at end of file
+              default: "salt"
+            UPDATE_APTLY:
+              type: boolean
+              default: 'true'
+            UPDATE_APTLY_MIRRORS:
+              type: string
+              default: ""
+            PUBLISH_APTLY:
+              type: boolean
+              default: 'true'
+            RECREATE_APTLY_PUBLISHES:
+              type: boolean
+              default: 'false'
+            FORCE_OVERWRITE_APTLY_PUBLISHES:
+              type: boolean
+              default: 'false'
+            CLEANUP_APTLY:
+              type: boolean
+              default: 'false'
+            UPDATE_DOCKER_REGISTRY:
+              type: boolean
+              default: 'true'
+            CLEANUP_DOCKER_CACHE:
+              type: boolean
+              default: 'false'
+            UPDATE_PYPI:
+              type: boolean
+              default: 'true'
+            UPDATE_GIT:
+              type: boolean
+              default: 'true'
+            UPDATE_IMAGES:
+              type: boolean
+              default: 'true'
\ No newline at end of file
diff --git a/jenkins/client/job/deploy/update/update_salt_environment.yml b/jenkins/client/job/deploy/update/update_salt_environment.yml
index 9efd6c5..f9ea6d5 100644
--- a/jenkins/client/job/deploy/update/update_salt_environment.yml
+++ b/jenkins/client/job/deploy/update/update_salt_environment.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: update-salt-environment.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/upgrade.yml b/jenkins/client/job/deploy/update/upgrade.yml
index 415e0b4..2c76753 100644
--- a/jenkins/client/job/deploy/update/upgrade.yml
+++ b/jenkins/client/job/deploy/update/upgrade.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: openstack-control-upgrade.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/upgrade_compute.yml b/jenkins/client/job/deploy/update/upgrade_compute.yml
index f95e70e..90bfc76 100644
--- a/jenkins/client/job/deploy/update/upgrade_compute.yml
+++ b/jenkins/client/job/deploy/update/upgrade_compute.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: openstack-compute-upgrade.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/upgrade_opencontrail.yml b/jenkins/client/job/deploy/update/upgrade_opencontrail.yml
index b5d1e77..de7e46f 100644
--- a/jenkins/client/job/deploy/update/upgrade_opencontrail.yml
+++ b/jenkins/client/job/deploy/update/upgrade_opencontrail.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: opencontrail-upgrade.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/upgrade_ovs_gateway.yml b/jenkins/client/job/deploy/update/upgrade_ovs_gateway.yml
index 3d12796..335492d 100644
--- a/jenkins/client/job/deploy/update/upgrade_ovs_gateway.yml
+++ b/jenkins/client/job/deploy/update/upgrade_ovs_gateway.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: ovs-gateway-upgrade.groovy
           param:
diff --git a/jenkins/client/job/deploy/update/utils.yml b/jenkins/client/job/deploy/update/utils.yml
index fa6ce14..1a6062e 100644
--- a/jenkins/client/job/deploy/update/utils.yml
+++ b/jenkins/client/job/deploy/update/utils.yml
@@ -9,6 +9,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: update-reclass-metadata.groovy
           param:
@@ -31,6 +32,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: update-salt-master-formulas.groovy
           param:
@@ -53,6 +55,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: update-jenkins-master-jobs.groovy
           param:
diff --git a/jenkins/client/job/docker/build-images.yml b/jenkins/client/job/docker/build-images.yml
index a953d95..334db19 100644
--- a/jenkins/client/job/docker/build-images.yml
+++ b/jenkins/client/job/docker/build-images.yml
@@ -7,12 +7,13 @@
           jobs:
             - name: aptly
               repo: mk
+              build_trigger: ""
             - name: ci
               repo: mk
+              build_trigger: "H H(20-23) * * *"
             - name: prometheus
               repo: mcp
-            - name: opencontrail
-              repo: mk
+              build_trigger: ""
           template:
             discard:
               build:
@@ -34,6 +35,8 @@
                 event:
                   ref:
                     - updated: {}
+              pollscm:
+                spec: "{{build_trigger}}"
             param:
               IMAGE_GIT_URL:
                 type: string
diff --git a/jenkins/client/job/docker/cleanup.yml b/jenkins/client/job/docker/cleanup.yml
index eff5754..e1bdcd1 100644
--- a/jenkins/client/job/docker/cleanup.yml
+++ b/jenkins/client/job/docker/cleanup.yml
@@ -17,6 +17,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: docker-cleanup-pipeline.groovy
           trigger:
diff --git a/jenkins/client/job/docker/init.yml b/jenkins/client/job/docker/init.yml
index 63c3f27..c5f7d44 100644
--- a/jenkins/client/job/docker/init.yml
+++ b/jenkins/client/job/docker/init.yml
@@ -57,6 +57,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: docker-build-image-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/docker/opencontrail.yml b/jenkins/client/job/docker/opencontrail.yml
new file mode 100644
index 0000000..53a76e0
--- /dev/null
+++ b/jenkins/client/job/docker/opencontrail.yml
@@ -0,0 +1,51 @@
+parameters:
+  jenkins:
+    client:
+      job_template:
+        docker-build-images-opencontrail:
+          name: "docker-build-images-opencontrail-{{version}}"
+          jobs:
+            - version: oc40
+          template:
+            discard:
+              build:
+                keep_num: 25
+              artifact:
+                keep_num: 25
+            type: workflow-scm
+            concurrent: true
+            scm:
+              type: git
+              url: "${_param:jenkins_gerrit_url}/mk/docker-opencontrail"
+              credentials: "gerrit"
+            trigger:
+              gerrit:
+                project:
+                  "mk/docker-opencontrail":
+                    branches:
+                      - master
+                event:
+                  ref:
+                    - updated: {}
+                  comment:
+                    - addedContains:
+                        commentAddedCommentContains: '(buildcontainer|test|recheck|verify|)'
+            param:
+              IMAGE_GIT_URL:
+                type: string
+                default: "${_param:jenkins_gerrit_url}/mk/docker-opencontrail"
+              OC_VERSION:
+                type: string
+                default: "{{version}}"
+              IMAGE_CREDENTIALS_ID:
+                type: string
+                default: "gerrit"
+              APT_KEY:
+                type: string
+                default: "${_param:jenkins_aptly_url}/public.gpg"
+              APT_REPO_URL:
+                type: string
+                default: "${_param:jenkins_aptly_url}/xenial/ nightly"
+              REGISTRY_CREDENTIALS_ID:
+                type: string
+                default: "dockerhub"
diff --git a/jenkins/client/job/docker/oss/hce-codebase.yml b/jenkins/client/job/docker/oss/hce-codebase.yml
new file mode 100644
index 0000000..41fe789
--- /dev/null
+++ b/jenkins/client/job/docker/oss/hce-codebase.yml
@@ -0,0 +1,73 @@
+parameters:
+  jenkins:
+    client:
+      job:
+        docker-build-images-hce-codebase:
+          name: docker-build-images-hce-codebase
+          discard:
+            build:
+              keep_num: 25
+            artifact:
+              keep_num: 25
+          type: workflow-scm
+          concurrent: true
+          scm:
+            type: git
+            url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
+            credentials: "gerrit"
+            script: docker-build-image-pipeline.groovy
+          trigger:
+            gerrit:
+              project:
+                "oss/hce":
+                  branches:
+                    - master
+              skip_vote:
+                - successful
+                - failed
+                - unstable
+                - not_built
+              event:
+                patchset:
+                  - created:
+                      excludeDrafts: false
+                      excludeNoCodeChange: false
+                change:
+                  - merged
+                comment:
+                  - addedContains:
+                      commentAddedCommentContains: 'rebuild'
+          param:
+            IMAGE_NAME:
+              type: string
+              default: "hce"
+            IMAGE_TAGS:
+              type: string
+              default: ""
+            CREDENTIALS_ID:
+              type: string
+              default: "gerrit"
+            DOCKER_REGISTRY:
+              type: string
+              default: "docker-dev-virtual.docker.mirantis.net"
+            PROJECT_NAMESPACE:
+              type: string
+              default: "oss"
+            DOCKERFILE_PATH:
+              type: string
+              default: "Dockerfile"
+            CONTEXT_PATH:
+              type: string
+              default: "."
+            CUSTOM_GERRIT_PROJECT:
+              type: string
+              default: oss/docker-hce
+            CUSTOM_GERRIT_BRANCH:
+              type: string
+              default: master
+            CI_BUILD_ARG_HCE_REPO:
+              type: string
+              default: ""
+            CI_BUILD_ARG_HCE_REF:
+              type: string
+              default: ""
diff --git a/jenkins/client/job/docker/oss/hce-docker.yml b/jenkins/client/job/docker/oss/hce-docker.yml
new file mode 100644
index 0000000..33372b9
--- /dev/null
+++ b/jenkins/client/job/docker/oss/hce-docker.yml
@@ -0,0 +1,61 @@
+parameters:
+  jenkins:
+    client:
+      job:
+        docker-build-images-hce-docker:
+          name: docker-build-images-hce-docker
+          discard:
+            build:
+              keep_num: 25
+            artifact:
+              keep_num: 25
+          type: workflow-scm
+          concurrent: true
+          scm:
+            type: git
+            url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
+            credentials: "gerrit"
+            script: docker-build-image-pipeline.groovy
+          trigger:
+            gerrit:
+              project:
+                "oss/docker-hce":
+                  branches:
+                    - master
+              skip_vote:
+                - successful
+                - failed
+                - unstable
+                - not_built
+              event:
+                patchset:
+                  - created:
+                      excludeDrafts: false
+                      excludeNoCodeChange: false
+                change:
+                  - merged
+                comment:
+                  - addedContains:
+                      commentAddedCommentContains: 'rebuild'
+          param:
+            IMAGE_NAME:
+              type: string
+              default: "hce"
+            IMAGE_TAGS:
+              type: string
+              default: ""
+            CREDENTIALS_ID:
+              type: string
+              default: "gerrit"
+            DOCKER_REGISTRY:
+              type: string
+              default: "docker-dev-virtual.docker.mirantis.net"
+            PROJECT_NAMESPACE:
+              type: string
+              default: "oss"
+            DOCKERFILE_PATH:
+              type: string
+              default: "Dockerfile"
+            CONTEXT_PATH:
+              type: string
+              default: "."
diff --git a/jenkins/client/job/docker/oss/init.yml b/jenkins/client/job/docker/oss/init.yml
index 386ea75..9b1e49b 100644
--- a/jenkins/client/job/docker/oss/init.yml
+++ b/jenkins/client/job/docker/oss/init.yml
@@ -6,6 +6,8 @@
   - system.jenkins.client.job.docker.oss.pushkin-docker
   - system.jenkins.client.job.docker.oss.pushkin-codebase
   - system.jenkins.client.job.docker.oss.pushkin-codebase-ext
+  - system.jenkins.client.job.docker.oss.hce-docker
+  - system.jenkins.client.job.docker.oss.hce-codebase
   - system.jenkins.client.job.docker.oss.rundeck
   - system.jenkins.client.job.docker.oss.security-monkey-docker
   - system.jenkins.client.job.docker.oss.security-monkey-codebase-openstack
diff --git a/jenkins/client/job/docker/testing.yml b/jenkins/client/job/docker/testing.yml
index bf65dbc..ece8e10 100644
--- a/jenkins/client/job/docker/testing.yml
+++ b/jenkins/client/job/docker/testing.yml
@@ -23,6 +23,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: docker-build-image-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/gating.yml b/jenkins/client/job/gating.yml
index db2033e..f9e9b1a 100644
--- a/jenkins/client/job/gating.yml
+++ b/jenkins/client/job/gating.yml
@@ -33,6 +33,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: gating-pipeline.groovy
             quiet_period: 60
diff --git a/jenkins/client/job/git-mirrors/2way.yml b/jenkins/client/job/git-mirrors/2way.yml
index 158816a..ef1515b 100644
--- a/jenkins/client/job/git-mirrors/2way.yml
+++ b/jenkins/client/job/git-mirrors/2way.yml
@@ -7,10 +7,6 @@
         git-mirror-2way-common:
           name: git-mirror-2way-{{name}}
           jobs:
-            - name: salt-formulas-scripts
-              source: salt-formulas/salt-formulas-scripts
-              target: salt-formulas/salt-formulas-scripts
-              branches: "master"
             - name: mcp-common-scripts
               source: mcp/mcp-common-scripts
               target: Mirantis/mcp-common-scripts
@@ -26,6 +22,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-2way-pipeline.groovy
               github:
@@ -40,7 +37,7 @@
                 default: "${_param:jenkins_gerrit_url}/{{source}}.git"
               TARGET_URL:
                 type: string
-                default: "https://github.com/{{target}}.git"
+                default: "git@github.com:{{target}}.git"
               CREDENTIALS_ID:
                 type: string
                 default: "gerrit"
diff --git a/jenkins/client/job/git-mirrors/downstream/init.yml b/jenkins/client/job/git-mirrors/downstream/init.yml
index 0ddc0ce..649ccdc 100644
--- a/jenkins/client/job/git-mirrors/downstream/init.yml
+++ b/jenkins/client/job/git-mirrors/downstream/init.yml
@@ -19,6 +19,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/git-mirrors/upstream/init.yml b/jenkins/client/job/git-mirrors/upstream/init.yml
index cc267d9..8334f23 100644
--- a/jenkins/client/job/git-mirrors/upstream/init.yml
+++ b/jenkins/client/job/git-mirrors/upstream/init.yml
@@ -18,6 +18,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/kill_stuck_jobs.yml b/jenkins/client/job/kill_stuck_jobs.yml
index 57f0b3f..cc69c6b 100644
--- a/jenkins/client/job/kill_stuck_jobs.yml
+++ b/jenkins/client/job/kill_stuck_jobs.yml
@@ -14,6 +14,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: abort-long-running-jobs.groovy
           trigger:
diff --git a/jenkins/client/job/opencontrail/build/dpdk-extra.yml b/jenkins/client/job/opencontrail/build/dpdk-extra.yml
index 0a152f1..2d4e4d8 100644
--- a/jenkins/client/job/opencontrail/build/dpdk-extra.yml
+++ b/jenkins/client/job/opencontrail/build/dpdk-extra.yml
@@ -54,6 +54,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: build-extra-dpdk-pipeline.groovy
             quiet_period: 120
diff --git a/jenkins/client/job/opencontrail/git-mirrors/2way.yml b/jenkins/client/job/opencontrail/git-mirrors/2way.yml
index 349dad5..49ae2be 100644
--- a/jenkins/client/job/opencontrail/git-mirrors/2way.yml
+++ b/jenkins/client/job/opencontrail/git-mirrors/2way.yml
@@ -7,46 +7,8 @@
         git-mirror-2way:
           name: git-mirror-2way-{{name}}
           jobs:
-            - name: contrail-build
-              branches: ${_param:contrail_branches}
             - name: contrail-pipeline
-              branches: ${_param:contrail_branches}
-            - name: contrail-controller
-              branches: ${_param:contrail_branches}
-            - name: contrail-vrouter
-              branches: ${_param:contrail_branches}
-            - name: contrail-third-party
-              branches: ${_param:contrail_branches}
-            - name: contrail-generateDS
-              branches: ${_param:contrail_branches}
-            - name: contrail-sandesh
-              branches: ${_param:contrail_branches}
-            - name: contrail-packages
-              branches: ${_param:contrail_branches}
-            - name: contrail-nova-vif-driver
-              branches: ${_param:contrail_branches}
-            - name: contrail-neutron-plugin
-              branches: ${_param:contrail_branches}
-            - name: contrail-nova-extensions
-              branches: ${_param:contrail_branches}
-            - name: contrail-ceilometer-plugin
-              branches: ${_param:contrail_ceilometer_plugin_branches}
-            - name: contrail-heat
-              branches: ${_param:contrail_branches}
-            - name: contrail-web-storage
-              branches: ${_param:contrail_branches}
-            - name: contrail-web-server-manager
-              branches: ${_param:contrail_branches}
-            - name: contrail-web-controller
-              branches: ${_param:contrail_branches}
-            - name: contrail-web-core
-              branches: ${_param:contrail_branches}
-            - name: contrail-webui-third-party
-              branches: ${_param:contrail_branches}
-            - name: contrail-dpdk-extra-packages
-              branches: ${_param:contrail_dpdk_extra_branches}
-            - name: contrail-dpdk
-              branches: ${_param:contrail_dpdk_branches}
+              branches: master
           template:
             discard:
               build:
@@ -58,6 +20,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-2way-pipeline.groovy
               github:
@@ -72,7 +35,7 @@
                 default: "${_param:jenkins_gerrit_url}/contrail/{{name}}.git"
               TARGET_URL:
                 type: string
-                default: "https://github.com/Mirantis/{{name}}.git"
+                default: "git@github.com:Mirantis/{{name}}.git"
               CREDENTIALS_ID:
                 type: string
                 default: "gerrit"
diff --git a/jenkins/client/job/opencontrail/git-mirrors/downstream.yml b/jenkins/client/job/opencontrail/git-mirrors/downstream.yml
index 45b06b6..f92d1a7 100644
--- a/jenkins/client/job/opencontrail/git-mirrors/downstream.yml
+++ b/jenkins/client/job/opencontrail/git-mirrors/downstream.yml
@@ -58,6 +58,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-pipeline.groovy
               github:
@@ -91,6 +92,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: git-mirror-pipeline.groovy
             github:
diff --git a/jenkins/client/job/opencontrail/git-mirrors/upstream.yml b/jenkins/client/job/opencontrail/git-mirrors/upstream.yml
index fa9bc5b..af4c6ac 100644
--- a/jenkins/client/job/opencontrail/git-mirrors/upstream.yml
+++ b/jenkins/client/job/opencontrail/git-mirrors/upstream.yml
@@ -57,6 +57,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-pipeline.groovy
               github:
@@ -100,6 +101,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: git-mirror-pipeline.groovy
             github:
@@ -130,6 +132,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: git-mirror-pipeline.groovy
             github:
@@ -171,6 +174,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: git-mirror-pipeline.groovy
             github:
diff --git a/jenkins/client/job/oscore/init.yml b/jenkins/client/job/oscore/init.yml
index fc06d59..18dd008 100644
--- a/jenkins/client/job/oscore/init.yml
+++ b/jenkins/client/job/oscore/init.yml
@@ -1,4 +1,5 @@
 classes:
+  - system.jenkins.client.job.oscore.security_tests
   - system.jenkins.client.job.oscore.tests
   - system.jenkins.client.job.oscore.qa
 parameters:
diff --git a/jenkins/client/job/oscore/security_tests.yml b/jenkins/client/job/oscore/security_tests.yml
new file mode 100644
index 0000000..cfa90bf
--- /dev/null
+++ b/jenkins/client/job/oscore/security_tests.yml
@@ -0,0 +1,140 @@
+parameters:
+  jenkins:
+    client:
+      job_template:
+        bandit-scanner-template-downstream:
+          name: "{{job_prefix}}-bandit-downstream-{{project}}"
+          template:
+            discard:
+              build:
+                keep_num: 30
+              artifact:
+                keep_num: 30
+            type: workflow-scm
+            concurrent: true
+            scm:
+              type: git
+              url: "${_param:jenkins_gerrit_url}/openstack-ci/openstack-pipelines.git"
+              credentials: "gerrit"
+              branch: 'master'
+              script: bandit-openstack-pipeline.groovy
+            trigger:
+              gerrit:
+                project:
+                  packaging/sources/{{project}}:
+                    branches:
+                      - compare_type: "ANT"
+                        name: "mcp/**"
+                skip_vote:
+                  - successful
+                  - failed
+                  - unstable
+                  - not_built
+                event:
+                  change:
+                    - merged
+                  comment:
+                    - addedContains:
+                        commentAddedCommentContains: '^(?s:Patch Set \d+:.*(run bandit)\s*)$'
+                custom_url: '* $JOB_NAME $BUILD_URL'
+            param:
+              GERRIT_PROJECT_URL:
+                type: string
+                description: project url
+                default: ""
+              GERRIT_BRANCH:
+                type: string
+                description: Version of openstack to test
+                default: ""
+              GERRIT_USER:
+                type: string
+                description: user
+                default: "mcp-jenkins"
+              UPSTREAM:
+                type: boolean
+                description: whether to do upstream like testing
+                default: "false"
+              FAIL_ON_TESTS:
+                type: boolean
+                description: whether to do upstream like testing
+                default: "true"
+              SEVERITY:
+                type: string
+                description: Bandit args
+                default: "3"
+              CONFIDENCE:
+                type: string
+                description: confidence
+                default: "2"
+              CREDENTIALS_ID:
+                type: string
+                description: gerrit creds
+                default: "gerrit"
+              REPORT_FORMAT:
+                type: string
+                description: Format for generated report(csv,html,json)
+                default: "csv"
+        bandit-scanner-template-upstream:
+          name: "{{job_prefix}}-bandit-upstream-{{project}}"
+          template:
+            discard:
+              build:
+                keep_num: 30
+              artifact:
+                keep_num: 30
+            type: workflow-scm
+            concurrent: true
+            scm:
+              type: git
+              url: "${_param:jenkins_gerrit_url}/openstack-ci/openstack-pipelines.git"
+              credentials: "gerrit"
+              branch: 'master'
+              script: bandit-openstack-pipeline.groovy
+            trigger:
+              gerrit:
+                project:
+                  packaging/sources/{{project}}:
+                    branches:
+                      - compare_type: "ANT"
+                        name: "mcp/**"
+                skip_vote:
+                  - successful
+                  - failed
+                  - unstable
+                  - not_built
+                event:
+                  change:
+                    - merged
+                  comment:
+                    - addedContains:
+                        commentAddedCommentContains: '^(?s:Patch Set \d+:.*(run bandit)\s*)$'
+                custom_url: '* $JOB_NAME $BUILD_URL'
+            param:
+              GERRIT_PROJECT_URL:
+                type: string
+                description: project url
+                default: ""
+              GERRIT_BRANCH:
+                type: string
+                description: Version of openstack to test
+                default: ""
+              GERRIT_USER:
+                type: string
+                description: user
+                default: "mcp-jenkins"
+              UPSTREAM:
+                type: boolean
+                description: whether to do upstream like testing
+                default: "true"
+              FAIL_ON_TESTS:
+                type: boolean
+                description: whether to do upstream like testing
+                default: "true"
+              CREDENTIALS_ID:
+                type: string
+                description: gerrit creds
+                default: "gerrit"
+              REPORT_FORMAT:
+                type: string
+                description: Format for generated report(csv,html,json)
+                default: "csv"
diff --git a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
index 2de63a5..c00c707 100644
--- a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
+++ b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
@@ -242,6 +242,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-2way-pipeline.groovy
               github:
@@ -263,40 +264,70 @@
               BRANCHES:
                 type: string
                 default: "{{branches}}"
-        git-mirror-2way:
-          name: git-mirror-2way-{{name}}
-          jobs:
-            - name: salt-formulas-scripts
-              branches: master
-          template:
-            discard:
-              build:
-                keep_num: 10
-              artifact:
-                keep_num: 10
-            type: workflow-scm
-            concurrent: false
-            scm:
-              type: git
-              url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
-              credentials: "gerrit"
-              script: git-mirror-2way-pipeline.groovy
-              github:
-                url: "https://github.com/salt-formulas/{{name}}"
-            trigger:
-              github:
-              pollscm:
-                spec: ${_param:jenkins_pollscm_spec}
-            param:
-              SOURCE_URL:
-                type: string
-                default: "${_param:jenkins_gerrit_url}/salt-formulas/{{name}}.git"
-              TARGET_URL:
-                type: string
-                default: "https://github.com/salt-formulas/{{name}}.git"
-              CREDENTIALS_ID:
-                type: string
-                default: "gerrit"
-              BRANCHES:
-                type: string
-                default: "{{branches}}"
+      job:
+        git-mirror-2way-salt-formulas-scripts:
+          discard:
+            build:
+              keep_num: 10
+            artifact:
+              keep_num: 10
+          type: workflow-scm
+          concurrent: false
+          scm:
+            type: git
+            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
+            credentials: "gerrit"
+            script: git-mirror-2way-pipeline.groovy
+            github:
+              url: "https://github.com/salt-formulas/salt-formulas-scripts"
+          trigger:
+            github:
+            pollscm:
+              spec: ${_param:jenkins_pollscm_spec}
+          param:
+            SOURCE_URL:
+              type: string
+              default: "${_param:jenkins_gerrit_url}/salt-formulas/salt-formulas-scripts.git"
+            TARGET_URL:
+              type: string
+              default: "git@github.com:salt-formulas/salt-formulas-scripts.git"
+            CREDENTIALS_ID:
+              type: string
+              default: "gerrit"
+            BRANCHES:
+              type: string
+              default: "master"
+        git-mirror-2way-salt-formulas-cookiecutter:
+          discard:
+            build:
+              keep_num: 10
+            artifact:
+              keep_num: 10
+          type: workflow-scm
+          concurrent: false
+          scm:
+            type: git
+            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
+            credentials: "gerrit"
+            script: git-mirror-2way-pipeline.groovy
+            github:
+              url: "https://github.com/salt-formulas/salt-formulas-cookiecutter"
+          trigger:
+            github:
+            pollscm:
+              spec: ${_param:jenkins_pollscm_spec}
+          param:
+            SOURCE_URL:
+              type: string
+              default: "${_param:jenkins_gerrit_url}/salt-formulas/salt-formulas-cookiecutter.git"
+            TARGET_URL:
+              type: string
+              default: "https://github.com/salt-formulas/salt-formulas-cookiecutter.git"
+            CREDENTIALS_ID:
+              type: string
+              default: "gerrit"
+            BRANCHES:
+              type: string
+              default: "master"
diff --git a/jenkins/client/job/salt-formulas/release.yml b/jenkins/client/job/salt-formulas/release.yml
index c686e6e..fe6df5e 100644
--- a/jenkins/client/job/salt-formulas/release.yml
+++ b/jenkins/client/job/salt-formulas/release.yml
@@ -8,6 +8,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: release-salt-formulas-pipeline.groovy
             github:
diff --git a/jenkins/client/job/salt-formulas/tests.yml b/jenkins/client/job/salt-formulas/tests.yml
index 44fd4c1..b5c596b 100644
--- a/jenkins/client/job/salt-formulas/tests.yml
+++ b/jenkins/client/job/salt-formulas/tests.yml
@@ -72,6 +72,7 @@
             - name: magnum
             - name: memcached
             - name: midonet
+            - name: mirascan
             - name: monasca
             - name: mongodb
             - name: murano
@@ -132,6 +133,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: test-salt-formulas-pipeline.groovy
             trigger:
@@ -179,6 +181,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: test-salt-formulas-env.groovy
           param:
diff --git a/jenkins/client/job/salt-models/generate.yml b/jenkins/client/job/salt-models/generate.yml
index 491cfee..b2ef4e5 100644
--- a/jenkins/client/job/salt-models/generate.yml
+++ b/jenkins/client/job/salt-models/generate.yml
@@ -14,6 +14,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "jenkins-mk"
               script: generate-cookiecutter-products.groovy
             param:
diff --git a/jenkins/client/job/salt-models/git-mirrors.yml b/jenkins/client/job/salt-models/git-mirrors.yml
index 034f8d5..a04043b 100644
--- a/jenkins/client/job/salt-models/git-mirrors.yml
+++ b/jenkins/client/job/salt-models/git-mirrors.yml
@@ -12,6 +12,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: git-mirror-2way-pipeline.groovy
               github:
diff --git a/jenkins/client/job/salt-models/tests.yml b/jenkins/client/job/salt-models/tests.yml
index 19ed2e0..ec35f94 100644
--- a/jenkins/client/job/salt-models/tests.yml
+++ b/jenkins/client/job/salt-models/tests.yml
@@ -11,6 +11,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: test-salt-models-pipeline.groovy
             concurrent: true
@@ -83,6 +84,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: test-system-reclass-pipeline.groovy
             trigger:
@@ -125,6 +127,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "jenkins-mk"
               script: test-cookiecutter-reclass.groovy
             trigger:
@@ -178,6 +181,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: test-salt-model-node.groovy
           param:
diff --git a/jenkins/client/job/test_pipelines.yml b/jenkins/client/job/test_pipelines.yml
index b1b782a..c9a2442 100644
--- a/jenkins/client/job/test_pipelines.yml
+++ b/jenkins/client/job/test_pipelines.yml
@@ -22,6 +22,7 @@
             scm:
               type: git
               url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+              branch: "${_param:jenkins_pipelines_branch}"
               credentials: "gerrit"
               script: test-groovy-pipeline.groovy
             trigger:
diff --git a/jenkins/client/job/validate.yml b/jenkins/client/job/validate.yml
index 6bf4cac..cfbd85d 100644
--- a/jenkins/client/job/validate.yml
+++ b/jenkins/client/job/validate.yml
@@ -22,6 +22,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: validate-cloud.groovy
           param:
@@ -159,6 +160,7 @@
           scm:
             type: git
             url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
             credentials: "gerrit"
             script: cvp-sanity.groovy
           param:
diff --git a/keystone/client/single.yml b/keystone/client/single.yml
index 0c70390..ebf5b5f 100644
--- a/keystone/client/single.yml
+++ b/keystone/client/single.yml
@@ -6,7 +6,6 @@
 - system.keystone.client.service.heat-cfn
 - system.keystone.client.service.keystone
 - system.keystone.client.service.neutron
-- system.keystone.client.service.nova-ec2
 parameters:
   linux:
     system:
diff --git a/kubernetes/pool/cluster.yml b/kubernetes/pool/cluster.yml
index 0f961a3..3dd0c40 100644
--- a/kubernetes/pool/cluster.yml
+++ b/kubernetes/pool/cluster.yml
@@ -22,3 +22,5 @@
     host:
       options:
         iptables: false
+        log-opts:
+          labels: "io.kubernetes.pod.name"
diff --git a/kubernetes/pool/single.yml b/kubernetes/pool/single.yml
index 00f22b8..67363a6 100644
--- a/kubernetes/pool/single.yml
+++ b/kubernetes/pool/single.yml
@@ -20,3 +20,5 @@
     host:
       options:
         iptables: false
+        log-opts:
+          labels: "io.kubernetes.pod.name"
diff --git a/linux/system/repo/mcp/apt_mirantis/aptly.yml b/linux/system/repo/mcp/apt_mirantis/aptly.yml
new file mode 100644
index 0000000..b0cf536
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/aptly.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_aptly_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_aptly:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/aptly/ ${_param:linux_system_repo_mcp_aptly_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_aptly_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/cassandra.yml b/linux/system/repo/mcp/apt_mirantis/cassandra.yml
new file mode 100644
index 0000000..308f555
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/cassandra.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_cassandra_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_cassandra_version_number: "21x"
+  linux:
+    system:
+      repo:
+        mcp_cassandra:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/cassandra/ ${_param:linux_system_repo_mcp_cassandra_version} ${_param:linux_system_repo_mcp_cassandra_version_number}"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_cassandra_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/ceph.yml b/linux/system/repo/mcp/apt_mirantis/ceph.yml
new file mode 100644
index 0000000..2532f86
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/ceph.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_ceph_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_ceph_codename: luminous
+  linux:
+    system:
+      repo:
+        mcp_ceph:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/ceph/ ${_param:linux_system_repo_mcp_ceph_version} ${_param:linux_system_repo_mcp_ceph_codename}"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_ceph_version}'
+            priority: 1100
+            package: '*'
\ No newline at end of file
diff --git a/linux/system/repo/mcp/apt_mirantis/docker.yml b/linux/system/repo/mcp/apt_mirantis/docker.yml
new file mode 100644
index 0000000..cbd3097
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/docker.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_docker_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_docker:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/docker/ ${_param:linux_system_repo_mcp_docker_version} stable"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_docker_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic.yml b/linux/system/repo/mcp/apt_mirantis/elastic.yml
new file mode 100644
index 0000000..da1b004
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/elastic.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_elastic_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_elastic_version_number: "2.x"
+  linux:
+    system:
+      repo:
+        mcp_elastic:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/elastic/${_param:linux_system_repo_mcp_elastic_version_number}/ ${_param:linux_system_repo_mcp_elastic_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_elastic_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/fluentd.yml b/linux/system/repo/mcp/apt_mirantis/fluentd.yml
new file mode 100644
index 0000000..da7d3ca
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/fluentd.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_fluentd_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_fluentd:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/fluentd/ ${_param:linux_system_repo_mcp_fluentd_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_fluentd_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/glusterfs.yml b/linux/system/repo/mcp/apt_mirantis/glusterfs.yml
new file mode 100644
index 0000000..1f5dd0e
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/glusterfs.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_glusterfs_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_glusterfs_version_number: "3.12"
+  linux:
+    system:
+      repo:
+        mcp_glusterfs:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/glusterfs/ ${_param:linux_system_repo_mcp_glusterfs_version} ${_param:linux_system_repo_mcp_glusterfs_version_number}"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_glusterfs_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/grafana.yml b/linux/system/repo/mcp/apt_mirantis/grafana.yml
new file mode 100644
index 0000000..2d71740
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/grafana.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_grafana_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_grafana:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/grafana/ ${_param:linux_system_repo_mcp_grafana_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_grafana_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/influxdb.yml b/linux/system/repo/mcp/apt_mirantis/influxdb.yml
new file mode 100644
index 0000000..f3c1fec
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/influxdb.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_influxdb_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_influxdb:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/influxdb/ ${_param:linux_system_repo_mcp_influxdb_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_influxdb_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/kibana.yml b/linux/system/repo/mcp/apt_mirantis/kibana.yml
new file mode 100644
index 0000000..078ebd8
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/kibana.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_kibana_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_kibana_version_number: "4.6"
+  linux:
+    system:
+      repo:
+        mcp_kibana:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/kibana/${_param:linux_system_repo_mcp_kibana_version_number}/ ${_param:linux_system_repo_mcp_kibana_version} kibana-46"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_kibana_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/maas.yml b/linux/system/repo/mcp/apt_mirantis/maas.yml
new file mode 100644
index 0000000..b18bf65
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/maas.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_maas_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_maas:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/maas/ ${_param:linux_system_repo_mcp_maas_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_maas_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/openstack.yml b/linux/system/repo/mcp/apt_mirantis/openstack.yml
new file mode 100644
index 0000000..5d11e59
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/openstack.yml
@@ -0,0 +1,23 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mk_openstack_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mirantis_openstack:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/openstack/${_param:openstack_version} ${_param:linux_system_repo_mk_openstack_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          pin:
+          - pin: 'release l=${_param:openstack_version}'
+            priority: 1100
+            package: '*'
+        mk_openstack:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/ ${_param:linux_system_repo_mk_openstack_version} ${_param:openstack_version}"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          pin:
+          - pin: 'release l=${_param:linux_system_repo_mk_openstack_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/saltstack_2016_3.yml b/linux/system/repo/mcp/apt_mirantis/saltstack_2016_3.yml
new file mode 100644
index 0000000..bec95cd
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/saltstack_2016_3.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_saltstack_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_saltstack:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/salt/2016.3/ ${_param:linux_system_repo_mcp_saltstack_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_saltstack_version}'
+            priority: 1100
+            package: '*'
\ No newline at end of file
diff --git a/linux/system/repo/mcp/apt_mirantis/sensu.yml b/linux/system/repo/mcp/apt_mirantis/sensu.yml
new file mode 100644
index 0000000..f86b88a
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/sensu.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_extra_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_extra:
+          source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/sensu/ ${_param:linux_system_repo_mcp_extra_version} main"
+          architectures: amd64
+          key_url: "http://apt.mirantis.com/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_extra_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/ubuntu.yml b/linux/system/repo/mcp/apt_mirantis/ubuntu.yml
new file mode 100644
index 0000000..e254ed6
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/ubuntu.yml
@@ -0,0 +1,24 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+  linux:
+    system:
+      repo:
+        ubuntu:
+          source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:apt_mk_version}/ubuntu/ ${_param:linux_system_codename} main restricted universe"
+          architectures: amd64
+          default: true
+          key_id: 437D05B5
+          key_server: keyserver.ubuntu.com
+        ubuntu_updates:
+          source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:apt_mk_version}/ubuntu/ ${_param:linux_system_codename}-updates main restricted universe"
+          architectures: amd64
+          default: true
+          key_id: 437D05B5
+          key_server: keyserver.ubuntu.com
+        ubuntu_security:
+          source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:apt_mk_version}/ubuntu/ ${_param:linux_system_codename}-security main restricted universe"
+          architectures: amd64
+          default: true
+          key_id: 437D05B5
+          key_server: keyserver.ubuntu.com
\ No newline at end of file
diff --git a/linux/system/repo/mcp/openstack.yml b/linux/system/repo/mcp/openstack.yml
index baa363a..465b75d 100644
--- a/linux/system/repo/mcp/openstack.yml
+++ b/linux/system/repo/mcp/openstack.yml
@@ -10,7 +10,7 @@
           architectures: amd64
           key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:openstack_version}/${_param:linux_system_codename}/archive-mcp${_param:openstack_version}.key"
           pin:
-          - pin: 'release a=${_param:openstack_version}'
+          - pin: 'release l=${_param:openstack_version}'
             priority: 1100
             package: '*'
         mk_openstack:
@@ -18,6 +18,6 @@
           architectures: amd64
           key_url: "http://apt.mirantis.com/public.gpg"
           pin:
-          - pin: 'release a=${_param:linux_system_repo_mk_openstack_version}'
+          - pin: 'release l=${_param:linux_system_repo_mk_openstack_version}'
             priority: 1100
             package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/aptly.yml b/linux/system/repo_local/mcp/apt_mirantis/aptly.yml
new file mode 100644
index 0000000..cc9e7d4
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/aptly.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_aptly_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_aptly:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/aptly/ ${_param:linux_system_repo_mcp_aptly_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_aptly_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/cassandra.yml b/linux/system/repo_local/mcp/apt_mirantis/cassandra.yml
new file mode 100644
index 0000000..ed767ab
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/cassandra.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_cassandra_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_cassandra_version_number: "21x"
+  linux:
+    system:
+      repo:
+        mcp_cassandra:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/cassandra/ ${_param:linux_system_repo_mcp_cassandra_version} ${_param:linux_system_repo_mcp_cassandra_version_number}"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_cassandra_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/ceph.yml b/linux/system/repo_local/mcp/apt_mirantis/ceph.yml
new file mode 100644
index 0000000..05f4957
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/ceph.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_ceph_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_ceph_codename: luminous
+  linux:
+    system:
+      repo:
+        mcp_ceph:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ceph/ ${_param:linux_system_repo_mcp_ceph_version} ${_param:linux_system_repo_mcp_ceph_codename}"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_ceph_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/docker.yml b/linux/system/repo_local/mcp/apt_mirantis/docker.yml
new file mode 100644
index 0000000..84fed9f
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/docker.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_docker_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_docker:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/docker/ ${_param:linux_system_repo_mcp_docker_version} stable"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_docker_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/elastic.yml b/linux/system/repo_local/mcp/apt_mirantis/elastic.yml
new file mode 100644
index 0000000..2646273
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/elastic.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_elastic_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_elastic_version_number: "2.x"
+  linux:
+    system:
+      repo:
+        mcp_elastic:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/elastic/${_param:linux_system_repo_mcp_elastic_version_number}/ ${_param:linux_system_repo_mcp_elastic_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_elastic_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml b/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml
new file mode 100644
index 0000000..40682d7
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_fluentd_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_fluentd:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/fluentd/ ${_param:linux_system_repo_mcp_fluentd_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_fluentd_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml b/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml
new file mode 100644
index 0000000..ca7e1bd
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_glusterfs_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_glusterfs_version_number: "3.12"
+  linux:
+    system:
+      repo:
+        mcp_glusterfs:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/glusterfs/ ${_param:linux_system_repo_mcp_glusterfs_version} ${_param:linux_system_repo_mcp_glusterfs_version_number}"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_glusterfs_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/grafana.yml b/linux/system/repo_local/mcp/apt_mirantis/grafana.yml
new file mode 100644
index 0000000..5ba6a63
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/grafana.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_grafana_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_grafana:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/grafana/ ${_param:linux_system_repo_mcp_grafana_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_grafana_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/influxdb.yml b/linux/system/repo_local/mcp/apt_mirantis/influxdb.yml
new file mode 100644
index 0000000..6bd6509
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/influxdb.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_influxdb_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_influxdb:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/influxdb/ ${_param:linux_system_repo_mcp_influxdb_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_influxdb_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/kibana.yml b/linux/system/repo_local/mcp/apt_mirantis/kibana.yml
new file mode 100644
index 0000000..c0ebe5a
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/kibana.yml
@@ -0,0 +1,17 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_kibana_version: ${_param:apt_mk_version}
+    linux_system_repo_mcp_kibana_version_number: "4.6"
+  linux:
+    system:
+      repo:
+        mcp_kibana:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/kibana/${_param:linux_system_repo_mcp_kibana_version_number}/ ${_param:linux_system_repo_mcp_kibana_version} kibana-46"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_kibana_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/maas.yml b/linux/system/repo_local/mcp/apt_mirantis/maas.yml
new file mode 100644
index 0000000..63f82c2
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/maas.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_maas_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_maas:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/maas/ ${_param:linux_system_repo_mcp_maas_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_maas_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/openstack.yml b/linux/system/repo_local/mcp/apt_mirantis/openstack.yml
new file mode 100644
index 0000000..0ce7d41
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/openstack.yml
@@ -0,0 +1,15 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mk_openstack_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mirantis_openstack:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/openstack/${_param:openstack_version} ${_param:linux_system_repo_mk_openstack_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          pin:
+          - pin: 'release l=${_param:openstack_version}'
+            priority: 1100
+            package: '*'
\ No newline at end of file
diff --git a/linux/system/repo_local/mcp/apt_mirantis/saltstack_2016_3.yml b/linux/system/repo_local/mcp/apt_mirantis/saltstack_2016_3.yml
new file mode 100644
index 0000000..1cd567a
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/saltstack_2016_3.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_saltstack_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_saltstack:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/salt/2016.3/ ${_param:linux_system_repo_mcp_saltstack_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_saltstack_version}'
+            priority: 1100
+            package: '*'
\ No newline at end of file
diff --git a/linux/system/repo_local/mcp/apt_mirantis/sensu.yml b/linux/system/repo_local/mcp/apt_mirantis/sensu.yml
new file mode 100644
index 0000000..5cd16cf
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/sensu.yml
@@ -0,0 +1,16 @@
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mcp_extra_version: ${_param:apt_mk_version}
+  linux:
+    system:
+      repo:
+        mcp_extra:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/sensu/ ${_param:linux_system_repo_mcp_extra_version} main"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          clean_file: true
+          pin:
+          - pin: 'release a=${_param:linux_system_repo_mcp_extra_version}'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/ubuntu.yml b/linux/system/repo_local/mcp/apt_mirantis/ubuntu.yml
new file mode 100644
index 0000000..d510183
--- /dev/null
+++ b/linux/system/repo_local/mcp/apt_mirantis/ubuntu.yml
@@ -0,0 +1,23 @@
+parameters:
+  linux:
+    system:
+      repo:
+        ubuntu:
+          refresh_db: ${_param:linux_repo_refresh_db}
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu ${_param:linux_system_codename} main universe restricted"
+          architectures: amd64
+          default: true
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+        ubuntu-updates:
+          refresh_db: ${_param:linux_repo_refresh_db}
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu ${_param:linux_system_codename}-updates main universe restricted"
+          architectures: amd64
+          default: true
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+        ubuntu-security:
+          refresh_db: ${_param:linux_repo_refresh_db}
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu ${_param:linux_system_codename}-security main universe restricted"
+          architectures: amd64
+          default: true
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+
diff --git a/linux/system/repo_local/mcp/openstack.yml b/linux/system/repo_local/mcp/openstack.yml
index a25cc57..2e69ef2 100644
--- a/linux/system/repo_local/mcp/openstack.yml
+++ b/linux/system/repo_local/mcp/openstack.yml
@@ -1,4 +1,7 @@
 parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_mk_openstack_version: ${_param:apt_mk_version}
   linux:
     system:
       repo:
@@ -7,6 +10,14 @@
           architectures: amd64
           key_url: "http://${_param:local_repo_url}/public.gpg"
           pin:
-          - pin: 'release a=${_param:openstack_version}'
+          - pin: 'release l=${_param:openstack_version}'
+            priority: 1100
+            package: '*'
+        mk_openstack:
+          source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:linux_system_repo_mk_openstack_version} ${_param:openstack_version}"
+          architectures: amd64
+          key_url: "http://${_param:local_repo_url}/public.gpg"
+          pin:
+          - pin: 'release l=${_param:linux_system_repo_mk_openstack_version}'
             priority: 1100
             package: '*'
diff --git a/linux/system/repo_local/ubuntu.yml b/linux/system/repo_local/ubuntu.yml
index d510183..46994ee 100644
--- a/linux/system/repo_local/ubuntu.yml
+++ b/linux/system/repo_local/ubuntu.yml
@@ -20,4 +20,3 @@
           architectures: amd64
           default: true
           key_url: "http://${_param:local_repo_url}/public.gpg"
-
diff --git a/linux/system/single/debian.yml b/linux/system/single/debian.yml
index bb3cb54..b6d0b2b 100644
--- a/linux/system/single/debian.yml
+++ b/linux/system/single/debian.yml
@@ -8,7 +8,3 @@
       package:
         python-msgpack:
           version: latest
-      apt:
-        config:
-          compression-workaround:
-            "Acquire::CompressionTypes::Order": "gz"
diff --git a/linux/system/single/init.yml b/linux/system/single/init.yml
index 8de2dda..c7c583b 100644
--- a/linux/system/single/init.yml
+++ b/linux/system/single/init.yml
@@ -21,6 +21,10 @@
           version: purged
         mcelog:
           version: latest
+      apt:
+        config:
+          compression-workaround:
+            "Acquire::CompressionTypes::Order": "gz"
       kernel:
         modules:
           - nf_conntrack
diff --git a/maas/region/restoredb.yml b/maas/region/restoredb.yml
new file mode 100644
index 0000000..df4ff95
--- /dev/null
+++ b/maas/region/restoredb.yml
@@ -0,0 +1,9 @@
+classes:
+- system.maas.region.single
+parameters:
+  maas:
+    region:
+      database:
+        initial_data:
+          source: ${linux:network:fqdn}
+          host: ${_param:backupninja_backup_host}
\ No newline at end of file
diff --git a/maas/region/single.yml b/maas/region/single.yml
index 20779aa..3fdc105 100644
--- a/maas/region/single.yml
+++ b/maas/region/single.yml
@@ -36,7 +36,7 @@
         dnssec_validation: 'no'
         enable_third_party_drivers: true
         maas_name: mas01
-        active_discovery_interval: '600'
+        active_discovery_interval: 600
         ntp_external_only: true
         upstream_dns: ${_param:dns_server01}
         enable_http_proxy: false
diff --git a/neutron/compute/nfv/dpdk.yml b/neutron/compute/nfv/dpdk.yml
index c8872c7..0901bb8 100644
--- a/neutron/compute/nfv/dpdk.yml
+++ b/neutron/compute/nfv/dpdk.yml
@@ -1,4 +1,6 @@
 parameters:
+  _param:
+    compute_ovs_vhost_socket_dir: "/run/openvswitch-vhost"
   linux:
     network:
       bridge: openvswitch
@@ -12,7 +14,8 @@
         memory_channels: "${_param:compute_ovs_memory_channels}"
         vhost_socket_dir:
           name: "openvswitch-vhost"
-          path: "/run/openvswitch-vhost"
+          path: "${_param:compute_ovs_vhost_socket_dir}"
   neutron:
     compute:
       dpdk: True
+      vhost_socket_dir: "${_param:compute_ovs_vhost_socket_dir}"
diff --git a/opencontrail/client/resource/global_vrouter_config.yml b/opencontrail/client/resource/global_vrouter_config.yml
index 15bf76e..9537775 100644
--- a/opencontrail/client/resource/global_vrouter_config.yml
+++ b/opencontrail/client/resource/global_vrouter_config.yml
@@ -2,7 +2,7 @@
   opencontrail:
     client:
       global_vrouter_config:
-        name: global-vrouter-config
+        name: default-global-vrouter-config
         parent_type: global-system-config
         encap_priority: "MPLSoUDP,MPLSoGRE"
         vxlan_vn_id_mode: automatic
diff --git a/opencontrail/control/analytics.yml b/opencontrail/control/analytics.yml
index 8065742..6e56936 100644
--- a/opencontrail/control/analytics.yml
+++ b/opencontrail/control/analytics.yml
@@ -4,6 +4,9 @@
 - service.opencontrail.control.analytics
 - system.haproxy.proxy.listen.opencontrail.analytics
 parameters:
+  _param:
+    opencontrail_kafka_log_cleanup_mtime: '+7'
+    opencontrail_kafka_log_cleanup_dir: '/usr/share/kafka/logs/'
 # Temprorary fix for MOS9 packages to pin old version of kafka
   linux:
     system:
@@ -17,6 +20,12 @@
       kernel:
         modules:
         - nf_conntrack_ipv4
+      job:
+        kafka_logs_cleanup:
+          command: "find ${_param:opencontrail_kafka_log_cleanup_dir} -name '*.log.*' -type f -mtime ${_param:opencontrail_kafka_log_cleanup_mtime} -exec rm {} \\;"
+          identifier: kafka_logs_cleanup
+          hour: 0
+          minute: 0
   opencontrail:
     common:
       identity:
diff --git a/opencontrail/control/analytics4_0.yml b/opencontrail/control/analytics4_0.yml
index a426e02..4ec9b4c 100644
--- a/opencontrail/control/analytics4_0.yml
+++ b/opencontrail/control/analytics4_0.yml
@@ -5,6 +5,8 @@
 - system.haproxy.proxy.listen.opencontrail.analytics
 parameters:
   _param:
+    opencontrail_kafka_log_cleanup_mtime: '+7'
+    opencontrail_kafka_log_cleanup_dir: '/usr/share/kafka/logs/'
     opencontrail_version: 4.0
     linux_repo_contrail_component: oc40
     opencontrail_message_queue_node01_address: ${_param:openstack_message_queue_node01_address}
@@ -13,12 +15,20 @@
     opencontrail_message_queue_address: ${_param:openstack_message_queue_address}
     opencontrail_analytics_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-analytics
     opencontrail_analyticsdb_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-analyticsdb
+    opencontrail_analytics_container_name: opencontrail_analytics_1
+    opencontrail_analyticsdb_container_name: opencontrail_analyticsdb_1
 # Temprorary fix for MOS9 packages to pin old version of kafka
   linux:
     system:
       kernel:
         modules:
         - nf_conntrack_ipv4
+      job:
+        kafka_logs_cleanup:
+          command: "find ${_param:opencontrail_kafka_log_cleanup_dir} -name '*.log.*' -type f -mtime ${_param:opencontrail_kafka_log_cleanup_mtime} -exec rm {} \\;"
+          identifier: kafka_logs_cleanup
+          hour: 0
+          minute: 0
   opencontrail:
     common:
       config_only: true
@@ -60,12 +70,13 @@
   docker:
     client:
       compose:
-        opencontrail_api:
+        opencontrail:
           status: up
           pull: true
           service:
             analytics:
               image: ${_param:opencontrail_analytics_image}
+              container_name: ${_param:opencontrail_analytics_container_name}
               network_mode: "host"
               privileged: true
               volumes:
@@ -73,6 +84,7 @@
                 - /etc/redis/redis.conf:/etc/redis/redis.conf
             analyticsdb:
               image: ${_param:opencontrail_analyticsdb_image}
+              container_name: ${_param:opencontrail_analyticsdb_container_name}
               volumes:
                 - /etc/cassandra/cassandra-env-analytics.sh:/etc/cassandra/cassandra-env.sh
                 - /etc/cassandra/cassandra_analytics.yaml:/etc/cassandra/cassandra.yaml
@@ -84,6 +96,7 @@
                 - /usr/share/kafka/config/server.properties:/usr/share/kafka/config/server.properties
                 - /usr/share/kafka/config/consumer.properties:/usr/share/kafka/config/consumer.properties
                 - /usr/share/kafka/config/zookeeper.properties:/usr/share/kafka/config/zookeeper.properties
+                - /usr/share/kafka/logs:/usr/share/kafka/logs
                 - /etc/zookeeper/conf/zoo_analytics.cfg:/etc/zookeeper/conf/zoo.cfg
                 - /etc/zookeeper/conf/log4j.properties:/etc/zookeeper/conf/log4j.properties
               network_mode: "host"
diff --git a/opencontrail/control/cluster.yml b/opencontrail/control/cluster.yml
index a4126d6..28c12c4 100644
--- a/opencontrail/control/cluster.yml
+++ b/opencontrail/control/cluster.yml
@@ -5,6 +5,9 @@
 - system.haproxy.proxy.listen.opencontrail.control
 - system.haproxy.proxy.listen.opencontrail.analytics
 parameters:
+  _param:
+    opencontrail_kafka_log_cleanup_mtime: '+7'
+    opencontrail_kafka_log_cleanup_dir: '/usr/share/kafka/logs/'
 # Temprorary fix for MOS9 packages to pin old version of kafka
   linux:
     system:
@@ -16,6 +19,12 @@
       kernel:
         modules:
         - nf_conntrack_ipv4
+      job:
+        kafka_logs_cleanup:
+          command: "find ${_param:opencontrail_kafka_log_cleanup_dir} -name '*.log.*' -type f -mtime ${_param:opencontrail_kafka_log_cleanup_mtime} -exec rm {} \\;"
+          identifier: kafka_logs_cleanup
+          hour: 0
+          minute: 0
   opencontrail:
     web:
       database:
diff --git a/opencontrail/control/cluster4_0.yml b/opencontrail/control/cluster4_0.yml
index 9796930..611eb24 100644
--- a/opencontrail/control/cluster4_0.yml
+++ b/opencontrail/control/cluster4_0.yml
@@ -6,6 +6,8 @@
 - system.haproxy.proxy.listen.opencontrail.analytics
 parameters:
   _param:
+    opencontrail_kafka_log_cleanup_mtime: '+7'
+    opencontrail_kafka_log_cleanup_dir: '/usr/share/kafka/logs/'
     opencontrail_version: 4.0
     linux_repo_contrail_component: oc40
     opencontrail_message_queue_node01_address: ${_param:openstack_control_node01_address}
@@ -15,6 +17,9 @@
     opencontrail_analytics_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-analytics
     opencontrail_analyticsdb_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-analyticsdb
     opencontrail_controller_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-controller
+    opencontrail_controller_container_name: opencontrail_controller_1
+    opencontrail_analytics_container_name: opencontrail_analytics_1
+    opencontrail_analyticsdb_container_name: opencontrail_analyticsdb_1
     analytics_vip_address: ${_param:opencontrail_analytics_address}
 # Temprorary fix for MOS9 packages to pin old version of kafka
   linux:
@@ -22,6 +27,12 @@
       kernel:
         modules:
         - nf_conntrack_ipv4
+      job:
+        kafka_logs_cleanup:
+          command: "find ${_param:opencontrail_kafka_log_cleanup_dir} -name '*.log.*' -type f -mtime ${_param:opencontrail_kafka_log_cleanup_mtime} -exec rm {} \\;"
+          identifier: kafka_logs_cleanup
+          hour: 0
+          minute: 0
   opencontrail:
     common:
       config_only: true
@@ -117,12 +128,13 @@
   docker:
     client:
       compose:
-        opencontrail_api:
+        opencontrail:
           status: up
           pull: true
           service:
             controller:
               image: ${_param:opencontrail_controller_image}
+              container_name: ${_param:opencontrail_controller_container_name}
               volumes:
                 - /etc/contrail:/etc/contrail
                 - /var/lib/configdb:/var/lib/cassandra
@@ -137,6 +149,7 @@
               privileged: true
             analytics:
               image: ${_param:opencontrail_analytics_image}
+              container_name: ${_param:opencontrail_analytics_container_name}
               network_mode: "host"
               privileged: true
               volumes:
@@ -144,6 +157,7 @@
                 - /etc/redis/redis.conf:/etc/redis/redis.conf
             analyticsdb:
               image: ${_param:opencontrail_analyticsdb_image}
+              container_name: ${_param:opencontrail_analyticsdb_container_name}
               volumes:
                 - /etc/cassandra/cassandra-env-analytics.sh:/etc/cassandra/cassandra-env.sh
                 - /etc/cassandra/cassandra_analytics.yaml:/etc/cassandra/cassandra.yaml
@@ -155,6 +169,7 @@
                 - /usr/share/kafka/config/server.properties:/usr/share/kafka/config/server.properties
                 - /usr/share/kafka/config/consumer.properties:/usr/share/kafka/config/consumer.properties
                 - /usr/share/kafka/config/zookeeper.properties:/usr/share/kafka/config/zookeeper.properties
+                - /usr/share/kafka/logs:/usr/share/kafka/logs
                 - /etc/zookeeper/conf/zoo_analytics.cfg:/etc/zookeeper/conf/zoo.cfg
                 - /etc/zookeeper/conf/log4j.properties:/etc/zookeeper/conf/log4j.properties
               network_mode: "host"
diff --git a/opencontrail/control/control4_0.yml b/opencontrail/control/control4_0.yml
index f1d603c..2fe76e8 100644
--- a/opencontrail/control/control4_0.yml
+++ b/opencontrail/control/control4_0.yml
@@ -10,6 +10,7 @@
     opencontrail_message_queue_node02_address: ${_param:openstack_message_queue_node02_address}
     opencontrail_message_queue_node03_address: ${_param:openstack_message_queue_node03_address}
     opencontrail_controller_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-controller
+    opencontrail_controller_container_name: opencontrail_controller_1
     analytics_vip_address: ${_param:opencontrail_analytics_address}
   opencontrail:
     common:
@@ -87,12 +88,13 @@
   docker:
     client:
       compose:
-        opencontrail_api:
+        opencontrail:
           status: up
           pull: true
           service:
             controller:
               image: ${_param:opencontrail_controller_image}
+              container_name: ${_param:opencontrail_controller_container_name}
               volumes:
                 - /etc/contrail:/etc/contrail
                 - /var/lib/configdb:/var/lib/cassandra
diff --git a/opencontrail/control/single.yml b/opencontrail/control/single.yml
index 064418e..2ba745b 100644
--- a/opencontrail/control/single.yml
+++ b/opencontrail/control/single.yml
@@ -2,6 +2,9 @@
 - service.opencontrail.control.single
 - service.haproxy.proxy.single
 parameters:
+  _param:
+    opencontrail_kafka_log_cleanup_mtime: '+7'
+    opencontrail_kafka_log_cleanup_dir: '/usr/share/kafka/logs/'
 # Temprorary fix for MOS9 packages to pin old version of kafka
   linux:
     system:
@@ -15,6 +18,12 @@
       kernel:
         modules:
         - nf_conntrack_ipv4
+      job:
+        kafka_logs_cleanup:
+          command: "find ${_param:opencontrail_kafka_log_cleanup_dir} -name '*.log.*' -type f -mtime ${_param:opencontrail_kafka_log_cleanup_mtime} -exec rm {} \\;"
+          identifier: kafka_logs_cleanup
+          hour: 0
+          minute: 0
   haproxy:
     proxy:
       listen:
diff --git a/opencontrail/control/single4_0.yml b/opencontrail/control/single4_0.yml
index ded5289..fcbd6af 100644
--- a/opencontrail/control/single4_0.yml
+++ b/opencontrail/control/single4_0.yml
@@ -3,11 +3,16 @@
 - service.haproxy.proxy.single
 parameters:
   _param:
+    opencontrail_kafka_log_cleanup_mtime: '+7'
+    opencontrail_kafka_log_cleanup_dir: '/usr/share/kafka/logs/'
     opencontrail_version: 4.0
     linux_repo_contrail_component: oc40
     opencontrail_analytics_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-analytics
     opencontrail_analyticsdb_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-analyticsdb
     opencontrail_controller_image: docker-prod-local.artifactory.mirantis.com/opencontrail/opencontrail-controller
+    opencontrail_controller_container_name: opencontrail_controller_1
+    opencontrail_analytics_container_name: opencontrail_analytics_1
+    opencontrail_analyticsdb_container_name: opencontrail_analyticsdb_1
 # Temprorary fix for MOS9 packages to pin old version of kafka
   linux:
     system:
@@ -17,6 +22,12 @@
       kernel:
         modules:
         - nf_conntrack_ipv4
+      job:
+        kafka_logs_cleanup:
+          command: "find ${_param:opencontrail_kafka_log_cleanup_dir} -name '*.log.*' -type f -mtime ${_param:opencontrail_kafka_log_cleanup_mtime} -exec rm {} \\;"
+          identifier: kafka_logs_cleanup
+          hour: 0
+          minute: 0
   haproxy:
     proxy:
       listen:
@@ -148,12 +159,13 @@
   docker:
     client:
       compose:
-        opencontrail_api:
+        opencontrail:
           status: up
           pull: true
           service:
             controller:
               image: ${_param:opencontrail_controller_image}
+              container_name: ${_param:opencontrail_controller_container_name}
               volumes:
                 - /etc/contrail:/etc/contrail
                 - /var/lib/configdb:/var/lib/cassandra
@@ -168,6 +180,7 @@
               privileged: true
             analytics:
               image: ${_param:opencontrail_analytics_image}
+              container_name: ${_param:opencontrail_analytics_container_name}
               network_mode: "host"
               privileged: true
               volumes:
@@ -175,6 +188,7 @@
                 - /etc/redis/redis.conf:/etc/redis/redis.conf
             analyticsdb:
               image: ${_param:opencontrail_analyticsdb_image}
+              container_name: ${_param:opencontrail_analyticsdb_container_name}
               volumes:
                 - /etc/cassandra/cassandra-env-analytics.sh:/etc/cassandra/cassandra-env.sh
                 - /etc/cassandra/cassandra_analytics.yaml:/etc/cassandra/cassandra.yaml
@@ -186,6 +200,7 @@
                 - /usr/share/kafka/config/server.properties:/usr/share/kafka/config/server.properties
                 - /usr/share/kafka/config/consumer.properties:/usr/share/kafka/config/consumer.properties
                 - /usr/share/kafka/config/zookeeper.properties:/usr/share/kafka/config/zookeeper.properties
+                - /usr/share/kafka/logs:/usr/share/kafka/logs
                 - /etc/zookeeper/conf/zoo_analytics.cfg:/etc/zookeeper/conf/zoo.cfg
                 - /etc/zookeeper/conf/log4j.properties:/etc/zookeeper/conf/log4j.properties
               network_mode: "host"
diff --git a/openssh/server/team/members/dbogaczyk.yml b/openssh/server/team/members/dbogaczyk.yml
new file mode 100644
index 0000000..109706c
--- /dev/null
+++ b/openssh/server/team/members/dbogaczyk.yml
@@ -0,0 +1,19 @@
+parameters:
+  linux:
+    system:
+      user:
+        dbogaczyk:
+          enabled: true
+          name: dbogaczyk
+          sudo: ${_param:linux_system_user_sudo}
+          full_name: Dariusz Bogaczyk
+          home: /home/dbogaczyk
+          email: dbogaczyk@mirantis.com
+  openssh:
+    server:
+      user:
+        dbogaczyk:
+          enabled: true
+          public_keys:
+            - key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC471IhcUC1BZlCWdD012E49P9BLGp08Tp45Zn2EQrSPuMUf6kuNyogU6ZSwRPvW9yzTd8DSNKEqr80hYyoX/SDURsKfZaw5iIKFWhj4M/0AODrx01h6Z6r+l4Oj7cgIe4Y24Qbkg0da9Z1nhy+QjKM7So6n+5IBwQLq0IyEuYkljnY7G1cjlDiw41f+S8euIHMZcOP86t+6UJswdwlLswXrF/QZOlkyXTl7N0Yf1z4ehpO8TpFfd9hdsO8Gh0pBfJ1P+ORveeowldDu9zIv4UUs8D8Q+nuujw2JB42XxiK0dq2xXvHUxwsg7+06gD0N5VHJOZTdJBtsEdOBFPO8GZj dbogaczyk@mirantis.com
+          user: ${linux:system:user:dbogaczyk}
diff --git a/openssh/server/team/members/dkruglov.yml b/openssh/server/team/members/dkruglov.yml
index 358e365..1df2a6b 100644
--- a/openssh/server/team/members/dkruglov.yml
+++ b/openssh/server/team/members/dkruglov.yml
@@ -11,7 +11,6 @@
           email: dkruglov@mirantis.com
   openssh:
     server:
-      enabled: true
       user:
         dkruglov:
           enabled: true
diff --git a/openssh/server/team/members/korlowska.yml b/openssh/server/team/members/korlowska.yml
index f175273..cde10d1 100644
--- a/openssh/server/team/members/korlowska.yml
+++ b/openssh/server/team/members/korlowska.yml
@@ -11,7 +11,6 @@
           email: korlowska@mirantis.com
   openssh:
     server:
-      enabled: true
       user:
         korlowska:
           enabled: true
diff --git a/openssh/server/team/members/miwinski.yml b/openssh/server/team/members/miwinski.yml
index 5dc9d80..676fd3c 100644
--- a/openssh/server/team/members/miwinski.yml
+++ b/openssh/server/team/members/miwinski.yml
@@ -11,7 +11,6 @@
           email: miwinski@mirantis.com
   openssh:
     server:
-      enabled: true
       user:
         miwinski:
           enabled: true
diff --git a/openssh/server/team/members/mlos.yml b/openssh/server/team/members/mlos.yml
index 6b30817..fe7b8f4 100644
--- a/openssh/server/team/members/mlos.yml
+++ b/openssh/server/team/members/mlos.yml
@@ -11,7 +11,6 @@
           email: mlos@mirantis.com
   openssh:
     server:
-      enabled: true
       user:
         mlos:
           enabled: true
diff --git a/openssh/server/team/members/mniedbala.yml b/openssh/server/team/members/mniedbala.yml
index 30f7f30..a4ca5c8 100644
--- a/openssh/server/team/members/mniedbala.yml
+++ b/openssh/server/team/members/mniedbala.yml
@@ -11,7 +11,6 @@
           email: mniedbala@mirantis.com
   openssh:
     server:
-      enabled: true
       user:
         mniedbala:
           enabled: true
diff --git a/openssh/server/team/members/pruzicka.yml b/openssh/server/team/members/pruzicka.yml
index 93aca1f..d56d3d6 100644
--- a/openssh/server/team/members/pruzicka.yml
+++ b/openssh/server/team/members/pruzicka.yml
@@ -11,7 +11,6 @@
           email: pruzicka@mirantis.com
   openssh:
     server:
-      enabled: true
       user:
         pruzicka:
           enabled: true
diff --git a/openssh/server/team/services.yml b/openssh/server/team/services.yml
index 8f15552..7d71d98 100644
--- a/openssh/server/team/services.yml
+++ b/openssh/server/team/services.yml
@@ -8,6 +8,8 @@
 - system.openssh.server.team.members.korlowska
 - system.openssh.server.team.members.miwinski
 - system.openssh.server.team.members.mlos
+- system.openssh.server.team.members.dbogaczyk
+- system.openssh.server.team.members.dkruglov
 parameters:
   _param:
     linux_system_user_sudo: true
diff --git a/rundeck/client/init.yml b/rundeck/client/init.yml
index 31b7ee9..f97b8da 100644
--- a/rundeck/client/init.yml
+++ b/rundeck/client/init.yml
@@ -17,3 +17,4 @@
         credentials:
           username: ${_param:rundeck_client_username}
           password: ${_param:rundeck_client_password}
+          api_token: ${_param:rundeck_client_password}
diff --git a/rundeck/server/docker.yml b/rundeck/server/docker.yml
index 492d135..d7f1a18 100644
--- a/rundeck/server/docker.yml
+++ b/rundeck/server/docker.yml
@@ -3,12 +3,11 @@
   - service.rundeck.server.single
 parameters:
   _param:
-    rundeck_postgresql_username: rundeck
-    rundeck_postgresql_password: password
-    rundeck_postgresql_database: rundeck
-    rundeck_postgresql_host: ${_param:control_vip_address}
-    rundeck_postgresql_port: 5432
     rundeck_server_ssh_timeout: 300000
+    rundeck_forward_iframe: False
+    rundeck_iframe_host: "external-proxy-endpoint"
+    rundeck_iframe_port: ${_param:haproxy_rundeck_exposed_port}
+    rundeck_iframe_ssl: False
   rundeck:
     server:
       user:
@@ -16,17 +15,15 @@
         gid: 550
       home_dir: /srv/volumes/rundeck
       root_dir: /srv/volumes/rundeck
-      datasource:
-        engine: postgresql
-        host: ${_param:rundeck_postgresql_host}
-        port: ${_param:rundeck_postgresql_port}
-        username: ${_param:rundeck_postgresql_username}
-        password: ${_param:rundeck_postgresql_password}
-        database: ${_param:rundeck_postgresql_database}
       api:
         host: ${_param:haproxy_rundeck_bind_host}
         port: ${_param:haproxy_rundeck_bind_port}
         https: ${_param:haproxy_rundeck_ssl:enabled}
+      iframe:
+        external_forward: ${_param:rundeck_forward_iframe}
+        host: ${_param:rundeck_iframe_host}
+        port: ${_param:rundeck_iframe_port}
+        https: ${_param:rundeck_iframe_ssl}
       ssh:
         user: ${_param:rundeck_runbook_user}
         private_key: ${_param:rundeck_runbook_private_key}
diff --git a/salt/control/virt.yml b/salt/control/virt.yml
index 7556dc9..aea524c 100644
--- a/salt/control/virt.yml
+++ b/salt/control/virt.yml
@@ -48,3 +48,12 @@
       xxxxlarge:
         - system:
             size: 700000
+      huge:
+        - system:
+            size: 1000000
+      xhuge:
+        - system:
+            size: 1500000
+      xxhuge:
+        - system:
+            size: 3000000
diff --git a/salt/master/pillar/composite/init.yml b/salt/master/pillar/composite/init.yml
new file mode 100644
index 0000000..c095d59
--- /dev/null
+++ b/salt/master/pillar/composite/init.yml
@@ -0,0 +1,2 @@
+classes:
+- service.salt.master.pillar.composite
diff --git a/salt/master/pillar/composite/nacl.yml b/salt/master/pillar/composite/nacl.yml
new file mode 100644
index 0000000..a2d382b
--- /dev/null
+++ b/salt/master/pillar/composite/nacl.yml
@@ -0,0 +1,2 @@
+classes:
+- service.salt.master.pillar.composite.nacl
diff --git a/salt/master/pillar/composite/reclass.yml b/salt/master/pillar/composite/reclass.yml
new file mode 100644
index 0000000..0b5443b
--- /dev/null
+++ b/salt/master/pillar/composite/reclass.yml
@@ -0,0 +1,2 @@
+classes:
+- service.salt.master.pillar.composite.reclass
diff --git a/salt/master/pillar/composite/saltclass.yml b/salt/master/pillar/composite/saltclass.yml
new file mode 100644
index 0000000..8ff5e0b
--- /dev/null
+++ b/salt/master/pillar/composite/saltclass.yml
@@ -0,0 +1,2 @@
+classes:
+- service.salt.master.pillar.composite.saltclass
diff --git a/salt/master/pillar/reclass.yml b/salt/master/pillar/reclass.yml
new file mode 100644
index 0000000..cfeca33
--- /dev/null
+++ b/salt/master/pillar/reclass.yml
@@ -0,0 +1,2 @@
+classes:
+- service.salt.master.pillar.reclass