Merge "Octavia manager services clusterization"
diff --git a/apache/server/proxy/openstack/aodh.yml b/apache/server/proxy/openstack/aodh.yml
index d8ae2eb..f4f63e5 100644
--- a/apache/server/proxy/openstack/aodh.yml
+++ b/apache/server/proxy/openstack/aodh.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_aodh_host}
             port: 8042
             protocol: http
+            retry: ${_param:apache_proxy_openstack_aodh_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8042
diff --git a/apache/server/proxy/openstack/cinder.yml b/apache/server/proxy/openstack/cinder.yml
index 832c013..3380aea 100644
--- a/apache/server/proxy/openstack/cinder.yml
+++ b/apache/server/proxy/openstack/cinder.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_cinder_host}
             port: 8776
             protocol: http
+            retry: ${_param:apache_proxy_openstack_cinder_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8776
diff --git a/apache/server/proxy/openstack/designate.yml b/apache/server/proxy/openstack/designate.yml
index c39c9a4..49a6744 100644
--- a/apache/server/proxy/openstack/designate.yml
+++ b/apache/server/proxy/openstack/designate.yml
@@ -22,6 +22,7 @@
             host: ${_param:apache_proxy_openstack_designate_host}
             port: 9001
             protocol: http
+            retry: ${_param:apache_proxy_openstack_designate_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 9001
diff --git a/apache/server/proxy/openstack/glance.yml b/apache/server/proxy/openstack/glance.yml
index f983ab4..0643804 100644
--- a/apache/server/proxy/openstack/glance.yml
+++ b/apache/server/proxy/openstack/glance.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_glance_host}
             port: 9292
             protocol: http
+            retry: ${_param:apache_proxy_openstack_glance_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 9292
diff --git a/apache/server/proxy/openstack/heat.yml b/apache/server/proxy/openstack/heat.yml
index f3aab22..d8f222a 100644
--- a/apache/server/proxy/openstack/heat.yml
+++ b/apache/server/proxy/openstack/heat.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_heat_host}
             port: 8004
             protocol: http
+            retry: ${_param:apache_proxy_openstack_heat_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8004
@@ -32,6 +33,7 @@
             host: ${_param:apache_proxy_openstack_heat_host}
             port: 8000
             protocol: http
+            retry: ${_param:apache_proxy_openstack_heat_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8000
@@ -46,6 +48,7 @@
             host: ${_param:apache_proxy_openstack_heat_host}
             port: 8003
             protocol: http
+            retry: ${_param:apache_proxy_openstack_heat_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8003
diff --git a/apache/server/proxy/openstack/ironic.yml b/apache/server/proxy/openstack/ironic.yml
index b6abf0f..eea09e7 100644
--- a/apache/server/proxy/openstack/ironic.yml
+++ b/apache/server/proxy/openstack/ironic.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_ironic_host}
             port: 6385
             protocol: http
+            retry: ${_param:apache_proxy_openstack_ironic_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 6385
diff --git a/apache/server/proxy/openstack/neutron.yml b/apache/server/proxy/openstack/neutron.yml
index 1ed5726..ebef0d8 100644
--- a/apache/server/proxy/openstack/neutron.yml
+++ b/apache/server/proxy/openstack/neutron.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_neutron_host}
             port: 9696
             protocol: http
+            retry: ${_param:apache_proxy_openstack_neutron_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 9696
diff --git a/apache/server/proxy/openstack/nova.yml b/apache/server/proxy/openstack/nova.yml
index 610c6d5..c5ae5d1 100644
--- a/apache/server/proxy/openstack/nova.yml
+++ b/apache/server/proxy/openstack/nova.yml
@@ -18,6 +18,7 @@
             host: ${_param:apache_proxy_openstack_nova_host}
             port: 8774
             protocol: http
+            retry: ${_param:apache_proxy_openstack_nova_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8774
diff --git a/apache/server/proxy/openstack/placement.yml b/apache/server/proxy/openstack/placement.yml
index 6030740..9becf3f 100644
--- a/apache/server/proxy/openstack/placement.yml
+++ b/apache/server/proxy/openstack/placement.yml
@@ -19,6 +19,7 @@
             host: ${_param:apache_proxy_openstack_placement_host}
             port: 8778
             protocol: http
+            retry: ${_param:apache_proxy_openstack_placement_retry}
           host:
             name: ${_param:apache_proxy_openstack_api_host}
             port: 8778
diff --git a/ceph/osd/cluster.yml b/ceph/osd/cluster.yml
index 31fa050..64f1000 100644
--- a/ceph/osd/cluster.yml
+++ b/ceph/osd/cluster.yml
@@ -5,4 +5,4 @@
     system:
       kernel:
         sysctl:
-          fs.aio-max-nr: 131072
+          fs.aio-max-nr: 1048576
diff --git a/defaults/gerrit/init.yml b/defaults/gerrit/init.yml
index 7fbdd67..b2c59e0 100644
--- a/defaults/gerrit/init.yml
+++ b/defaults/gerrit/init.yml
@@ -2,5 +2,5 @@
   _param:
     gerrit_pipeline_library_repo: https://github.com/Mirantis/pipeline-library
     gerrit_mk_pipelines_repo: https://github.com/Mirantis/mk-pipelines
-    gerrit_decapod_pipelines_repo: https://github.com/mateuszlos/decapod-pipelines
-    gerrit_mcp_common_scripts_repo: https://github.com/Mirantis/mcp-common-scripts
\ No newline at end of file
+    gerrit_mcp_common_scripts_repo: https://github.com/Mirantis/mcp-common-scripts
+
diff --git a/defaults/openstack/init.yml b/defaults/openstack/init.yml
index 2619563..d08d2f1 100644
--- a/defaults/openstack/init.yml
+++ b/defaults/openstack/init.yml
@@ -101,6 +101,21 @@
     apache_mods_status_host_address: '127.0.0.1'
     apache_mods_status_host_port: 80
     apache_horizon_listen_address: '0.0.0.0'
+    # Apache proxies for openstack aren't used as HA proxies, they are
+    # simply ssl terminators in case of setup of ssl on internal endpoints
+    # for services which don't support running under apache and wsgi.
+    # So retry parameter is set 0, to eliminate maintenance mode for backend
+    # which is 60 seconds  by default.
+    apache_proxy_openstack_api_retry: 0
+    apache_proxy_openstack_cinder_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_designate_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_glance_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_heat_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_ironic_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_nova_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_neutron_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_aodh_retry: ${_param:apache_proxy_openstack_api_retry}
+    apache_proxy_openstack_placement_retry: ${_param:apache_proxy_openstack_api_retry}
     # Horizon
     # 'direct' mode will require cors on glance side to be enabled.
     horizon_images_upload_mode: 'direct'
diff --git a/docker/swarm/stack/jenkins/master.yml b/docker/swarm/stack/jenkins/master.yml
index 45c952f..384ee9f 100644
--- a/docker/swarm/stack/jenkins/master.yml
+++ b/docker/swarm/stack/jenkins/master.yml
@@ -14,7 +14,7 @@
             master:
               environment:
                 JENKINS_HOME: ${_param:jenkins_home_dir_path}
-                JAVA_OPTS: " -server -XX:+AlwaysPreTouch -Xloggc:${_param:jenkins_home_dir_path}/gc-%t.log -XX:NumberOfGCLogFiles=5 -XX:+UseGCLogFileRotation -XX:GCLogFileSize=20m -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+PrintHeapAtGC -XX:+PrintGCCause -XX:+PrintTenuringDistribution -XX:+PrintReferenceGC -XX:+PrintAdaptiveSizePolicy -XX:+UseG1GC -XX:+ExplicitGCInvokesConcurrent -XX:+ParallelRefProcEnabled -XX:+UseStringDeduplication -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=20 -XX:+UnlockDiagnosticVMOptions -XX:G1SummarizeRSetStatsPeriod=1 -Djenkins.install.runSetupWizard=false -Dhudson.DNSMultiCast.disabled=true -Dhudson.udp=-1 -Dhudson.footerURL=https://www.mirantis.com ${_param:jenkins_master_extra_opts}"
+                JAVA_OPTS: " -server -XX:+AlwaysPreTouch -Xloggc:${_param:jenkins_home_dir_path}/gc-%t.log -XX:NumberOfGCLogFiles=5 -XX:+UseGCLogFileRotation -XX:GCLogFileSize=20m -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+PrintHeapAtGC -XX:+PrintGCCause -XX:+PrintTenuringDistribution -XX:+PrintReferenceGC -XX:+PrintAdaptiveSizePolicy -XX:+UseG1GC -XX:+ExplicitGCInvokesConcurrent -XX:+ParallelRefProcEnabled -XX:+UseStringDeduplication -XX:+UnlockExperimentalVMOptions -XX:G1NewSizePercent=20 -XX:+UseCGroupMemoryLimitForHeap -XX:+UnlockDiagnosticVMOptions -XX:G1SummarizeRSetStatsPeriod=1 -Djenkins.install.runSetupWizard=false -Dhudson.DNSMultiCast.disabled=true -Dhudson.udp=-1 -Dhudson.footerURL=https://www.mirantis.com ${_param:jenkins_master_extra_opts}"
                 JENKINS_NUM_EXECUTORS: ${_param:jenkins_master_executors_num}
                 JENKINS_OPTS: " --handlerCountMax=${_param:jenkins_master_max_concurent_requests}"
                 https_proxy: ${_param:docker_https_proxy}
diff --git a/gerrit/client/project/ci.yml b/gerrit/client/project/ci.yml
index e0c7112..c3eddd9 100644
--- a/gerrit/client/project/ci.yml
+++ b/gerrit/client/project/ci.yml
@@ -18,11 +18,3 @@
           require_change_id: true
           require_agreement: false
           merge_content: true
-        mk/decapod-pipelines:
-          enabled: true
-          description: Decapod jenkins pipelines
-          upstream: ${_param:gerrit_decapod_pipelines_repo}
-          access: ${gerrit:client:default_access}
-          require_change_id: true
-          require_agreement: false
-          merge_content: true
diff --git a/glance/control/single.yml b/glance/control/single.yml
index 694c395..ee2ae1a 100644
--- a/glance/control/single.yml
+++ b/glance/control/single.yml
@@ -48,3 +48,5 @@
           enabled: ${_param:glance_memcache_security_enabled}
           strategy: ${_param:openstack_memcache_security_strategy}
           secret_key: ${_param:glance_memcache_secret_key}
+      cors:
+        allowed_origin: ${_param:glance_cors_allowed_origin}
diff --git a/jenkins/client/job/deploy/update/upgrade_mcp_release.yml b/jenkins/client/job/deploy/update/upgrade_mcp_release.yml
index 6e2ebdf..577e6ac 100644
--- a/jenkins/client/job/deploy/update/upgrade_mcp_release.yml
+++ b/jenkins/client/job/deploy/update/upgrade_mcp_release.yml
@@ -26,12 +26,6 @@
             branch: FETCH_HEAD
             wipe_workspace: True
           param:
-            SALT_MASTER_URL:
-              type: string
-              default: "${_param:jenkins_salt_api_url}"
-            SALT_MASTER_CREDENTIALS:
-              type: string
-              default: "salt"
             MK_PIPELINES_REFSPEC:
               type: string
               default: ""
@@ -40,24 +34,28 @@
               type: string
               default: ""
               description: "Target version of mcp, aka mcp_version"
-            UPDATE_CLUSTER_MODEL:
-              type: boolean
-              default: 'true'
-              description: "Replace `mcp_version` parameter to TARGET_MCP_VERSION in cluster level Reclass model?"
-            UPGRADE_SALTSTACK:
-              type: boolean
-              default: 'true'
-              description: "Upgrade SaltStack packages."
-            UPDATE_PIPELINES:
-              type: boolean
-              default: 'true'
-              description: "Mirror pipelines from upstream/local mirror to Gerrit."
-            UPDATE_LOCAL_REPOS:
-              type: boolean
-              default: 'false'
-              description: "Use only when local repositories are present."
+            GIT_REFSPEC:
+              type: string
+              default: ""
+              description: "Version of git repos to be used, should be release/TARGET_MCP_VERSION"
+            DRIVE_TRAIN_PARAMS:
+              type: text
+              description: "Yaml based DriveTrain releated params"
+              default: |
+                ---
+                SALT_MASTER_URL: "${_param:jenkins_salt_api_url}"
+                SALT_MASTER_CREDENTIALS: "salt"
+                # Replace `mcp_version` parameter to TARGET_MCP_VERSION in cluster level Reclass model?
+                UPDATE_CLUSTER_MODEL: true
+                # Upgrade SaltStack packages
+                UPGRADE_SALTSTACK: true
+                # Mirror pipelines from upstream/local mirror to Gerrit
+                UPDATE_PIPELINES: true
+                # se only when local repositories are present
+                UPDATE_LOCAL_REPOS: false
+                # Next parameters added only for test purposes and not enabled by default
+                # RECLASS_SYSTEM_BRANCH: ''
             PIPELINE_TIMEOUT:
               type: string
               default: '12'
               description: "Sets pipeline timeout in hours. Defaults to '12' if left empty."
-