Merge "Add debmirror"
diff --git a/.releasenotes/notes/proxy-prometheus-b48f1787735ae9d9.yaml b/.releasenotes/notes/proxy-prometheus-b48f1787735ae9d9.yaml
new file mode 100644
index 0000000..2dc0994
--- /dev/null
+++ b/.releasenotes/notes/proxy-prometheus-b48f1787735ae9d9.yaml
@@ -0,0 +1,10 @@
+---
+
+summary: >
+  Fixed the :guilabel:`Heatmaps` page in the DevOps Portal
+
+fixes:
+  - Fixed the issue with the DevOps Portal :guilabel:`Heatmaps` page
+    that was not available due to the disabled proxy for the
+    ``stacklight-prometeus`` endpoint and due to wrong
+    Prometheus URL configuration.
\ No newline at end of file
diff --git a/apache/server/site/manila.yml b/apache/server/site/manila.yml
new file mode 100644
index 0000000..2e32e00
--- /dev/null
+++ b/apache/server/site/manila.yml
@@ -0,0 +1,43 @@
+parameters:
+  _param:
+    apache_manila_ssl:
+      enabled: false
+    apache_manila_api_address: 0.0.0.0
+    apache_manila_api_host: ${linux:network:fqdn}
+  manila:
+    server:
+      service_name: apache2
+  apache:
+    server:
+      enabled: true
+      default_mpm: event
+      site:
+        manila:
+          enabled: false
+          available: true
+          type: wsgi
+          name: manila
+          wsgi:
+            daemon_process: manila-api
+            threads: 2
+            user: manila
+            group: manila
+            display_name: '%{GROUP}'
+            script_alias: '/ /usr/bin/manila-wsgi'
+            application_group: '%{GLOBAL}'
+            authorization: 'On'
+          limits:
+            request_body: 114688
+          host:
+            address: ${_param:apache_manila_api_address}
+            name: ${_param:apache_manila_api_host}
+            port: 8786
+          log:
+            custom:
+              format: >-
+                %v:%p %{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %D %O \"%{Referer}i\" \"%{User-Agent}i\"
+            error:
+              enabled: true
+              level: debug
+              format: '%M'
+              file: '/var/log/manila/manila-api.log'
diff --git a/galera/server/database/manila.yml b/galera/server/database/manila.yml
new file mode 100644
index 0000000..3339b83
--- /dev/null
+++ b/galera/server/database/manila.yml
@@ -0,0 +1,15 @@
+parameters:
+  mysql:
+    server:
+      database:
+        manila:
+          encoding: utf8
+          users:
+          - name: manila
+            password: ${_param:mysql_manila_password}
+            host: '%'
+            rights: all
+          - name: manila
+            password: ${_param:mysql_manila_password}
+            host: ${_param:cluster_local_address}
+            rights: all
diff --git a/haproxy/proxy/listen/openstack/manila.yml b/haproxy/proxy/listen/openstack/manila.yml
new file mode 100644
index 0000000..a28f365
--- /dev/null
+++ b/haproxy/proxy/listen/openstack/manila.yml
@@ -0,0 +1,23 @@
+parameters:
+  haproxy:
+    proxy:
+      listen:
+        manila_api:
+          type: openstack-service
+          service_name: manila
+          binds:
+          - address: ${_param:cluster_vip_address}
+            port: 8786
+          servers:
+          - name: ${_param:cluster_node01_hostname}
+            host: ${_param:cluster_node01_address}
+            port: 8786
+            params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+          - name: ${_param:cluster_node02_hostname}
+            host: ${_param:cluster_node02_address}
+            port: 8786
+            params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+          - name: ${_param:cluster_node03_hostname}
+            host: ${_param:cluster_node03_address}
+            port: 8786
+            params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
diff --git a/horizon/server/plugin/manila.yml b/horizon/server/plugin/manila.yml
new file mode 100644
index 0000000..53ad9b6
--- /dev/null
+++ b/horizon/server/plugin/manila.yml
@@ -0,0 +1,8 @@
+parameters:
+  horizon:
+    server:
+      plugin:
+        manila:
+          source:
+            engine: pkg
+            name: python-manila-ui
diff --git a/jenkins/client/job/debian/packages/salt.yml b/jenkins/client/job/debian/packages/salt.yml
index 82135f4..6089195 100644
--- a/jenkins/client/job/debian/packages/salt.yml
+++ b/jenkins/client/job/debian/packages/salt.yml
@@ -260,9 +260,6 @@
             - name: prometheus
               upload_source_package: false
               dist: trusty
-            - name: pv
-              upload_source_package: false
-              dist: trusty
             - name: python
               upload_source_package: false
               dist: trusty
@@ -605,9 +602,6 @@
             - name: powerdns
               upload_source_package: true
               dist: xenial
-            - name: pv
-              upload_source_package: true
-              dist: xenial
             - name: python
               upload_source_package: true
               dist: xenial
diff --git a/jenkins/client/job/deploy/lab/cleanup.yml b/jenkins/client/job/deploy/lab/cleanup.yml
index 286d091..6ecaeee 100644
--- a/jenkins/client/job/deploy/lab/cleanup.yml
+++ b/jenkins/client/job/deploy/lab/cleanup.yml
@@ -36,7 +36,7 @@
               default: "openstack-devcloud-credentials"
             OPENSTACK_API_PROJECT:
               type: string
-              default: "mcp-k8s, mcp-maintenance, mcp-mk, mcp-networking, mcp-opencontrail, mcp-oss, mcp-platform, mcp-scale, mcp-stacklight, mcp-support"
+              default: "mcp-mk"
             OPENSTACK_API_CLIENT:
               type: string
               default: ""
@@ -87,7 +87,7 @@
               default: "openstack-devcloud-credentials"
             OPENSTACK_API_PROJECT:
               type: string
-              default: "mcp-mk"
+              default: "mcp-k8s, mcp-maintenance, mcp-mk, mcp-networking, mcp-opencontrail, mcp-oss, mcp-platform,  mcp-scale, mcp-stacklight, mcp-support"
             OPENSTACK_API_CLIENT:
               type: string
               default: ""
diff --git a/jenkins/client/job/deploy/lab/release/mcp11.yml b/jenkins/client/job/deploy/lab/release/mcp11.yml
index 480faa1..731507c 100644
--- a/jenkins/client/job/deploy/lab/release/mcp11.yml
+++ b/jenkins/client/job/deploy/lab/release/mcp11.yml
@@ -27,6 +27,12 @@
         stack_type: heat
         stack_test: ""
         job_timer: ""
+      - stack_name: virtual_mcp11_ironic_ssl_small
+        stack_env: devcloud
+        stack_install: core,openstack
+        stack_type: heat
+        stack_test: ""
+        job_timer: ""
       - stack_name: virtual_mcp11_aio_manila
         stack_env: devcloud
         stack_install: core,openstack,ovs
diff --git a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
index 728f8b8..bbb7209 100644
--- a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
+++ b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
@@ -9,6 +9,7 @@
           jobs:
             - name: aide
               branches: ${_param:salt_formulas_branches}
+              notification_recipients: ${_param:salt_formulas_notification_recipients}
             - name: aodh
               branches: ${_param:salt_formulas_branches}
               notification_recipients: ${_param:salt_formulas_notification_recipients}
@@ -297,9 +298,6 @@
             - name: prometheus
               branches: ${_param:salt_formulas_branches}
               notification_recipients: ${_param:salt_formulas_notification_recipients}
-            - name: pv
-              branches: ${_param:salt_formulas_branches}
-              notification_recipients: ${_param:salt_formulas_notification_recipients}
             - name: python
               branches: ${_param:salt_formulas_branches}
               notification_recipients: ${_param:salt_formulas_notification_recipients}
diff --git a/jenkins/client/job/salt-formulas/tests.yml b/jenkins/client/job/salt-formulas/tests.yml
index 2f6e807..5727216 100644
--- a/jenkins/client/job/salt-formulas/tests.yml
+++ b/jenkins/client/job/salt-formulas/tests.yml
@@ -103,7 +103,6 @@
             - name: powerdns
             - name: pritunl
             - name: prometheus
-            - name: pv
             - name: python
             - name: rabbitmq
             - name: reclass
diff --git a/keystone/client/service/manila.yml b/keystone/client/service/manila.yml
new file mode 100644
index 0000000..07e88b2
--- /dev/null
+++ b/keystone/client/service/manila.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    manila_service_protocol: http
+  keystone:
+    client:
+      server:
+        identity:
+          project:
+            service:
+              user:
+                manila:
+                  is_admin: true
+                  password: ${_param:keystone_manila_password}
+                  email: ${_param:admin_email}
+          service:
+            manila:
+              type: share
+              description: OpenStack Shared File Systems V1
+              endpoints:
+              - region: ${_param:openstack_region}
+                public_address: ${_param:cluster_public_host}
+                public_protocol: ${_param:cluster_public_protocol}
+                public_port: 8786
+                public_path: '/v1/$(tenant_id)s'
+                internal_address: ${_param:manila_service_host}
+                internal_port: 8786
+                internal_path: '/v1/$(tenant_id)s'
+                internal_protocol: ${_param:manila_service_protocol}
+                admin_protocol: ${_param:manila_service_protocol}
+                admin_address: ${_param:manila_service_host}
+                admin_port: 8786
+                admin_path: '/v1/$(tenant_id)s'
diff --git a/keystone/client/service/manila2.yml b/keystone/client/service/manila2.yml
new file mode 100644
index 0000000..1a3a125
--- /dev/null
+++ b/keystone/client/service/manila2.yml
@@ -0,0 +1,33 @@
+parameters:
+  _param:
+    cluster_public_protocol: https
+    manila_service_protocol: http
+  keystone:
+    client:
+      server:
+        identity:
+          project:
+            service:
+              user:
+                manila:
+                  is_admin: true
+                  password: ${_param:keystone_manila_password}
+                  email: ${_param:admin_email}
+          service:
+            manilav2:
+              type: sharev2
+              description: OpenStack Shared File Systems V2
+              endpoints:
+              - region: ${_param:openstack_region}
+                public_address: ${_param:cluster_public_host}
+                public_protocol: ${_param:cluster_public_protocol}
+                public_port: 8786
+                public_path: '/v2/$(tenant_id)s'
+                internal_address: ${_param:manila_service_host}
+                internal_port: 8786
+                internal_path: '/v2/$(tenant_id)s'
+                internal_protocol: ${_param:manila_service_protocol}
+                admin_protocol: ${_param:manila_service_protocol}
+                admin_address: ${_param:manila_service_host}
+                admin_port: 8786
+                admin_path: '/v2/$(tenant_id)s'
diff --git a/linux/storage/loopback_manila.yml b/linux/storage/loopback_manila.yml
new file mode 100644
index 0000000..6a9986c
--- /dev/null
+++ b/linux/storage/loopback_manila.yml
@@ -0,0 +1,8 @@
+parameters:
+  linux:
+    storage:
+      enabled: true
+      loopback:
+        loop1:
+          file: "/srv/disk1"
+          size: ${_param:loopback_device1_size}G
diff --git a/manila/common/cluster.yml b/manila/common/cluster.yml
new file mode 100644
index 0000000..8763903
--- /dev/null
+++ b/manila/common/cluster.yml
@@ -0,0 +1,34 @@
+classes:
+ - service.manila.common.cluster
+ - service.haproxy.proxy.single
+ - system.haproxy.proxy.listen.openstack.manila
+parameters:
+  manila:
+    common:
+      version: ${_param:openstack_version}
+      message_queue:
+        engine: rabbitmq
+        port: 5672
+        user: openstack
+        password: ${_param:rabbitmq_openstack_password}
+        virtual_host: '/openstack'
+        host: ${_param:openstack_message_queue_address}
+      database:
+        engine: mysql
+        host: ${_param:openstack_database_address}
+        port: 3306
+        name: manila
+        user: manila
+        password: ${_param:mysql_manila_password}
+      identity:
+        engine: keystone
+        region: RegionOne
+        host: ${_param:cluster_vip_address}
+        port: 35357
+        user: manila
+        password: ${_param:keystone_manila_password}
+        tenant: service
+        auth_type: password
+        user_domain_id: default
+        project_domain_id: default
+        protocol: 'http'
diff --git a/manila/common/single.yml b/manila/common/single.yml
new file mode 100644
index 0000000..362338f
--- /dev/null
+++ b/manila/common/single.yml
@@ -0,0 +1,32 @@
+classes:
+ - service.manila.common.single
+parameters:
+  manila:
+    common:
+      version: ${_param:openstack_version}
+      message_queue:
+        engine: rabbitmq
+        port: 5672
+        user: openstack
+        password: ${_param:rabbitmq_openstack_password}
+        virtual_host: '/openstack'
+        host: ${_param:single_address}
+      database:
+        engine: mysql
+        host: ${_param:single_address}
+        port: 3306
+        name: manila
+        user: manila
+        password: ${_param:mysql_manila_password}
+      identity:
+        engine: keystone
+        region: RegionOne
+        host: ${_param:single_address}
+        port: 35357
+        user: manila
+        password: ${_param:keystone_manila_password}
+        tenant: service
+        auth_type: password
+        user_domain_id: default
+        project_domain_id: default
+        protocol: 'http'
diff --git a/manila/share/backend/lvm.yml b/manila/share/backend/lvm.yml
new file mode 100644
index 0000000..488de4d
--- /dev/null
+++ b/manila/share/backend/lvm.yml
@@ -0,0 +1,20 @@
+parameters:
+  linux:
+    storage:
+      lvm:
+        manila-vg:
+          enabled: true
+          name: manila-volume
+          devices: ${_param:manila_lvm_devices}
+  manila:
+    share:
+      enabled_share_backends:
+        lvm:
+          name: lvm
+          type: lvm
+          enabled: true
+          lvm_share_export_ips:
+            - "${_param:single_address}"
+          dhss: false
+          share_driver: manila.share.drivers.lvm.LVMShareDriver
+          lvm_share_volume_group: manila-volume
diff --git a/neutron/client/service/manila.yml b/neutron/client/service/manila.yml
new file mode 100644
index 0000000..cdbc7bb
--- /dev/null
+++ b/neutron/client/service/manila.yml
@@ -0,0 +1,21 @@
+classes:
+- service.neutron.client
+parameters:
+  neutron:
+    client:
+      server:
+        admin_identity:
+          endpoint_type: internalURL
+          network:
+            manila-share-network:
+              tenant: admin
+              shared: false
+              admin_state_up: True
+              port_security_enabled: false
+              subnet:
+                manila-share-subnet:
+                  cidr: ${_param:openstack_manila_share_neutron_subnet_cidr}
+                  allocation_pools:
+                    - start: ${_param:openstack_manila_share_neutron_subnet_allocation_start}
+                      end: ${_param:openstack_manila_share_neutron_subnet_allocation_end}
+                  enable_dhcp: true
diff --git a/nginx/server/proxy/openstack/manila.yml b/nginx/server/proxy/openstack/manila.yml
new file mode 100644
index 0000000..050d0de
--- /dev/null
+++ b/nginx/server/proxy/openstack/manila.yml
@@ -0,0 +1,22 @@
+parameters:
+  _param:
+    nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+    nginx_proxy_openstack_api_address: 0.0.0.0
+    nginx_proxy_openstack_manila_host: ${_param:manila_service_host}
+  nginx:
+    server:
+      enabled: true
+      site:
+        nginx_proxy_openstack_api_manila:
+          enabled: true
+          type: nginx_proxy
+          name: openstack_api_manila
+          proxy:
+            host: ${_param:nginx_proxy_openstack_manila_host}
+            port: 8786
+            protocol: http
+          host:
+            name: ${_param:nginx_proxy_openstack_api_host}
+            port: 8786
+            address: ${_param:nginx_proxy_openstack_api_address}
+          ssl: ${_param:nginx_proxy_ssl}