Merge the tip of origin/release/proposed/2019.2.0 into origin/release/2019.2.0

85cc3d5 Unbind salt control images from mcp_version param
2a95fb1 Unbind qcow2 images from mcp_version param
89811e9 Bind docker images versions to latest tag
659ab09 Add designate dashboard to horizon/server/plugin and add defaults
6d98a83 Unbind docker images versions from mcp_version param
d6b09d8 Bump opencontrail docker image tags to 2019.2.7
cdcee7b Switch to MemcachedCache backend for horizon
962bc26 Approve DefaultGroovyMethods getAt java.util.List java.util.Collection
e5052e2 Get ready deploy-update-opencontrail4 to automation
6da4ac6 Approve DefaultGroovyMethods minus java.util.List java.util.Collection
4ec8541 Added SLAVE_NODE parameter to CVP-Shaker
b07bd9a Add CLUSTER_FLAGS parameter to ceph jobs
9cdc715 Update gerrit tag for offline image
157a322 Increase default netdev_budget values
8cd9662 [CVP-Sanity] Override nested params of global config in Jenkins
89ebc6d Update Gerrit image version
f7feacf Add cvp-sanity-checks:2019.2.7 image
3136816 Set telegraf image tag to 2019.2.7
523a00f Enable basic Auth for Prometheus

Change-Id: I5d4983cd198a9f1e0469fd6a8e5b24a890cf49e9
diff --git a/defaults/docker_images.yml b/defaults/docker_images.yml
index e787bb3..02e90d7 100644
--- a/defaults/docker_images.yml
+++ b/defaults/docker_images.yml
@@ -3,43 +3,43 @@
     # CI\CD
     docker_image_compose: "${_param:mcp_docker_registry}/mirantis/external/docker/compose:1.17.1"
     # 2.6.2 version, from 12/18/2108, differ from latest 2.6.2 upstream - update next cycle
-    docker_image_registry:   "${_param:mcp_docker_registry}/mirantis/external/registry:${_param:mcp_version}"
-    docker_image_visualizer: "${_param:mcp_docker_registry}/mirantis/external/visualizer:${_param:mcp_version}"
+    docker_image_registry:   "${_param:mcp_docker_registry}/mirantis/external/registry:2019.2.6"
+    docker_image_visualizer: "${_param:mcp_docker_registry}/mirantis/external/visualizer:2019.2.6"
     docker_image_openldap: "${_param:mcp_docker_registry}/mirantis/external/osixia/openldap:1.2.2"
     docker_image_postgresql: "${_param:mcp_docker_registry}/mirantis/external/library/postgres:9.6.10"
     # 3.4.13, from Feb 15, differ from 3.4.13 upstream verison, from March 14 - update next cycle
-    docker_image_mongodb: "${_param:mcp_docker_registry}/mirantis/external/mongo:${_param:mcp_version}"
+    docker_image_mongodb: "${_param:mcp_docker_registry}/mirantis/external/mongo:2019.2.6"
     ###
     # phpldapadmin:0.6.12
     docker_image_phpldapadmin: "${_param:mcp_docker_registry}/mirantis/cicd/phpldapadmin:2019.2.5"
-    # gerrit:2.13.6
-    docker_image_gerrit: "${_param:mcp_docker_registry}/mirantis/cicd/gerrit:2019.2.5"
+    # gerrit:2.15.17
+    docker_image_gerrit: "${_param:mcp_docker_registry}/mirantis/cicd/gerrit:2019.2.7"
     # mysql:5.6
-    docker_image_mysql: "${_param:mcp_docker_registry}/mirantis/cicd/mysql:${_param:mcp_version}"
+    docker_image_mysql: "${_param:mcp_docker_registry}/mirantis/cicd/mysql:2019.2.6"
     # jenkins:2.150.3
     docker_image_jenkins: "${_param:mcp_docker_registry}/mirantis/cicd/jenkins:2019.2.5"
-    docker_image_jenkins_jnlp_slave: "${_param:mcp_docker_registry}/mirantis/cicd/jnlp-slave:${_param:mcp_version}"
+    docker_image_jenkins_jnlp_slave: "${_param:mcp_docker_registry}/mirantis/cicd/jnlp-slave:2019.2.6"
     # TODO: fix tag
     docker_image_jenkins_ssh_slave: "${_param:mcp_docker_registry}/mirantis/cicd/ssh-slave:2019.2.5"
     # model-generator
-    docker_image_operations_api: "${_param:mcp_docker_registry}/mirantis/model-generator/operations-api:${_param:mcp_version}"
-    docker_image_operations_ui: "${_param:mcp_docker_registry}/mirantis/model-generator/operations-ui:${_param:mcp_version}"
+    docker_image_operations_api: "${_param:mcp_docker_registry}/mirantis/model-generator/operations-api:2019.2.6"
+    docker_image_operations_ui: "${_param:mcp_docker_registry}/mirantis/model-generator/operations-ui:2019.2.6"
     # OpenContrail
-    opencontrail_docker_image_tag: "2019.2.6"
+    opencontrail_docker_image_tag: "2019.2.7"
     # stacklight
     # 6.5.0 version, from 11/29/2018, differ from latest upstream 6.5.0 - update next cycle
-    docker_image_alerta: "${_param:mcp_docker_registry}/mirantis/external/alerta-web:${_param:mcp_version}"
+    docker_image_alerta: "${_param:mcp_docker_registry}/mirantis/external/alerta-web:2019.2.6"
     docker_image_alertmanager: "${_param:mcp_docker_registry}/openstack-docker/alertmanager:2019.2.4"
-    docker_image_grafana: "${_param:mcp_docker_registry}/openstack-docker/grafana:${_param:mcp_version}"
+    docker_image_grafana: "${_param:mcp_docker_registry}/openstack-docker/grafana:2019.2.6"
     docker_image_prometheus_es_exporter: "${_param:mcp_docker_registry}/openstack-docker/prometheus-es-exporter:2019.2.6"
     docker_image_prometheus: "${_param:mcp_docker_registry}/openstack-docker/prometheus:2019.2.6"
     docker_image_prometheus_gainsight: "${_param:mcp_docker_registry}/openstack-docker/gainsight:2019.2.4"
-    docker_image_prometheus_gainsight_elasticsearch: "${_param:mcp_docker_registry}/openstack-docker/gainsight_elasticsearch:${_param:mcp_version}"
+    docker_image_prometheus_gainsight_elasticsearch: "${_param:mcp_docker_registry}/openstack-docker/gainsight_elasticsearch:2019.2.6"
     docker_image_prometheus_relay: "${_param:mcp_docker_registry}/openstack-docker/prometheus-relay:2019.2.5"
-    docker_image_pushgateway: "${_param:mcp_docker_registry}/openstack-docker/pushgateway:${_param:mcp_version}"
-    docker_image_remote_agent: "${_param:mcp_docker_registry}/openstack-docker/telegraf:2019.2.6"
-    docker_image_remote_collector: "${_param:mcp_docker_registry}/openstack-docker/heka:${_param:mcp_version}"
-    docker_image_remote_storage_adapter: "${_param:mcp_docker_registry}/openstack-docker/remote_storage_adapter:${_param:mcp_version}"
+    docker_image_pushgateway: "${_param:mcp_docker_registry}/openstack-docker/pushgateway:2019.2.6"
+    docker_image_remote_agent: "${_param:mcp_docker_registry}/openstack-docker/telegraf:2019.2.7"
+    docker_image_remote_collector: "${_param:mcp_docker_registry}/openstack-docker/heka:2019.2.6"
+    docker_image_remote_storage_adapter: "${_param:mcp_docker_registry}/openstack-docker/remote_storage_adapter:2019.2.6"
     docker_image_sf_notifier: "${_param:mcp_docker_registry}/openstack-docker/sf_notifier:2019.2.4"
     ##
     docker_image_cockroachdb: "${_param:mcp_docker_registry}/mirantis/external/cockroach/cockroach:v2.1.1"
@@ -47,16 +47,16 @@
     docker_image_keycloak_server: "${_param:mcp_docker_registry}/mirantis/external/jboss/keycloak:4.5.0.Final"
     docker_image_keycloak_proxy: "${_param:mcp_docker_registry}/mirantis/external/jboss/keycloak:3.4.2.Final"
     # CVP
-    docker_image_cvp_sanity_checks: "${_param:mcp_docker_registry}/mirantis/cvp/cvp-sanity-checks:2019.2.6"
+    docker_image_cvp_sanity_checks: "${_param:mcp_docker_registry}/mirantis/cvp/cvp-sanity-checks:2019.2.7"
     docker_image_cvp_tempest: "${_param:mcp_docker_registry}/mirantis/cicd/ci-tempest:${_param:openstack_version}"
     docker_image_cvp_shaker_checks: "${_param:mcp_docker_registry}/mirantis/cvp/cvp-shaker:2019.2.3"
     docker_image_cvp_rally: "${_param:mcp_docker_registry}/mirantis/cvp/cvp-rally:2019.2.5"
     docker_image_cvp_xrally: "${_param:mcp_docker_registry}/mirantis/external/xrally/xrally-openstack:0.11.2"
     # aptly
     docker_image_aptly:
-      base: "${_param:mcp_docker_registry}/mirantis/cicd/aptly:${_param:mcp_version}"
-      public: "${_param:mcp_docker_registry}/mirantis/cicd/aptly-public:${_param:mcp_version}"
-      publisher: "${_param:mcp_docker_registry}/mirantis/cicd/aptly-publisher:${_param:mcp_version}"
+      base: "${_param:mcp_docker_registry}/mirantis/cicd/aptly:2019.2.6"
+      public: "${_param:mcp_docker_registry}/mirantis/cicd/aptly-public:2019.2.6"
+      publisher: "${_param:mcp_docker_registry}/mirantis/cicd/aptly-publisher:2019.2.6"
 
     # List of images, to be placed into offline image, during separate image build process
     # WARNING: registry|target_registry and names - must be exactly same as list above!
@@ -67,10 +67,10 @@
          # CI/CD
         - registry: ${_param:mcp_docker_registry}/mirantis/external
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/external
-          name: registry:${_param:mcp_version}
+          name: registry:2019.2.6
         - registry: ${_param:mcp_docker_registry}/mirantis/external
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/external
-          name: visualizer:${_param:mcp_version}
+          name: visualizer:2019.2.6
         - registry: ${_param:mcp_docker_registry}/mirantis/external/docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/external/docker
           name: compose:1.17.1
@@ -86,17 +86,17 @@
 
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
-          name: aptly:${_param:mcp_version}
+          name: aptly:2019.2.6
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
-          name: aptly-public:${_param:mcp_version}
+          name: aptly-public:2019.2.6
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
-          name: aptly-publisher:${_param:mcp_version}
+          name: aptly-publisher:2019.2.6
 
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
-          name: jnlp-slave:${_param:mcp_version}
+          name: jnlp-slave:2019.2.6
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
           name: ssh-slave:2019.2.5
@@ -105,17 +105,17 @@
           name: jenkins:2019.2.5
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
-          name: gerrit:2019.2.5
+          name: gerrit:2019.2.7
           # stacklight
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
           name: alertmanager:2019.2.4
         - registry: ${_param:mcp_docker_registry}/mirantis/external
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/external
-          name: alerta-web:${_param:mcp_version}
+          name: alerta-web:2019.2.6
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
-          name: pushgateway:${_param:mcp_version}
+          name: pushgateway:2019.2.6
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
           name: prometheus:2019.2.6
@@ -124,25 +124,25 @@
           name: gainsight:2019.2.4
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
-          name: telegraf:2019.2.6
+          name: telegraf:2019.2.7
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
-          name: remote_storage_adapter:${_param:mcp_version}
+          name: remote_storage_adapter:2019.2.6
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
           name: prometheus-relay:2019.2.5
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
-          name: grafana:${_param:mcp_version}
+          name: grafana:2019.2.6
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
-          name: heka:${_param:mcp_version}
+          name: heka:2019.2.6
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
           name: sf_notifier:2019.2.4
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
-          name: gainsight_elasticsearch:${_param:mcp_version}
+          name: gainsight_elasticsearch:2019.2.6
         - registry: ${_param:mcp_docker_registry}/openstack-docker
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/openstack-docker
           name: prometheus-es-exporter:2019.2.6
@@ -173,14 +173,14 @@
           name: cvp-shaker:2019.2.3
         - registry: ${_param:mcp_docker_registry}/mirantis/cvp
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cvp
-          name: cvp-sanity-checks:2019.2.6
+          name: cvp-sanity-checks:2019.2.7
         - registry: ${_param:mcp_docker_registry}/mirantis/external/xrally
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/external/xrally
           name: xrally-openstack:0.11.2
           #
         - registry: ${_param:mcp_docker_registry}/mirantis/cicd
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/cicd
-          name: mysql:${_param:mcp_version}
+          name: mysql:2019.2.6
         - registry: ${_param:mcp_docker_registry}/mirantis/external
           target_registry: ${_param:default_local_mirrror_content:docker_client_registry_target_registry}/mirantis/external
-          name: mongo:${_param:mcp_version}
+          name: mongo:2019.2.6
diff --git a/defaults/linux_system_file.yml b/defaults/linux_system_file.yml
index de7b524..032be7e 100644
--- a/defaults/linux_system_file.yml
+++ b/defaults/linux_system_file.yml
@@ -6,26 +6,26 @@
     default_local_mirrror_content:
       linux_system_file:
         ubuntu-16-04-x64.qcow2:
-          name: /srv/http/images.mirantis.com/ubuntu-16-04-x64-mcp${_param:mcp_version}.qcow2
-          source: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp${_param:mcp_version}.qcow2
-          hash: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp${_param:mcp_version}.qcow2.md5
+          name: /srv/http/images.mirantis.com/ubuntu-16-04-x64-mcp2019.2.0.qcow2
+          source: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp2019.2.0.qcow2
+          hash: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp2019.2.0.qcow2.md5
         ubuntu-16-04-x64.qcow2.md5:
-          name: /srv/http/images.mirantis.com/ubuntu-16-04-x64-mcp${_param:mcp_version}.qcow2.md5
-          source: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp${_param:mcp_version}.qcow2.md5
+          name: /srv/http/images.mirantis.com/ubuntu-16-04-x64-mcp2019.2.0.qcow2.md5
+          source: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp2019.2.0.qcow2.md5
         amphora-x64-haproxy-pike.qcow2:
-          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/pike/amphora-x64-haproxy.qcow2
-          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/${_param:mcp_version}/pike/amphora-x64-haproxy.qcow2
-          hash: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/pike/amphora-x64-haproxy.qcow2.md5
+          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/pike/amphora-x64-haproxy.qcow2
+          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/2019.2.6/pike/amphora-x64-haproxy.qcow2
+          hash: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/pike/amphora-x64-haproxy.qcow2.md5
         amphora-x64-haproxy-pike.qcow2.md5:
-          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/pike/amphora-x64-haproxy.qcow2.md5
-          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/${_param:mcp_version}/pike/amphora-x64-haproxy.qcow2.md5
+          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/pike/amphora-x64-haproxy.qcow2.md5
+          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/2019.2.6/pike/amphora-x64-haproxy.qcow2.md5
         amphora-x64-haproxy-queens.qcow2:
-          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/queens/amphora-x64-haproxy.qcow2
-          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/${_param:mcp_version}/queens/amphora-x64-haproxy.qcow2
-          hash: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/queens/amphora-x64-haproxy.qcow2.md5
+          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/queens/amphora-x64-haproxy.qcow2
+          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/2019.2.6/queens/amphora-x64-haproxy.qcow2
+          hash: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/queens/amphora-x64-haproxy.qcow2.md5
         amphora-x64-haproxy-queens.qcow2.md5:
-          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/queens/amphora-x64-haproxy.qcow2.md5
-          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/${_param:mcp_version}/queens/amphora-x64-haproxy.qcow2.md5
+          source: ${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/queens/amphora-x64-haproxy.qcow2.md5
+          name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/openstack/octavia/images/2019.2.6/queens/amphora-x64-haproxy.qcow2.md5
         cirros-0.4.0-x86_64-disk.img:
           source: ${_param:mcp_binary_registry}/mirantis/external/images/cirros/0.4.0/cirros-0.4.0-x86_64-disk.img
           name: /srv/http/artifactory.mirantis.com/artifactory/binary-prod-local/mirantis/external/images/cirros/0.4.0/cirros-0.4.0-x86_64-disk.img
diff --git a/defaults/openstack/init.yml b/defaults/openstack/init.yml
index c37e551..6049f84 100644
--- a/defaults/openstack/init.yml
+++ b/defaults/openstack/init.yml
@@ -137,6 +137,7 @@
     designate_old_version: ${_param:openstack_old_version}
     designate_version: ${_param:openstack_version}
     designate_upgrade_enabled: ${_param:openstack_upgrade_enabled}
+    designate_export_policy_grains: true
     # Ironic
     mysql_ironic_username: ironic
     keystone_ironic_username: ironic
@@ -227,6 +228,9 @@
     horizon_old_version: ${_param:openstack_old_version}
     horizon_version: ${_param:openstack_version}
     horizon_upgrade_enabled: ${_param:openstack_upgrade_enabled}
+    ## Dashboards
+    horizon_dashboard_designate_file: designate_policy.json
+    horizon_dashboard_designate_grain: designate_policy
     # Octavia
     mysql_octavia_username: octavia
     keystone_octavia_username: octavia
@@ -235,7 +239,7 @@
     octavia_health_manager_node03_address: 192.168.10.12
     #
     amphora_image_name: amphora-x64-haproxy
-    amphora_image_url: "${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/${_param:mcp_version}/${_param:openstack_version}/amphora-x64-haproxy.qcow2"
+    amphora_image_url: "${_param:mcp_binary_registry}/mirantis/openstack/octavia/images/2019.2.6/${_param:openstack_version}/amphora-x64-haproxy.qcow2"
 
     glance_image_cirros_name: 'TestCirros-0.4.0'
     glance_image_cirros_location: "${_param:mcp_binary_registry}/mirantis/external/images/cirros/0.4.0/cirros-0.4.0-x86_64-disk.img"
diff --git a/defaults/salt/init.yml b/defaults/salt/init.yml
index d915fbe..5947dec 100644
--- a/defaults/salt/init.yml
+++ b/defaults/salt/init.yml
@@ -45,8 +45,8 @@
     salt_control_size_image_layout_stacklight_server: ${_param:salt_control_size_image_layout_default}
     salt_control_size_image_layout_stacklight_telemetry: ${_param:salt_control_size_image_layout_default}
 
-    salt_control_trusty_image: ${_param:mcp_static_images_url}/ubuntu-14-04-x64-mcp${_param:mcp_version}.qcow2
-    salt_control_xenial_image: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp${_param:mcp_version}.qcow2
+    salt_control_trusty_image: ${_param:mcp_static_images_url}/ubuntu-14-04-x64-mcp2019.2.0.qcow2
+    salt_control_xenial_image: ${_param:mcp_static_images_url}/ubuntu-16-04-x64-mcp2019.2.0.qcow2
 
     salt_master_api_permissions:
     - '.*'
diff --git a/designate/server/cluster/default.yml b/designate/server/cluster/default.yml
index cd0bc1d..9656bc9 100644
--- a/designate/server/cluster/default.yml
+++ b/designate/server/cluster/default.yml
@@ -26,6 +26,7 @@
       domain_id: ${_param:designate_domain_id}
       version: ${_param:designate_version}
       role: ${_param:openstack_node_role}
+      export_policy_grains: ${_param:designate_export_policy_grains}
       admin_api:
         enabled: ${_param:designate_admin_api_enabled}
         enabled_extensions_admin: quotas
diff --git a/docker/swarm/stack/gerrit.yml b/docker/swarm/stack/gerrit.yml
index ed90acf..d1a5aa7 100644
--- a/docker/swarm/stack/gerrit.yml
+++ b/docker/swarm/stack/gerrit.yml
@@ -51,6 +51,7 @@
                 GERRIT_ADMIN_PWD: ${_param:gerrit_admin_password}
                 GERRIT_ADMIN_EMAIL: ${_param:gerrit_admin_email}
                 CANLOADINIFRAME: "true"
+                IGNORE_VERSIONCHECK: "false"
                 JAVA_OPTIONS: "-Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts ${_param:gerrit_extra_opts}"
                 https_proxy: ${_param:docker_https_proxy}
                 http_proxy: ${_param:docker_http_proxy}
diff --git a/horizon/server/cluster.yml b/horizon/server/cluster.yml
index 837d9b5..c788c92 100644
--- a/horizon/server/cluster.yml
+++ b/horizon/server/cluster.yml
@@ -15,6 +15,8 @@
       branding: ${_param:horizon_site_branding}
       bind:
         port: 8078
+      cache:
+        backend: 'django.core.cache.backends.memcached.MemcachedCache'
       plugin: {}
       session:
         engine: "cache"
diff --git a/horizon/server/plugin/designate.yml b/horizon/server/plugin/designate.yml
new file mode 100644
index 0000000..8fc7833
--- /dev/null
+++ b/horizon/server/plugin/designate.yml
@@ -0,0 +1,16 @@
+parameters:
+  horizon:
+    server:
+      plugin:
+        designate-dashboard:
+          source:
+            engine: pkg
+            name: python-designate-dashboard
+      policy:
+        dns:
+          enabled: true
+          source: 'mine'
+          target_type: 'compound'
+          host: 'I@designate:server:role:primary'
+          grain_name: ${_param:horizon_dashboard_designate_grain}
+          name: ${_param:horizon_dashboard_designate_file}
\ No newline at end of file
diff --git a/horizon/server/single.yml b/horizon/server/single.yml
index 79783cc..92066b9 100644
--- a/horizon/server/single.yml
+++ b/horizon/server/single.yml
@@ -14,6 +14,8 @@
       bind:
         address: ${_param:horizon_server_bind_address}
         port: 8078
+      cache:
+        backend: 'django.core.cache.backends.memcached.MemcachedCache'
       plugin: {}
       session:
         engine: "cache"
diff --git a/jenkins/client/approved_scripts.yml b/jenkins/client/approved_scripts.yml
index eb6a5b8..f425a3f 100644
--- a/jenkins/client/approved_scripts.yml
+++ b/jenkins/client/approved_scripts.yml
@@ -138,6 +138,7 @@
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.String int
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.util.Collection java.lang.String
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.util.List groovy.lang.Range
+        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.util.List java.util.Collection
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.util.regex.Matcher java.util.Collection
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getBytes java.io.File
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getText java.io.InputStream
@@ -149,6 +150,7 @@
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object[]
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods leftShift java.lang.StringBuffer java.lang.Object
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods minus java.lang.String java.lang.Object
+        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods minus java.util.List java.util.Collection
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods multiply java.lang.String java.lang.Number
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Iterable
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Object
diff --git a/jenkins/client/job/ceph/add-osd-upmap.yml b/jenkins/client/job/ceph/add-osd-upmap.yml
index 9e95894..a96a303 100644
--- a/jenkins/client/job/ceph/add-osd-upmap.yml
+++ b/jenkins/client/job/ceph/add-osd-upmap.yml
@@ -30,3 +30,7 @@
               type: string
               description: OSD HOST that will be added to Ceph cluster (rgw04*)
               default: 'osd*'
+            CLUSTER_FLAGS:
+              type: string
+              default: ''
+              description: Flags to be aplied before pipeline and after pipeline (comma-separated list)
diff --git a/jenkins/client/job/deploy/update/update_ceph.yml b/jenkins/client/job/deploy/update/update_ceph.yml
index bb460a5..090b47f 100644
--- a/jenkins/client/job/deploy/update/update_ceph.yml
+++ b/jenkins/client/job/deploy/update/update_ceph.yml
@@ -28,4 +28,8 @@
             SALT_MASTER_CREDENTIALS:
               type: string
               default: "salt"
-              description: Credentials to the Salt API.
\ No newline at end of file
+              description: Credentials to the Salt API.
+            CLUSTER_FLAGS:
+              type: string
+              default: ''
+              description: Flags to be aplied before pipeline and after pipeline (comma-separated list)
diff --git a/jenkins/client/job/deploy/update/update_opencontrail4.yml b/jenkins/client/job/deploy/update/update_opencontrail4.yml
index 98110cb..3487ef4 100644
--- a/jenkins/client/job/deploy/update/update_opencontrail4.yml
+++ b/jenkins/client/job/deploy/update/update_opencontrail4.yml
@@ -43,3 +43,6 @@
               type: string
               default: '1'
               description: Number of selected nodes to live apply compute update.
+            ASK_CONFIRMATION:
+              type: boolean
+              default: 'true'
diff --git a/jenkins/client/job/validate.yml b/jenkins/client/job/validate.yml
index 0fff778..92d369c 100644
--- a/jenkins/client/job/validate.yml
+++ b/jenkins/client/job/validate.yml
@@ -214,7 +214,25 @@
               default: |
                 envs:
                   - tests_set=''
-              description: "YAML context with additional parameters, e.g. skipped_nodes=nal01.local.com,ntw01.local.com or tests_set='tests/test_mtu.py'"
+                override_config:
+                  skipped_nodes: []
+              description: |
+                YAML context with additional parameters. 'envs' key is for environment variables, 'override_config' key is for overriding the global config in YAML format (good for nested parameters). Example:
+                envs:
+                - tests_set='tests/test_mtu.py'
+                override_config:
+                  drivetrain_version: 2019.2.0
+                  skipped_groups:
+                  - log
+                  test_duplicate_ips:
+                    skipped_ifaces:
+                    - lo
+                    - virbr0
+                    - docker_gwbridge
+                    - docker0
+                  test_packages:
+                    skipped_packages: []
+                    skip_test: 'false'
         cvp-func:
           type: workflow-scm
           name: cvp-func
@@ -541,6 +559,10 @@
               type: string
               default: "salt"
               description: Credentials to the Salt API.
+            SLAVE_NODE:
+              type: string
+              default: "slave01"
+              description: Label or name of node to start the Shaker server (should be one of cicd nodes and should have the IP address of SHAKER_SERVER_ENDPOINT).
             SHAKER_PARAMS:
               type: text
               default:  |
@@ -561,8 +583,8 @@
                   #  - SHAKER_EXTERNAL_NET='public'
               description: |
                   YAML context with parameters for running Shaker tests, where
-                  "SHAKER_SERVER_ENDPOINT" - Address for Shaker server connections (host:port). Should be accessible
-                  from tenant's VM network (usually equals to public address of cicd node)
+                  "SHAKER_SERVER_ENDPOINT" - Address for Shaker server connections (host:port). The IP address of SLAVE_NODE with the port. Should be accessible
+                  from tenant's VM network (floating network)
                   "SHAKER_SCENARIOS" - Path to shaker scenarios in the cvp-shaker docker image
                   (can be directory or specific file). Main categories are
                     scenarios/essential/l2
diff --git a/linux/system/single/mcp.yml b/linux/system/single/mcp.yml
index b36ccdb..74afc08 100644
--- a/linux/system/single/mcp.yml
+++ b/linux/system/single/mcp.yml
@@ -14,6 +14,8 @@
           net.ipv4.tcp_keepalive_probes: 8
           fs.file-max: 124165
           net.core.somaxconn: 4096
+          net.core.netdev_budget: 600
+          net.core.netdev_budget_usecs: 5000
           vm.swappiness: 10
           net.nf_conntrack_max: 1048576
           net.ipv4.tcp_retries2: 5
diff --git a/nginx/server/proxy/monitoring/prometheus_alertmanager.yml b/nginx/server/proxy/monitoring/prometheus_alertmanager.yml
index ed7c675..e3c1811 100644
--- a/nginx/server/proxy/monitoring/prometheus_alertmanager.yml
+++ b/nginx/server/proxy/monitoring/prometheus_alertmanager.yml
@@ -1,12 +1,26 @@
 parameters:
+  _param:
+    nginx_proxy_prometheus_alertmanager_user: alertmanager
+    # default password is set for backward compatiblity
+    nginx_proxy_prometheus_alertmanager_password: ${_param:keepalived_prometheus_vip_password}
+    nginx_proxy_prometheus_alertmanager_htpasswd_file: .htpasswd_prometheus_alertmanager
   nginx:
     server:
       enabled: true
+      user:
+        prometheus_alertmanager:
+          enabled: true
+          name: ${_param:nginx_proxy_prometheus_alertmanager_user}
+          password: ${_param:nginx_proxy_prometheus_alertmanager_password}
+          htpasswd: ${_param:nginx_proxy_prometheus_alertmanager_htpasswd_file}
       site:
         nginx_proxy_prometheus_alertmanager:
           enabled: true
           type: nginx_proxy
           name: prometheus_alertmanager
+          auth:
+            engine: basic
+            htpasswd: ${_param:nginx_proxy_prometheus_alertmanager_htpasswd_file}
           proxy:
             host: ${_param:prometheus_control_address}
             port: 15011
diff --git a/nginx/server/proxy/monitoring/prometheus_server.yml b/nginx/server/proxy/monitoring/prometheus_server.yml
index d9eb261..d429be1 100644
--- a/nginx/server/proxy/monitoring/prometheus_server.yml
+++ b/nginx/server/proxy/monitoring/prometheus_server.yml
@@ -1,12 +1,26 @@
 parameters:
+  _param:
+    nginx_proxy_prometheus_server_user: prometheus
+    # default password is set for backward compatiblity
+    nginx_proxy_prometheus_server_password: ${_param:keepalived_prometheus_vip_password}
+    nginx_proxy_prometheus_server_htpasswd_file: .htpasswd_prometheus_server
   nginx:
     server:
       enabled: true
+      user:
+        prometheus_server:
+          enabled: true
+          name: ${_param:nginx_proxy_prometheus_server_user}
+          password: ${_param:nginx_proxy_prometheus_server_password}
+          htpasswd: ${_param:nginx_proxy_prometheus_server_htpasswd_file}
       site:
         nginx_proxy_prometheus_server:
           enabled: true
           type: nginx_proxy
           name: prometheus_server
+          auth:
+            engine: basic
+            htpasswd: ${_param:nginx_proxy_prometheus_server_htpasswd_file}
           proxy:
             host: ${_param:prometheus_control_address}
             port: 15010