Merge "Add cvp-stacklight job description"
diff --git a/.releasenotes/notes/fluentd_internal_log_rotate_size-7b2b6172650984be.yaml b/.releasenotes/notes/fluentd_internal_log_rotate_size-7b2b6172650984be.yaml
new file mode 100644
index 0000000..e4b1c18
--- /dev/null
+++ b/.releasenotes/notes/fluentd_internal_log_rotate_size-7b2b6172650984be.yaml
@@ -0,0 +1,39 @@
+---
+# Author the following sections or remove the section if it is not related.
+# Use one release note per a feature.
+#
+# If you miss a section from the list below, please first submit a review
+# adding it to .releasenotes/config.yaml.
+#
+# Format content with reStructuredText (RST).
+# **Formatting examples:**
+# - |
+# This is a brief description of the feature. It may include a
+# number of components:
+#
+# * List item 1
+# * List item 2.
+# This code block below will appear as part of the list item 2:
+#
+# .. code-block:: yaml
+#
+# classes:
+# - system.class.to.load
+#
+# The code block below will appear on the same level as the feature
+# description:
+#
+# .. code-block:: text
+#
+# provide model/formula pillar snippets
+
+
+summary: >
+ Added the ``td_agent_log_rotate_size`` parameter to Fluentd
+
+features:
+ - |
+ Added the capability to specify the log rotation size for Fluentd
+ ``td-agent`` using the ``td_agent_log_rotate_size`` parameter. This prevents a
+ single log file from taking too much disk space. This parameter is set to
+ 10 MB by default.
diff --git a/.releasenotes/notes/parametric-telemetry-hostnames-06e14467d9a9077d.yaml b/.releasenotes/notes/parametric-telemetry-hostnames-06e14467d9a9077d.yaml
new file mode 100644
index 0000000..e75d549
--- /dev/null
+++ b/.releasenotes/notes/parametric-telemetry-hostnames-06e14467d9a9077d.yaml
@@ -0,0 +1,15 @@
+---
+upgrades:
+ - mongodb.server.cluster no longer hardcodes the telemetry nodes' hostnames
+ in favor of using `openstack_telemetry_node{01,02,03}_hostname` params,
+ allowing custom hostnames to be used.
+
+ Configuration example:
+
+ .. code-block:: yaml
+
+ parameters:
+ _param:
+ openstack_telemetry_node01_hostname: mdb01
+ openstack_telemetry_node02_hostname: mdb02
+ openstack_telemetry_node03_hostname: mdb03
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/.releasenotes/notes/smtp_tls-907be4451c86b669.yaml b/.releasenotes/notes/smtp_tls-907be4451c86b669.yaml
new file mode 100644
index 0000000..3e79c8f
--- /dev/null
+++ b/.releasenotes/notes/smtp_tls-907be4451c86b669.yaml
@@ -0,0 +1,18 @@
+---
+summary: >
+ Additional option for push notification service to work with SMTP server
+
+features:
+ - Earlier the push notification service considered SMTP server working only under TLS.
+ In case of custom SMPT servers which use non-TLS connection the push notification service is
+ not working properly. This patch added the explicit definition of TLS using.
+ To define this parameter you need to set 'pushkin_smtp_use_tls' variable on cluster level metadata.
+
+ Example:
+ .. code-block:: yaml
+ parameters:
+ _param:
+ pushkin_smtp_use_tls: true
+
+fixes:
+ - related US: https://mirantis.jira.com/browse/PROD-14976
diff --git a/README.rst b/README.rst
index b418f37..231e9a9 100644
--- a/README.rst
+++ b/README.rst
@@ -25,14 +25,14 @@
Name of the Physical Function interface (pF)
`sriov_nic01_numvfs`
- Number of Virtual Functions (VF), for number of
+ Number of Virtual Functions (VF), for number of
supported VF check documentation for your network interface card.
`sriov_nic01_physical_network`
Default **physnet1**, label for physical network the interface belongs to.
`sriov_unsafe_interrupts`
- Default **False**, needs to be set **True** if your hw platform does not
+ Default **False**, needs to be set **True** if your hw platform does not
support interrupt remapping.
@@ -112,7 +112,7 @@
- grafana_prometheus_port
- grafana_prometheus_is_default (default true)
-Backwark compatiblity
+Backward compatiblity
---------------------
The class **grafana.client.single** configures grafana client and an InfluxDB
diff --git a/apache/server/proxy/openstack/cinder.yml b/apache/server/proxy/openstack/cinder.yml
new file mode 100644
index 0000000..8b3fb4f
--- /dev/null
+++ b/apache/server/proxy/openstack/cinder.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_cinder_host: ${_param:cinder_service_host}
+ apache:
+ server:
+ site:
+ apache_proxy_openstack_api_cinder:
+ enabled: true
+ type: proxy
+ name: openstack_api_cinder
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_cinder_host}
+ port: 8776
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 8776
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/designate.yml b/apache/server/proxy/openstack/designate.yml
new file mode 100644
index 0000000..b681cf7
--- /dev/null
+++ b/apache/server/proxy/openstack/designate.yml
@@ -0,0 +1,28 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_designate_host: ${_param:designate_service_host}
+ apache:
+ server:
+ modules:
+ - proxy
+ - proxy_http
+ - headers
+ enabled: true
+ site:
+ apache_proxy_openstack_api_designate:
+ enabled: true
+ type: proxy
+ name: openstack_api_designate
+ proxy:
+ host: ${_param:apache_proxy_openstack_designate_host}
+ port: 9001
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 9001
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/glance.yml b/apache/server/proxy/openstack/glance.yml
new file mode 100644
index 0000000..91bedea
--- /dev/null
+++ b/apache/server/proxy/openstack/glance.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_glance_host: ${_param:glance_service_host}
+ apache:
+ server:
+ enabled: true
+ site:
+ apache_proxy_openstack_api_glance:
+ enabled: true
+ type: proxy
+ name: openstack_api_glance
+ proxy:
+ host: ${_param:apache_proxy_openstack_glance_host}
+ port: 9292
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 9292
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/heat.yml b/apache/server/proxy/openstack/heat.yml
new file mode 100644
index 0000000..b844c45
--- /dev/null
+++ b/apache/server/proxy/openstack/heat.yml
@@ -0,0 +1,52 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_heat_host: ${_param:heat_service_host}
+ apache:
+ server:
+ site:
+ apache_proxy_openstack_api_heat:
+ enabled: true
+ type: proxy
+ name: openstack_api_heat
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_heat_host}
+ port: 8004
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 8004
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
+ apache_proxy_openstack_api_heat_cfn:
+ enabled: true
+ type: proxy
+ name: openstack_api_heat_cfn
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_heat_host}
+ port: 8000
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 8000
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
+ apache_proxy_openstack_api_heat_cloudwatch:
+ enabled: true
+ type: proxy
+ name: openstack_api_heat_cloudwatch
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_heat_host}
+ port: 8003
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 8003
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/ironic.yml b/apache/server/proxy/openstack/ironic.yml
new file mode 100644
index 0000000..d6bd7d3
--- /dev/null
+++ b/apache/server/proxy/openstack/ironic.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_ironic_host: ${_param:ironic_service_host}
+ apache:
+ server:
+ site:
+ apache_proxy_openstack_api_ironic:
+ enabled: true
+ type: proxy
+ name: openstack_api_ironic
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_ironic_host}
+ port: 6385
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 6385
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/neutron.yml b/apache/server/proxy/openstack/neutron.yml
new file mode 100644
index 0000000..dd18c40
--- /dev/null
+++ b/apache/server/proxy/openstack/neutron.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_neutron_host: ${_param:neutron_service_host}
+ apache:
+ server:
+ site:
+ apache_proxy_openstack_api_neutron:
+ enabled: true
+ type: proxy
+ name: openstack_api_neutron
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_neutron_host}
+ port: 9696
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 9696
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/nova.yml b/apache/server/proxy/openstack/nova.yml
new file mode 100644
index 0000000..66a0107
--- /dev/null
+++ b/apache/server/proxy/openstack/nova.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_nova_host: ${_param:nova_service_host}
+ apache:
+ server:
+ site:
+ apache_proxy_openstack_api_nova:
+ enabled: true
+ type: proxy
+ name: openstack_api_nova
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_nova_host}
+ port: 8774
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 8774
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/proxy/openstack/placement.yml b/apache/server/proxy/openstack/placement.yml
new file mode 100644
index 0000000..9e256b2
--- /dev/null
+++ b/apache/server/proxy/openstack/placement.yml
@@ -0,0 +1,25 @@
+parameters:
+ _param:
+ apache_proxy_ssl:
+ enabled: false
+ placement_service_host: ${_param:nova_service_host}
+ apache_proxy_openstack_api_host: ${_param:cluster_public_host}
+ apache_proxy_openstack_api_address: 0.0.0.0
+ apache_proxy_openstack_placement_host: ${_param:placement_service_host}
+ apache:
+ server:
+ site:
+ apache_proxy_openstack_api_placement:
+ enabled: true
+ type: proxy
+ name: openstack_api_placement
+ check: false
+ proxy:
+ host: ${_param:apache_proxy_openstack_placement_host}
+ port: 8778
+ protocol: http
+ host:
+ name: ${_param:apache_proxy_openstack_api_host}
+ port: 8778
+ address: ${_param:apache_proxy_openstack_api_address}
+ ssl: ${_param:apache_proxy_ssl}
diff --git a/apache/server/site/barbican.yml b/apache/server/site/barbican.yml
new file mode 100644
index 0000000..55f5cf5
--- /dev/null
+++ b/apache/server/site/barbican.yml
@@ -0,0 +1,61 @@
+parameters:
+ _param:
+ apache_barbican_ssl:
+ enabled: false
+ apache_barbican_api_address: 0.0.0.0
+ apache_barbican_api_host: ${linux:network:fqdn}
+ apache:
+ server:
+ enabled: true
+ site:
+ barbican:
+ enabled: false
+ available: true
+ type: wsgi
+ name: barbican
+ ssl: ${_param:apache_barbican_ssl}
+ wsgi:
+ daemon_process: barbican-api
+ processes: 3
+ threads: 10
+ user: barbican
+ group: barbican
+ display_name: '%{GROUP}'
+ script_alias: '/ /usr/bin/barbican-wsgi-api'
+ application_group: '%{GLOBAL}'
+ authorization: 'On'
+ host:
+ address: ${_param:apache_barbican_api_address}
+ name: ${_param:apache_barbican_api_host}
+ port: 9311
+ log:
+ custom:
+ format: 'combined'
+ file: '/var/log/barbican/barbican-api.log'
+ error:
+ enabled: true
+ file: '/var/log/barbican/barbican-api.log'
+ barbican_admin:
+ enabled: false
+ available: true
+ type: wsgi
+ name: barbican_admin
+ ssl: ${_param:apache_barbican_ssl}
+ wsgi:
+ daemon_process: barbican-api-admin
+ processes: 3
+ threads: 10
+ user: barbican
+ group: barbican
+ display_name: '%{GROUP}'
+ host:
+ address: ${_param:apache_barbican_api_address}
+ name: ${_param:apache_barbican_api_host}
+ port: 9312
+ log:
+ custom:
+ format: 'combined'
+ file: '/var/log/barbican/barbican-api.log'
+ error:
+ enabled: true
+ file: '/var/log/barbican/barbican-api.log'
diff --git a/apache/server/site/cinder.yml b/apache/server/site/cinder.yml
new file mode 100644
index 0000000..7338b6e
--- /dev/null
+++ b/apache/server/site/cinder.yml
@@ -0,0 +1,42 @@
+parameters:
+ _param:
+ apache_cinder_ssl:
+ enabled: false
+ apache_cinder_api_address: 0.0.0.0
+ apache_cinder_api_host: ${linux:network:fqdn}
+ cinder:
+ server:
+ service_name: apache2
+ apache:
+ server:
+ enabled: true
+ default_mpm: event
+ site:
+ cinder:
+ enabled: false
+ available: true
+ type: wsgi
+ name: cinder
+ ssl: ${_param:apache_cinder_ssl}
+ wsgi:
+ daemon_process: cinder-wsgi
+ processes: 5
+ threads: 1
+ user: cinder
+ group: cinder
+ display_name: '%{GROUP}'
+ script_alias: '/ /usr/bin/cinder-wsgi'
+ application_group: '%{GLOBAL}'
+ authorization: 'On'
+ host:
+ address: ${_param:apache_cinder_api_address}
+ name: ${_param:apache_cinder_api_host}
+ port: 8776
+ 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
+ format: '%M'
+ file: '/var/log/apache2/cinder_error.log'
diff --git a/apache/server/site/gnocchi.yml b/apache/server/site/gnocchi.yml
new file mode 100644
index 0000000..a3d6def
--- /dev/null
+++ b/apache/server/site/gnocchi.yml
@@ -0,0 +1,35 @@
+parameters:
+ _param:
+ gnocchi_api_workers: 2
+ apache_gnocchi_ssl:
+ enabled: false
+ apache_gnocchi_api_host: ${linux:network:fqdn}
+ apache_gnocchi_api_address: ${_param:single_address}
+ apache_gnocchi_api_port: 8041
+ apache:
+ server:
+ site:
+ gnocchi:
+ enabled: false
+ available: true
+ type: wsgi
+ name: gnocchi
+ ssl: ${_param:apache_gnocchi_ssl}
+ host:
+ name: ${_param:apache_gnocchi_api_host}
+ address: ${_param:apache_gnocchi_api_address}
+ port: ${_param:apache_gnocchi_api_port}
+ log:
+ custom:
+ format: >-
+ %v:%p %{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %D %O \"%{Referer}i\" \"%{User-Agent}i\"
+ wsgi:
+ daemon_process: gnocchi-api
+ processes: ${_param:gnocchi_api_workers}
+ threads: 10
+ user: gnocchi
+ group: gnocchi
+ display_name: '%{GROUP}'
+ script_alias: '/ /usr/bin/gnocchi-api'
+ application_group: '%{GLOBAL}'
+ authorization: 'On'
diff --git a/apache/server/site/manila.yml b/apache/server/site/manila.yml
new file mode 100644
index 0000000..2161882
--- /dev/null
+++ b/apache/server/site/manila.yml
@@ -0,0 +1,44 @@
+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
+ ssl: ${_param:apache_manila_ssl}
+ 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/apache/server/site/nova-placement.yml b/apache/server/site/nova-placement.yml
new file mode 100644
index 0000000..9eeeae4
--- /dev/null
+++ b/apache/server/site/nova-placement.yml
@@ -0,0 +1,45 @@
+parameters:
+ _param:
+ apache_nova_placement_ssl:
+ enabled: false
+ apache_nova_placement_api_address: 0.0.0.0
+ apache_nova_placement_api_host: ${linux:network:fqdn}
+ nova_placement:
+ server:
+ service_name: apache2
+ apache:
+ server:
+ enabled: true
+ default_mpm: event
+ site:
+ nova_placement:
+ enabled: false
+ available: true
+ type: wsgi
+ name: nova_placement
+ ssl: ${_param:apache_nova_placement_ssl}
+ wsgi:
+ daemon_process: nova-placement
+ processes: 5
+ threads: 1
+ user: nova
+ group: nova
+ display_name: '%{GROUP}'
+ script_alias: '/ /usr/bin/nova-placement-api'
+ application_group: '%{GLOBAL}'
+ authorization: 'On'
+ limits:
+ request_body: 114688
+ host:
+ address: ${_param:apache_nova_placement_api_address}
+ name: ${_param:apache_nova_placement_api_host}
+ port: 8778
+ log:
+ custom:
+ format: >-
+ %v:%p %{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %D %O \"%{Referer}i\" \"%{User-Agent}i\"
+ file: '/var/log/apache2/nova_placement_access.log'
+ error:
+ enabled: true
+ format: '%M'
+ file: '/var/log/apache2/nova_placement_error.log'
diff --git a/apache/server/site/panko.yml b/apache/server/site/panko.yml
new file mode 100644
index 0000000..d052c37
--- /dev/null
+++ b/apache/server/site/panko.yml
@@ -0,0 +1,35 @@
+parameters:
+ _param:
+ apache_panko_ssl:
+ enabled: false
+ panko_api_workers: 2
+ apache_panko_api_host: ${linux:network:fqdn}
+ apache_panko_api_address: ${_param:single_address}
+ apache_panko_api_port: 8977
+ apache:
+ server:
+ site:
+ panko:
+ enabled: false
+ available: true
+ type: wsgi
+ name: panko
+ ssl: ${_param:apache_panko_ssl}
+ host:
+ name: ${_param:apache_panko_api_host}
+ address: ${_param:apache_panko_api_address}
+ port: ${_param:apache_panko_api_port}
+ log:
+ custom:
+ format: >-
+ %v:%p %{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %D %O \"%{Referer}i\" \"%{User-Agent}i\"
+ wsgi:
+ daemon_process: panko-api
+ processes: ${_param:panko_api_workers}
+ threads: 1
+ user: panko
+ group: panko
+ display_name: '%{GROUP}'
+ script_alias: '/ /usr/bin/panko-api'
+ application_group: '%{GLOBAL}'
+ authorization: 'On'
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/fluentd.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/fluentd.yml
new file mode 100644
index 0000000..ee765d4
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/fluentd.yml
@@ -0,0 +1,21 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ mirror_mirantis_openstack_trusty_fluentd_source: http://mirror.mirantis.com/${_param:apt_mk_version}/td-agent/trusty
+ mirror_mirantis_openstack_trusty_fluentd_distribution: trusty
+ mirror_mirantis_openstack_trusty_fluentd_components: contrib
+ mirror_mirantis_openstack_trusty_fluentd_gpgkeys:
+ - 901F9177AB97ACBE
+ aptly:
+ server:
+ mirror:
+ mirantis_openstack_trusty_fluentd:
+ source: ${_param:mirror_mirantis_openstack_trusty_fluentd_source}
+ distribution: ${_param:mirror_mirantis_openstack_trusty_fluentd_distribution}
+ components: ${_param:mirror_mirantis_openstack_trusty_fluentd_components}
+ architectures: amd64
+ gpgkeys: ${_param:mirror_mirantis_openstack_trusty_fluentd_gpgkeys}
+ publisher:
+ component: contrib
+ distributions:
+ - ubuntu-trusty/fluentd/${_param:apt_mk_version}
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml
index 507ed5e..72c20cb 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/aptly.yml
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/aptly/xenial/
+ mirror_mirantis_openstack_xenial_aptly_distribution: squeeze
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
+ - 9C7DE460
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: main
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
index 5afbf77..c34a904 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/cassandra.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/cassandra.yml
@@ -1,12 +1,14 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/cassandra/xenial/
+ mirror_mirantis_openstack_xenial_cassandra_distribution: 21x
+ mirror_mirantis_openstack_xenial_cassandra_components: main
mirror_mirantis_openstack_xenial_cassandra_gpgkeys:
- - A76882D3
+ - A278B781FE4B2BDA
+ - F758CE318D77295D
+ - 2B5C1B00
+ - 0353B12C
aptly:
server:
mirror:
@@ -15,9 +17,8 @@
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}
+ component: 21x
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
index a0b1293..d997485 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/ceph.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/ceph.yml
@@ -1,10 +1,9 @@
parameters:
_param:
apt_mk_version: stable
- mirror_mirantis_openstack_xenial_ceph_source: http://apt.mirantis.com/xenial/ceph/
+ mirror_mirantis_openstack_xenial_ceph_source: http://apt.mirantis.com/xenial/
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_components: ceph-luminous
mirror_mirantis_openstack_xenial_ceph_gpgkeys:
- A76882D3
aptly:
@@ -15,9 +14,8 @@
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}
+ component: luminous
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-legacy.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker-legacy.yml
index 03a5fae..c6814b7 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker-legacy.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker-legacy.yml
@@ -1,7 +1,7 @@
parameters:
_param:
apt_mk_version: stable
- mirror_mirantis_openstack_xenial_docker_legacy_source: http://mirror.mirantis.com/${_param:apt_mk_version}/docker-1.x/
+ mirror_mirantis_openstack_xenial_docker_legacy_source: http://mirror.mirantis.com/${_param:apt_mk_version}/docker-1.x/xenial/
mirror_mirantis_openstack_xenial_docker_legacy_distribution: ubuntu-xenial
mirror_mirantis_openstack_xenial_docker_legacy_components: main
mirror_mirantis_openstack_xenial_docker_legacy_gpgkeys:
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml
index 703d202..2ae01f9 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/docker.yml
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/docker/xenial/
+ mirror_mirantis_openstack_xenial_docker_distribution: xenial
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
+ - 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: stable
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/2x.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic/2x.yml
index 6b1c006..1bf92ed 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic/2x.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic/2x.yml
@@ -1,12 +1,11 @@
parameters:
_param:
apt_mk_version: stable
- mirror_mirantis_openstack_xenial_elastic_2x_source: http://apt.mirantis.com/xenial/elastic/2.x/
- mirror_mirantis_openstack_xenial_elastic_2x_distribution: ${_param:apt_mk_version}
+ mirror_mirantis_openstack_xenial_elastic_2x_source: http://mirror.mirantis.com/${_param:apt_mk_version}/elasticsearch-2.x/xenial/
+ mirror_mirantis_openstack_xenial_elastic_2x_distribution: stable
mirror_mirantis_openstack_xenial_elastic_2x_components: main
- mirror_mirantis_openstack_xenial_elastic_2x_key_url: "http://apt.mirantis.com/public.gpg"
mirror_mirantis_openstack_xenial_elastic_2x_gpgkeys:
- - A76882D3
+ - D88E42B4
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
distribution: ${_param:mirror_mirantis_openstack_xenial_elastic_2x_distribution}
components: ${_param:mirror_mirantis_openstack_xenial_elastic_2x_components}
architectures: amd64
- key_url: ${_param:mirror_mirantis_openstack_xenial_elastic_2x_key_url}
gpgkeys: ${_param:mirror_mirantis_openstack_xenial_elastic_2x_gpgkeys}
publisher:
- component: ${_param:mirror_mirantis_openstack_xenial_elastic_2x_components}
+ component: main
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/elastic/5x.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic/5x.yml
index d7e92c6..1281c30 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic/5x.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/elastic/5x.yml
@@ -1,12 +1,11 @@
parameters:
_param:
apt_mk_version: stable
- mirror_mirantis_openstack_xenial_elastic_5x_source: http://apt.mirantis.com/xenial/elastic/5.x/
- mirror_mirantis_openstack_xenial_elastic_5x_distribution: ${_param:apt_mk_version}
+ mirror_mirantis_openstack_xenial_elastic_5x_source: http://mirror.mirantis.com/${_param:apt_mk_version}/elasticsearch-5.x/xenial/
+ mirror_mirantis_openstack_xenial_elastic_5x_distribution: stable
mirror_mirantis_openstack_xenial_elastic_5x_components: main
- mirror_mirantis_openstack_xenial_elastic_5x_key_url: "http://apt.mirantis.com/public.gpg"
mirror_mirantis_openstack_xenial_elastic_5x_gpgkeys:
- - A76882D3
+ - D88E42B4
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
distribution: ${_param:mirror_mirantis_openstack_xenial_elastic_5x_distribution}
components: ${_param:mirror_mirantis_openstack_xenial_elastic_5x_components}
architectures: amd64
- key_url: ${_param:mirror_mirantis_openstack_xenial_elastic_5x_key_url}
gpgkeys: ${_param:mirror_mirantis_openstack_xenial_elastic_5x_gpgkeys}
publisher:
- component: ${_param:mirror_mirantis_openstack_xenial_elastic_5x_components}
+ component: main
distributions:
- ubuntu-xenial/elastic/5.x/${_param:apt_mk_version}
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/fluentd.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/fluentd.yml
new file mode 100644
index 0000000..bba5d9c
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/fluentd.yml
@@ -0,0 +1,21 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ mirror_mirantis_openstack_xenial_fluentd_source: http://mirror.mirantis.com/${_param:apt_mk_version}/td-agent/xenial
+ mirror_mirantis_openstack_xenial_fluentd_distribution: xenial
+ mirror_mirantis_openstack_xenial_fluentd_components: contrib
+ mirror_mirantis_openstack_xenial_fluentd_gpgkeys:
+ - 901F9177AB97ACBE
+ aptly:
+ server:
+ mirror:
+ mirantis_openstack_xenial_fluentd:
+ source: ${_param:mirror_mirantis_openstack_xenial_fluentd_source}
+ distribution: ${_param:mirror_mirantis_openstack_xenial_fluentd_distribution}
+ components: ${_param:mirror_mirantis_openstack_xenial_fluentd_components}
+ architectures: amd64
+ gpgkeys: ${_param:mirror_mirantis_openstack_xenial_fluentd_gpgkeys}
+ publisher:
+ component: contrib
+ distributions:
+ - ubuntu-xenial/fluentd/${_param:apt_mk_version}
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml
index cfec221..c38aa6f 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/glusterfs.yml
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/glusterfs-3.8/xenial/
+ mirror_mirantis_openstack_xenial_glusterfs_distribution: xenial
+ mirror_mirantis_openstack_xenial_glusterfs_components: main
mirror_mirantis_openstack_xenial_glusterfs_gpgkeys:
- - A76882D3
+ - 3FE869A9
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: '"3.8"'
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
index e09ba61..7c159b8 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/grafana.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/grafana.yml
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/grafana/xenial/
+ mirror_mirantis_openstack_xenial_grafana_distribution: jessie
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
+ - D59097AB
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: main
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
index 01093fe..e8838d9 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/influxdb.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/influxdb.yml
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/influxdb/xenial/
+ mirror_mirantis_openstack_xenial_influxdb_distribution: xenial
+ mirror_mirantis_openstack_xenial_influxdb_components: stable
mirror_mirantis_openstack_xenial_influxdb_gpgkeys:
- - A76882D3
+ - 2582E0C5
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: main
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/46.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana/46.yml
index 815185b..253c007 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana/46.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana/46.yml
@@ -1,12 +1,11 @@
parameters:
_param:
apt_mk_version: stable
- mirror_mirantis_openstack_xenial_kibana_46_source: http://apt.mirantis.com/xenial/kibana/4.6/
- mirror_mirantis_openstack_xenial_kibana_46_distribution: ${_param:apt_mk_version}
- mirror_mirantis_openstack_xenial_kibana_46_components: "kibana-46"
- mirror_mirantis_openstack_xenial_kibana_46_key_url: "http://apt.mirantis.com/public.gpg"
+ mirror_mirantis_openstack_xenial_kibana_46_source: http://mirror.mirantis.com/${_param:apt_mk_version}/kibana-4.6/xenial/
+ mirror_mirantis_openstack_xenial_kibana_46_distribution: stable
+ mirror_mirantis_openstack_xenial_kibana_46_components: main
mirror_mirantis_openstack_xenial_kibana_46_gpgkeys:
- - A76882D3
+ - D88E42B4
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
distribution: ${_param:mirror_mirantis_openstack_xenial_kibana_46_distribution}
components: ${_param:mirror_mirantis_openstack_xenial_kibana_46_components}
architectures: amd64
- key_url: ${_param:mirror_mirantis_openstack_xenial_kibana_46_key_url}
gpgkeys: ${_param:mirror_mirantis_openstack_xenial_kibana_46_gpgkeys}
publisher:
- component: ${_param:mirror_mirantis_openstack_xenial_kibana_46_components}
+ component: kibana-46
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/kibana/5x.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana/5x.yml
index c1b061e..58d26aa 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana/5x.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/kibana/5x.yml
@@ -1,12 +1,11 @@
parameters:
_param:
apt_mk_version: stable
- mirror_mirantis_openstack_xenial_kibana_5x_source: http://apt.mirantis.com/xenial/kibana/5.x/
- mirror_mirantis_openstack_xenial_kibana_5x_distribution: ${_param:apt_mk_version}
- mirror_mirantis_openstack_xenial_kibana_5x_components: "kibana-5x"
- mirror_mirantis_openstack_xenial_kibana_5x_key_url: "http://apt.mirantis.com/public.gpg"
+ mirror_mirantis_openstack_xenial_kibana_5x_source: http://mirror.mirantis.com/${_param:apt_mk_version}/elasticsearch-5.x/xenial/
+ mirror_mirantis_openstack_xenial_kibana_5x_distribution: stable
+ mirror_mirantis_openstack_xenial_kibana_5x_components: main
mirror_mirantis_openstack_xenial_kibana_5x_gpgkeys:
- - A76882D3
+ - D88E42B4
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
distribution: ${_param:mirror_mirantis_openstack_xenial_kibana_5x_distribution}
components: ${_param:mirror_mirantis_openstack_xenial_kibana_5x_components}
architectures: amd64
- key_url: ${_param:mirror_mirantis_openstack_xenial_kibana_5x_key_url}
gpgkeys: ${_param:mirror_mirantis_openstack_xenial_kibana_5x_gpgkeys}
publisher:
- component: ${_param:mirror_mirantis_openstack_xenial_kibana_5x_components}
+ component: kibana-5x
distributions:
- ubuntu-xenial/kibana/5.x/${_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
index 3d63b00..acf5a63 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/maas.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/maas.yml
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/maas/xenial/
+ mirror_mirantis_openstack_xenial_maas_distribution: xenial
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
+ - 684D4A1C
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: main
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/saltstack/salt-2016-3.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/saltstack/salt-2016-3.yml
index 86a33e6..bd6b440 100644
--- 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
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/saltstack-2016.3/xenial/
+ mirror_mirantis_openstack_xenial_saltstack_2016_3_distribution: xenial
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
+ - DE57BFBE
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: main
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
index 0478cde..019161b 100644
--- 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
@@ -1,12 +1,11 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/saltstack-2017.7/xenial/
+ mirror_mirantis_openstack_xenial_saltstack_2017_7_distribution: xenial
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
+ - DE57BFBE
aptly:
server:
mirror:
@@ -15,9 +14,8 @@
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}
+ component: main
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
index 505ec97..ce42857 100644
--- a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/sensu.yml
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk/sensu.yml
@@ -1,12 +1,12 @@
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_source: http://mirror.mirantis.com/${_param:apt_mk_version}/sensu/xenial/
+ mirror_mirantis_openstack_xenial_sensu_distribution: sensu
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
+ - EB9C94BB
aptly:
server:
mirror:
@@ -15,9 +15,8 @@
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}
+ component: main
distributions:
- ubuntu-xenial/sensu/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/barbican/server/cluster.yml b/barbican/server/cluster.yml
index 5b5bc5e..ed45b47 100644
--- a/barbican/server/cluster.yml
+++ b/barbican/server/cluster.yml
@@ -1,3 +1,10 @@
classes:
- service.barbican.server.cluster
-- system.haproxy.proxy.listen.openstack.barbican
\ No newline at end of file
+- system.haproxy.proxy.listen.openstack.barbican
+parameters:
+ _param:
+ cluster_internal_protocol: 'http'
+ barbican:
+ server:
+ identity:
+ protocol: ${_param:cluster_internal_protocol}
diff --git a/barbican/server/single.yml b/barbican/server/single.yml
index eb2b30b..aab0b18 100644
--- a/barbican/server/single.yml
+++ b/barbican/server/single.yml
@@ -1,2 +1,9 @@
classes:
- service.barbican.server.single
+parameters:
+ _param:
+ internal_protocol: 'http'
+ barbican:
+ server:
+ identity:
+ protocol: ${_param:internal_protocol}
diff --git a/cassandra/backup/client/single.yml b/cassandra/backup/client/single.yml
index 90fdc5d..892f92f 100644
--- a/cassandra/backup/client/single.yml
+++ b/cassandra/backup/client/single.yml
@@ -1,4 +1,5 @@
classes:
+- service.cassandra.backup.client
- system.openssh.client.root
parameters:
_param:
diff --git a/cassandra/backup/server/single.yml b/cassandra/backup/server/single.yml
index 1762504..ffb43cf 100644
--- a/cassandra/backup/server/single.yml
+++ b/cassandra/backup/server/single.yml
@@ -1,3 +1,5 @@
+classes:
+- service.cassandra.backup.server
parameters:
_param:
cassandra_backup_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzLUiHKAjfFXiZ3fsgx35uXF6VivfC5WFafu4QMalxmj6W+s277oCfdWA8Du5f1wtQXM73VQ5nHkXhM2UIfUMarsyhXK+BxKVrcgEBNHdKlDytaecUPyuOxTDdGWhN/DPv5/vL8NYWweEYBbNbLgU0Td7Rvm52TUXKThIDjeF7XDxX4ShXWipBSwU4boOUBtR8KWfga8fsqeBN+eacuAQFR3MrrOfVvAuWW6Bsf047cmd+V6Qv0raoW73Nu4M/ZAdTsaR5k62a0cHsSRoi3hCmNRqw+CZaQi8prQU6t26eWPEtznjp5EkPF+LLh8LxUoCfWqWT+Lxe8QQwT1nx/LCN
diff --git a/ceilometer/agent/polling/default.yml b/ceilometer/agent/polling/default.yml
new file mode 100644
index 0000000..47b2d1d
--- /dev/null
+++ b/ceilometer/agent/polling/default.yml
@@ -0,0 +1,8 @@
+parameters:
+ ceilometer:
+ agent:
+ polling:
+ sources:
+ default_pollsters:
+ meters: ${_param:ceilometer_agent_default_polling_meters}
+ interval: ${_param:ceilometer_agent_default_polling_interval}
\ No newline at end of file
diff --git a/ceilometer/server/backend/default.yml b/ceilometer/server/backend/default.yml
new file mode 100644
index 0000000..8842e11
--- /dev/null
+++ b/ceilometer/server/backend/default.yml
@@ -0,0 +1,12 @@
+classes:
+- service.ceilometer.server.publisher.gnocchi
+- service.ceilometer.server.publisher.panko
+parameters:
+ # gnocchi and panko are default backends for Ceilometer since Pike
+ # they are incompatible with any legacy database publisher backends
+ ceilometer:
+ server:
+ database: ~
+ publisher:
+ default:
+ enabled: false
diff --git a/ceilometer/server/cluster.yml b/ceilometer/server/cluster.yml
index 11488fb..6f8d3f8 100644
--- a/ceilometer/server/cluster.yml
+++ b/ceilometer/server/cluster.yml
@@ -13,7 +13,7 @@
secret: ${_param:ceilometer_secret_key}
ttl: 86400
publisher:
- default:
+ default: {}
bind:
host: ${_param:cluster_local_address}
port: 8777
diff --git a/ceilometer/server/coordination/redis.yml b/ceilometer/server/coordination/redis.yml
index e013e0f..e8610f3 100644
--- a/ceilometer/server/coordination/redis.yml
+++ b/ceilometer/server/coordination/redis.yml
@@ -1,7 +1,7 @@
classes:
- service.redis.server.single
parameters:
- aodh:
+ ceilometer:
server:
coordination_backend:
url: redis://${_param:single_address}:6379/${_param:cluster_node01_address}
diff --git a/cinder/control/cluster.yml b/cinder/control/cluster.yml
index c130e97..1110c63 100644
--- a/cinder/control/cluster.yml
+++ b/cinder/control/cluster.yml
@@ -4,13 +4,15 @@
- service.keepalived.cluster.single
- system.haproxy.proxy.listen.openstack.cinder
parameters:
+ _param:
+ cluster_internal_protocol: 'http'
linux:
system:
package:
python-pymysql:
fromrepo: ${_param:openstack_version}
version: latest
- cinder:
+ cinder:
volume:
enabled: false
default_volume_type: ""
@@ -40,9 +42,11 @@
tenant: service
user: cinder
password: ${_param:keystone_cinder_password}
+ protocol: ${_param:cluster_internal_protocol}
glance:
host: ${_param:cluster_vip_address}
port: 9292
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
members:
diff --git a/cinder/control/single.yml b/cinder/control/single.yml
index 2d7f179..66aea6d 100644
--- a/cinder/control/single.yml
+++ b/cinder/control/single.yml
@@ -1,6 +1,8 @@
classes:
- service.cinder.control.single
parameters:
+ _param:
+ internal_protocol: 'http'
linux:
system:
package:
@@ -15,4 +17,6 @@
default_volume_type: ''
database:
host: ${_param:single_address}
+ identity:
+ protocol: ${_param:internal_protocol}
diff --git a/cinder/volume/single.yml b/cinder/volume/single.yml
index de468ba..1b9948d 100644
--- a/cinder/volume/single.yml
+++ b/cinder/volume/single.yml
@@ -1,6 +1,8 @@
classes:
- service.cinder.volume.single
parameters:
+ _param:
+ cluster_internal_protocol: 'http'
linux:
system:
package:
@@ -21,3 +23,4 @@
- host: ${_param:openstack_message_queue_node03_address}
identity:
host: ${_param:openstack_control_address}
+ protocol: ${_param:cluster_internal_protocol}
diff --git a/debmirror/mirror_mirantis_com/ubuntu/xenial.yml b/debmirror/mirror_mirantis_com/ubuntu/xenial.yml
new file mode 100644
index 0000000..20cf1e0
--- /dev/null
+++ b/debmirror/mirror_mirantis_com/ubuntu/xenial.yml
@@ -0,0 +1,93 @@
+parameters:
+ _param:
+ apt_mk_version: 'stable'
+ mirror_mirantis_com_ubuntu_xenial_force: False
+ debmirror:
+ client:
+ enabled: true
+ mirrors:
+ mirror_mirantis_com_ubuntu_xenial:
+ force: ${_param:mirror_mirantis_com_ubuntu_xenial_force}
+ lock_target: True
+ extra_flags: [ '--verbose', '--progress', '--nosource', '--no-check-gpg', '--rsync-extra=none' ]
+ method: "rsync"
+ arch: [ 'amd64' ]
+ mirror_host: "mirror.mirantis.com"
+ mirror_root: ":mirror/${_param:apt_mk_version}/ubuntu/"
+ target_dir: "/srv/volumes/aptly/public/ubuntu/"
+ log_file: "/var/log/debmirror/mirror_mirantis_com_ubuntu_xenial.log"
+ dist: [ xenial , xenial-security, xenial-updates ]
+ section: [ main , multiverse, restricted, universe ]
+ # Don't exclude main/x11 - its required for many pkgs.
+ exclude_deb_section: [games, gnome, Xfce, sound, electronics, graphics, hamradio,
+ doc, localization, kde, video, translations, news, multiverse/games, multiverse/gnome,
+ multiverse/Xfce, multiverse/sound, multiverse/electronics, multiverse/graphics,
+ multiverse/hamradio, multiverse/doc, multiverse/localization, multiverse/kde, multiverse/video,
+ multiverse/translations, multiverse/news, multiverse/x11, universe/games, universe/gnome,
+ universe/Xfce, universe/sound, universe/electronics, universe/hamradio, universe/doc,
+ universe/localization, universe/kde, universe/video, universe/translations, universe/news,
+ universe/x11, universe/graphics, restricted/games, restricted/gnome, restricted/Xfce,
+ restricted/sound, restricted/electronics, restricted/graphics, restricted/hamradio,
+ restricted/doc, restricted/localization, restricted/kde, restricted/video, restricted/translations,
+ restricted/news, restricted/x11]
+ filter:
+ 1: "--exclude='android*'"
+ 2: "--exclude='/firefox*'"
+ 3: "--exclude='/chromium-browser*'"
+ 4: "--exclude='/ceph*'"
+ 5: "--exclude='/*-wallpapers*'"
+ 6: "--exclude='/language-pack-(?!en)'"
+ 7: "--exclude='thunderbird*'"
+ 8: "--exclude='libreoffice*'"
+ 9: "--exclude='openoffice*'"
+ 10: "--exclude='live-image-*-desktop*'"
+ 11: "--exclude='lubuntu-*'"
+ 12: "--exclude='kubuntu-*'"
+ 13: "--exclude='cinnamon-*'"
+ 14: "--exclude='mate-*'"
+ 15: "--exclude='desktop-*'"
+ 16: "--exclude='flashplugin*'"
+ 17: "--exclude='gnome*'"
+ 18: "--exclude='/unity*'"
+ 20: "--exclude='openjdk-*-(dbg|demo|source).*'"
+ 22: "--exclude='(kde|ubuntu|xfce4|sabily).*artwork*'"
+ 23: "--exclude='ubuntu-touch*'"
+ 24: "--exclude='remmina*'"
+ 25: "--exclude='/libbluetooth*'"
+ 26: "--exclude='/libandroid*'"
+ 27: "--exclude='/banshee*'"
+ 27: "--exclude='/*(.xorg)*joystick'"
+ 28: "--exclude='/xserver-xorg-video(.*vivid|.*wily|.*utopic)'"
+ 30: "--exclude='/*universe.*bluez.*'"
+ 31: "--exclude='/main/m/maas/'" # ppa should be always used
+ 32: "--exclude='/main/a/a11y-profile-manager/'"
+ 33: "--exclude='/universe/.*(alsa|ubuntuone|telepathy|debian-multimedia|kodi|mediaplayer|nagios|getfem|gammaray|geotranz)'"
+ 34: "--exclude='/universe/.*(pyqt|usb-creator|gcc-mingw-w64|gcc-snapshot)'"
+ 35: "--exclude='/universe/q/qt'"
+ 36: "--exclude='/universe/g/glusterfs/'" # ppa should be always used
+ 37: "--exclude='/universe/d/docker.io/'" # ppa should be always used
+ 38: "--exclude='/universe/a/aptly'" # ppa should be always used
+ 39: "--exclude='/universe/e/elasticsearch'" # ppa should be always used
+ 40: "--exclude='/universe/g/grafana/'" # ppa should be always used
+ 41: "--exclude='/universe/i/influxdb(?!.*python)'" # ppa should be always used
+ 42: "--exclude='/universe/s/salt'" # ppa should be always used
+ 43: "--exclude='/universe/z/zabbix'" # ppa should be always used
+ 44: "--exclude='/universe/.*(brasero|mediascanner2|mediatomb|mediawiki|qtmultimedia|pidgin|skype|eclipse|esys-particle|fusion)'"
+ 89: "--exclude='/universe/k/(kde)'"
+ 90: "--exclude='/universe/p/(psi-plus|puppet-module|plasma|pcl/)'"
+ 91: "--exclude='golang-github-*'"
+ 92: "--exclude='/(llvm-toolchain|address-book|amule|openclipart|rhythmbox|gimp|sonic-visualiser|games|bsdgame|gazebo|arduino|webkitgtk|widelands|wxwidget|warzone|wings3d).*'"
+ 93: "--exclude='/(asterisk|abiword|webbrowser-app|imagemagick|.*clamav|wireshar|vlc|.*transmission|tryton-modules|trilinos|tomboy|wine1|wine-dev|compiz|mythtv|ubuntustudio).*'"
+ 94: "--exclude='/(ceilometer|nova|openstack-debian-images).*'"
+ 95: "--exclude='/gcc-.*-cross.*'"
+ 96: "--exclude='/(nvidia).*'"
+ 97: "--exclude='linux-*-(.*azure|.*aws|gke|.*azure-edge|.*linux-oem)'"
+ 98: "--exclude='/.*(arm64|powerpc|s390x|armel|armhf|sparc64|mips64|ppc64el|mipsn32)(?!.*amd64)'"
+ 99: "--exclude='/*universe.*(-armel-|-arm-)(?!.*amd64)'"
+ # List of extra includes, founded after tests.
+ 100: "--include='/main(.*)manpages'"
+ 101: "--include='/main(.*)python-(.*)doc'"
+ 102: "--include='/main(.*)python-(.*)network'"
+ 103: "--include='/main(.*)unittest2'" # openstack* pkgs
+ 104: "--include='/main(.*)libbluetooth3'" # python-guestfs
+
diff --git a/designate/server/cluster.yml b/designate/server/cluster.yml
index 1030861..afbb7df 100644
--- a/designate/server/cluster.yml
+++ b/designate/server/cluster.yml
@@ -6,6 +6,7 @@
parameters:
_param:
designate_admin_api_enabled: false
+ cluster_internal_protocol: 'http'
linux:
system:
package:
@@ -41,6 +42,7 @@
tenant: service
user: designate
password: ${_param:keystone_designate_password}
+ protocol: ${_param:cluster_internal_protocol}
bind:
api:
address: ${_param:single_address}
diff --git a/designate/server/single.yml b/designate/server/single.yml
index 765dcf8..3fdd448 100644
--- a/designate/server/single.yml
+++ b/designate/server/single.yml
@@ -3,6 +3,7 @@
parameters:
_param:
designate_admin_api_enabled: false
+ internal_protocol: 'http'
linux:
system:
package:
@@ -38,6 +39,7 @@
tenant: service
user: designate
password: ${_param:keystone_designate_password}
+ protocol: ${_param:internal_protocol}
message_queue:
engine: rabbitmq
host: ${_param:cluster_vip_address}
diff --git a/devops_portal/service/stacklight-prometheus.yml b/devops_portal/service/stacklight-prometheus.yml
index 119c13f..9b5a74f 100644
--- a/devops_portal/service/stacklight-prometheus.yml
+++ b/devops_portal/service/stacklight-prometheus.yml
@@ -6,7 +6,7 @@
config:
service:
stacklight-prometheus:
- configure_proxy: false
+ configure_proxy: true
enabled: true
endpoint:
address: ${_param:grafana_prometheus_address}
diff --git a/docker/swarm/network/kqueen_backend.yml b/docker/swarm/network/kqueen_backend.yml
new file mode 100644
index 0000000..b246f86
--- /dev/null
+++ b/docker/swarm/network/kqueen_backend.yml
@@ -0,0 +1,10 @@
+parameters:
+ _param:
+ docker_kqueen_network_subnet: 10.60.0.0/24
+ docker:
+ client:
+ network:
+ kqueen_backend:
+ subnet: ${_param:docker_kqueen_network_subnet}
+ driver: overlay
+ attachable: true
diff --git a/docker/swarm/stack/aptly.yml b/docker/swarm/stack/aptly.yml
index 36c719b..89ec5ec 100644
--- a/docker/swarm/stack/aptly.yml
+++ b/docker/swarm/stack/aptly.yml
@@ -2,6 +2,7 @@
- system.docker
parameters:
_param:
+ docker_stack_aptly_public_replicas: 3
docker_image_aptly:
api: tcpcloud/aptly-api
public: tcpcloud/aptly-public
@@ -25,7 +26,7 @@
- /srv/volumes/aptly:/var/lib/aptly
public:
deploy:
- replicas: 3
+ replicas: ${_param:docker_stack_aptly_public_replicas}
restart_policy:
condition: any
image: ${_param:docker_image_aptly:public}
diff --git a/docker/swarm/stack/docker.yml b/docker/swarm/stack/docker.yml
index 7f8c153..f861718 100644
--- a/docker/swarm/stack/docker.yml
+++ b/docker/swarm/stack/docker.yml
@@ -2,6 +2,7 @@
_param:
docker_image_registry: registry:2
docker_image_visualizer: dockersamples/visualizer
+ docker_stack_registry_replicas: 3
docker:
client:
stack:
@@ -11,7 +12,7 @@
environment:
REGISTRY_HTTP_SECRET: ${_param:docker_registry_http_secret}
deploy:
- replicas: 3
+ replicas: ${_param:docker_stack_registry_replicas}
restart_policy:
condition: any
image: ${_param:docker_image_registry}
diff --git a/docker/swarm/stack/kqueen.yml b/docker/swarm/stack/kqueen.yml
new file mode 100644
index 0000000..c6b608d
--- /dev/null
+++ b/docker/swarm/stack/kqueen.yml
@@ -0,0 +1,100 @@
+parameters:
+ _param:
+ docker_kqueen_api_replicas: 1
+ docker_image_kqueen_api: kqueen/api:v0.18
+ docker_image_kqueen_ui: kqueen/ui:v0.8
+ kqueen_api_bind_host: kqueen-api
+ kqueen_api_bind_port: ${_param:haproxy_kqueen_api_bind_port}
+ kqueen_api_db_host: etcd
+ kqueen_api_debug: True
+ kqueen_api_prometheus_whitelist: '172.16.10.0/24' ##REcheck with network
+ kqueen_api_ldap_uri: 'ldap://ldap'
+ kqueen_api_auth_modules: 'local'
+ docker_kqueen_ui_replicas: 1
+ kqueen_ui_bind_port: ${_param:haproxy_kqueen_ui_bind_port}
+ kqueen_ui_bind_host: kqueen-ui
+ kqueen_ui_mail_host: mail
+ kqueen_ui_mail_port: 10025
+ kqueen_ui_debug: True
+ kqueen_ui_enable_public_registration: False
+ kqueen_ui_ldap_auth_notify: False
+ kqueen_ui_local_auth_notify: True
+ kqueen_credentials:
+ kqueen_api_secret_key: 'pasteyoursecret'
+ kqueen_ui_secret_key: 'pasteyoursecret'
+ kqueen_api_bootstrap_admin: True
+ kqueen_api_admin_username: admin
+ kqueen_api_admin_password: default
+ kqueen_api_admin_organization: MirantisCloudPlatform
+ kqueen_api_admin_namespace: mcp
+ docker:
+ client:
+ stack:
+ kqueen:
+ service:
+ kqueen-api:
+ image: ${_param:docker_image_kqueen_api}
+ environment:
+ KQUEEN_DEBUG: ${_param:kqueen_api_debug}
+ KQUEEN_CONFIG_FILE: config/prod.py
+ KQUEEN_LDAP_URI: ${_param:kqueen_api_ldap_uri}
+ KQUEEN_AUTH_MODULES: ${_param:kqueen_api_auth_modules}
+ KQUEEN_ETCD_HOST: ${_param:kqueen_api_db_host}
+ KQUEEN_PROMETHEUS_WHITELIST: ${_param:kqueen_api_prometheus_whitelist}
+ KQUEEN_SECRET_KEY: ${_param:kqueen_credentials:kqueen_api_secret_key}
+ BOOTSTRAP_ADMIN: ${_param:kqueen_credentials:kqueen_api_bootstrap_admin}
+ BOOTSTRAP_ADMIN_USERNAME: ${_param:kqueen_credentials:kqueen_api_admin_username}
+ BOOTSTRAP_ADMIN_PASSWORD: ${_param:kqueen_credentials:kqueen_api_admin_password}
+ BOOTSTRAP_ADMIN_ORGANIZATION: ${_param:kqueen_credentials:kqueen_api_admin_organization}
+ BOOTSTRAP_ADMIN_NAMESPACE: ${_param:kqueen_credentials:kqueen_api_admin_namespace}
+ deploy:
+ replicas: ${_param:docker_kqueen_api_replicas}
+ restart_policy:
+ condition: any
+ ports:
+ - ${_param:haproxy_kqueen_api_exposed_port}:${_param:haproxy_kqueen_api_bind_port}
+ volumes:
+ - /srv/volumes/kqueen/logs/:/var/log/kqueen-api
+ kqueen-ui:
+ image: ${_param:docker_image_kqueen_ui}
+ environment:
+ KQUEENUI_PREFERRED_URL_SCHEME: https
+ KQUEENUI_DEBUG: ${_param:kqueen_ui_debug}
+ KQUEEN_UI_CONFIG_FILE: config/prod.py
+ KQUEENUI_SECRET_KEY: ${_param:kqueen_credentials:kqueen_ui_secret_key}
+ KQUEENUI_KQUEEN_API_URL: http://${_param:kqueen_api_bind_host}:${_param:kqueen_api_bind_port}/api/v1/
+ KQUEENUI_KQUEEN_AUTH_URL: http://${_param:kqueen_api_bind_host}:${_param:kqueen_api_bind_port}/api/v1/auth
+ KQUEENUI_KQUEEN_SERVICE_USER_USERNAME: ${_param:kqueen_credentials:kqueen_api_admin_username}
+ KQUEENUI_KQUEEN_SERVICE_USER_PASSWORD: ${_param:kqueen_credentials:kqueen_api_admin_password}
+ KQUEENUI_MAIL_SERVER: ${_param:kqueen_ui_mail_host}
+ KQUEENUI_MAIL_PORT: ${_param:kqueen_ui_mail_port}
+ KQUEENUI_ENABLE_PUBLIC_REGISTRATION: ${_param:kqueen_ui_enable_public_registration}
+ KQUEENUI_LDAP_AUTH_NOTIFY: ${_param:kqueen_ui_ldap_auth_notify}
+ KQUEENUI_LOCAL_AUTH_NOTIFY: ${_param:kqueen_ui_local_auth_notify}
+ STATIC_DIR: /mnt/static/
+ deploy:
+ replicas: ${_param:docker_kqueen_ui_replicas}
+ restart_policy:
+ condition: any
+ ports:
+ - ${_param:haproxy_kqueen_ui_exposed_port}:${_param:haproxy_kqueen_ui_bind_port}
+ volumes:
+ - /srv/volumes/kqueen/logs/:/var/log/kqueen-ui
+ etcd:
+ image: quay.io/coreos/etcd:latest
+ environment:
+ ETCD_NAME: 0
+ ETCD_INITIAL_ADVERTISE_PEER_URLS: http://etcd:2380
+ ETCD_INITIAL_CLUSTER_STATE: new
+ ETCD_INITIAL_CLUSTER_TOKEN: etcd-cluster-1
+ ETCD_LISTEN_CLIENT_URLS: http://0.0.0.0:${_param:haproxy_etcd_bind_port}
+ ETCD_LISTEN_PEER_URLS: http://0.0.0.0:2380
+ ETCD_ADVERTISE_CLIENT_URLS: http://127.0.0.1:4001,http://etcd:${_param:haproxy_etcd_bind_port}
+ ports:
+ - ${_param:haproxy_etcd_exposed_port}:${_param:haproxy_etcd_bind_port}
+ volumes:
+ - /srv/volumes/etcd:/0.etcd/
+ network:
+ default:
+ external:
+ name: kqueen_backend
diff --git a/docker/swarm/stack/kqueen_mail.yml b/docker/swarm/stack/kqueen_mail.yml
new file mode 100644
index 0000000..dd03688
--- /dev/null
+++ b/docker/swarm/stack/kqueen_mail.yml
@@ -0,0 +1,16 @@
+parameters:
+ _param:
+ mail_server_hostname: mail
+ docker:
+ client:
+ stack:
+ kqueen:
+ service:
+ mail:
+ image: modularitycontainers/postfix
+ environment:
+ MYHOSTNAME: ${_param:mail_server_hostname}
+ network:
+ default:
+ external:
+ name: kqueen_backend
diff --git a/docker/swarm/stack/monitoring/alertmanager.yml b/docker/swarm/stack/monitoring/alertmanager.yml
new file mode 100644
index 0000000..662baf4
--- /dev/null
+++ b/docker/swarm/stack/monitoring/alertmanager.yml
@@ -0,0 +1,37 @@
+classes:
+- system.prometheus.alertmanager.container
+parameters:
+ docker:
+ client:
+ stack:
+ monitoring:
+ network:
+ monitoring:
+ driver: overlay
+ driver_opts:
+ encrypted: 1
+ service:
+ alertmanager:
+ networks:
+ - monitoring
+ deploy:
+ replicas: 2
+ labels:
+ com.mirantis.monitoring: "alertmanager"
+ restart_policy:
+ condition: any
+ labels:
+ com.mirantis.monitoring: "alertmanager"
+ image: ${_param:docker_image_alertmanager}
+ ports:
+ - 15011:${prometheus:alertmanager:bind:port}
+ volumes:
+ - ${prometheus:alertmanager:dir:config}:${_param:prometheus_alertmanager_config_directory}
+ - ${prometheus:alertmanager:dir:data}:${_param:prometheus_alertmanager_data_directory}
+ environment:
+ ALERTMANAGER_CONFIG_DIR: ${_param:prometheus_alertmanager_config_directory}
+ ALERTMANAGER_DATA_DIR: ${_param:prometheus_alertmanager_data_directory}
+ ALERTMANAGER_BIND_PORT: ${prometheus:alertmanager:bind:port}
+ ALERTMANAGER_BIND_ADDRESS: ${prometheus:alertmanager:bind:address}
+ ALERTMANAGER_DISCOVERY_DOMAIN: 'monitoring_alertmanager'
+ ALERTMANAGER_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15011"
diff --git a/docker/swarm/stack/monitoring/init.yml b/docker/swarm/stack/monitoring/init.yml
index 57d7a5a..134efdc 100644
--- a/docker/swarm/stack/monitoring/init.yml
+++ b/docker/swarm/stack/monitoring/init.yml
@@ -1,131 +1,8 @@
classes:
-- system.prometheus.alertmanager.container
-- system.prometheus.pushgateway.container
-- system.prometheus.remote_storage_adapter.container
-- system.prometheus.server.container
+- system.docker.swarm.stack.monitoring.prometheus
+- system.docker.swarm.stack.monitoring.prometheus.replicated
+- system.docker.swarm.stack.monitoring.alertmanager
+- system.docker.swarm.stack.monitoring.prometheus_relay
+- system.docker.swarm.stack.monitoring.pushgateway
- system.docker.swarm.stack.monitoring.remote_agent
-parameters:
- _param:
- # Backward compatibility for Prometheus 1.7
- prometheus_storage_local_engine: "persisted"
- prometheus_storage_heap_size: 3221225472
- prometheus_storage_num_fingerprint_mutexes: 4096
-
- docker:
- client:
- stack:
- monitoring:
- network:
- monitoring:
- driver: overlay
- driver_opts:
- encrypted: 1
- service:
- relay:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "relay"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "relay"
- image: ${_param:docker_image_prometheus_relay}
- ports:
- - 15016:8080
- environment:
- PROMETHEUS_RELAY_DNS: 'tasks.monitoring_server'
- remote_storage_adapter:
- networks:
- - monitoring
- deploy:
- replicas: 1
- labels:
- com.mirantis.monitoring: "remote_storage_adapter"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "remote_storage_adapter"
- image: ${_param:docker_image_remote_storage_adapter}
- ports:
- - 15015:${prometheus:remote_storage_adapter:bind:port}
- environment:
- RSA_BIND_PORT: ${prometheus:remote_storage_adapter:bind:port}
- RSA_BIND_ADDRESS: ${prometheus:remote_storage_adapter:bind:address}
- RSA_INFLUXDB_RETENTION_POLICY: 'lma'
- RSA_INFLUXDB_URL: ${_param:prometheus_influxdb_url}
- RSA_INFLUXDB_DB: ${_param:prometheus_influxdb_db}
- RSA_INFLUXDB_USERNAME: ${_param:prometheus_influxdb_username}
- RSA_INFLUXDB_PASSWORD: ${_param:prometheus_influxdb_password}
- alertmanager:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "alertmanager"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "alertmanager"
- image: ${_param:docker_image_alertmanager}
- ports:
- - 15011:${prometheus:alertmanager:bind:port}
- volumes:
- - ${prometheus:alertmanager:dir:config}:${_param:prometheus_alertmanager_config_directory}
- - ${prometheus:alertmanager:dir:data}:${_param:prometheus_alertmanager_data_directory}
- environment:
- ALERTMANAGER_CONFIG_DIR: ${_param:prometheus_alertmanager_config_directory}
- ALERTMANAGER_DATA_DIR: ${_param:prometheus_alertmanager_data_directory}
- ALERTMANAGER_BIND_PORT: ${prometheus:alertmanager:bind:port}
- ALERTMANAGER_BIND_ADDRESS: ${prometheus:alertmanager:bind:address}
- ALERTMANAGER_DISCOVERY_DOMAIN: 'monitoring_alertmanager'
- ALERTMANAGER_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15011"
- pushgateway:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "pushgateway"
- restart_policy:
- condition: any
- environment:
- PUSHGATEWAY_BIND_PORT: ${prometheus:pushgateway:bind:port}
- PUSHGATEWAY_BIND_ADDRESS: ${prometheus:pushgateway:bind:address}
- labels:
- com.mirantis.monitoring: "pushgateway"
- image: ${_param:docker_image_pushgateway}
- ports:
- - 15012:${prometheus:pushgateway:bind:port}
- server:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "prometheus"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "prometheus"
- image: ${_param:docker_image_prometheus}
- ports:
- - 15010:${prometheus:server:bind:port}
- volumes:
- - ${prometheus:server:dir:config}:${_param:prometheus_server_config_directory}
- - ${prometheus:server:dir:data}:${_param:prometheus_server_data_directory}
- environment:
- PROMETHEUS_CONFIG_DIR: ${_param:prometheus_server_config_directory}
- PROMETHEUS_DATA_DIR: ${_param:prometheus_server_data_directory}
- PROMETHEUS_BIND_PORT: ${prometheus:server:bind:port}
- PROMETHEUS_BIND_ADDRESS: ${prometheus:server:bind:address}
- PROMETHEUS_STORAGE_LOCAL_RETENTION: ${prometheus:server:storage:local:retention}
- PROMETHEUS_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15010"
- # Backward compatibility for Prometheus 1.7
- PROMETHEUS_STORAGE_LOCAL_ENGINE: ${_param:prometheus_storage_local_engine}
- PROMETHEUS_STORAGE_LOCAL_TARGET_HEAP_SIZE: ${_param:prometheus_storage_heap_size}
- PROMETHEUS_STORAGE_LOCAL_NUM_FINGERPRINT_MUTEXES: ${_param:prometheus_storage_num_fingerprint_mutexes}
-
\ No newline at end of file
+- system.docker.swarm.stack.monitoring.remote_storage_adapter
diff --git a/docker/swarm/stack/monitoring/prometheus/global.yml b/docker/swarm/stack/monitoring/prometheus/global.yml
new file mode 100644
index 0000000..6114f44
--- /dev/null
+++ b/docker/swarm/stack/monitoring/prometheus/global.yml
@@ -0,0 +1,11 @@
+parameters:
+ docker:
+ client:
+ stack:
+ monitoring:
+ service:
+ server:
+ deploy:
+ mode: global
+ environment:
+ PROMETHEUS_USE_STATIC_DATADIR: "true"
diff --git a/docker/swarm/stack/monitoring/prometheus/init.yml b/docker/swarm/stack/monitoring/prometheus/init.yml
new file mode 100644
index 0000000..2d455f7
--- /dev/null
+++ b/docker/swarm/stack/monitoring/prometheus/init.yml
@@ -0,0 +1,45 @@
+classes:
+- system.prometheus.server.container
+parameters:
+ _param:
+ # Backward compatibility for Prometheus 1.7
+ prometheus_storage_local_engine: "persisted"
+ prometheus_storage_heap_size: 3221225472
+ prometheus_storage_num_fingerprint_mutexes: 4096
+ docker:
+ client:
+ stack:
+ monitoring:
+ network:
+ monitoring:
+ driver: overlay
+ driver_opts:
+ encrypted: 1
+ service:
+ server:
+ networks:
+ - monitoring
+ deploy:
+ labels:
+ com.mirantis.monitoring: "prometheus"
+ restart_policy:
+ condition: any
+ labels:
+ com.mirantis.monitoring: "prometheus"
+ image: ${_param:docker_image_prometheus}
+ ports:
+ - 15010:${prometheus:server:bind:port}
+ volumes:
+ - ${prometheus:server:dir:config}:${_param:prometheus_server_config_directory}
+ - ${prometheus:server:dir:data}:${_param:prometheus_server_data_directory}
+ environment:
+ PROMETHEUS_CONFIG_DIR: ${_param:prometheus_server_config_directory}
+ PROMETHEUS_DATA_DIR: ${_param:prometheus_server_data_directory}
+ PROMETHEUS_BIND_PORT: ${prometheus:server:bind:port}
+ PROMETHEUS_BIND_ADDRESS: ${prometheus:server:bind:address}
+ PROMETHEUS_STORAGE_LOCAL_RETENTION: ${prometheus:server:storage:local:retention}
+ PROMETHEUS_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15010"
+ # Backward compatibility for Prometheus 1.7
+ PROMETHEUS_STORAGE_LOCAL_ENGINE: ${_param:prometheus_storage_local_engine}
+ PROMETHEUS_STORAGE_LOCAL_TARGET_HEAP_SIZE: ${_param:prometheus_storage_heap_size}
+ PROMETHEUS_STORAGE_LOCAL_NUM_FINGERPRINT_MUTEXES: ${_param:prometheus_storage_num_fingerprint_mutexes}
diff --git a/docker/swarm/stack/monitoring/prometheus/replicated.yml b/docker/swarm/stack/monitoring/prometheus/replicated.yml
new file mode 100644
index 0000000..c201172
--- /dev/null
+++ b/docker/swarm/stack/monitoring/prometheus/replicated.yml
@@ -0,0 +1,9 @@
+parameters:
+ docker:
+ client:
+ stack:
+ monitoring:
+ service:
+ server:
+ deploy:
+ replicas: 2
diff --git a/docker/swarm/stack/monitoring/prometheus_global.yml b/docker/swarm/stack/monitoring/prometheus_global.yml
index 9745638..6d8e4ba 100644
--- a/docker/swarm/stack/monitoring/prometheus_global.yml
+++ b/docker/swarm/stack/monitoring/prometheus_global.yml
@@ -1,131 +1,8 @@
classes:
-- system.prometheus.alertmanager.container
-- system.prometheus.pushgateway.container
-- system.prometheus.remote_storage_adapter.container
-- system.prometheus.server.container
+- system.docker.swarm.stack.monitoring.prometheus
+- system.docker.swarm.stack.monitoring.prometheus.global
+- system.docker.swarm.stack.monitoring.alertmanager
+- system.docker.swarm.stack.monitoring.prometheus_relay
+- system.docker.swarm.stack.monitoring.pushgateway
- system.docker.swarm.stack.monitoring.remote_agent
-parameters:
- _param:
- # Backward compatibility for Prometheus 1.7
- prometheus_storage_local_engine: "persisted"
- prometheus_storage_heap_size: 3221225472
- prometheus_storage_num_fingerprint_mutexes: 4096
-
- docker:
- client:
- stack:
- monitoring:
- network:
- monitoring:
- driver: overlay
- driver_opts:
- encrypted: 1
- service:
- relay:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "relay"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "relay"
- image: ${_param:docker_image_prometheus_relay}
- ports:
- - 15016:8080
- environment:
- PROMETHEUS_RELAY_DNS: 'tasks.monitoring_server'
- remote_storage_adapter:
- networks:
- - monitoring
- deploy:
- replicas: 1
- labels:
- com.mirantis.monitoring: "remote_storage_adapter"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "remote_storage_adapter"
- image: ${_param:docker_image_remote_storage_adapter}
- ports:
- - 15015:${prometheus:remote_storage_adapter:bind:port}
- environment:
- RSA_BIND_PORT: ${prometheus:remote_storage_adapter:bind:port}
- RSA_BIND_ADDRESS: ${prometheus:remote_storage_adapter:bind:address}
- RSA_INFLUXDB_RETENTION_POLICY: 'lma'
- RSA_INFLUXDB_URL: ${_param:prometheus_influxdb_url}
- RSA_INFLUXDB_DB: ${_param:prometheus_influxdb_db}
- RSA_INFLUXDB_USERNAME: ${_param:prometheus_influxdb_username}
- RSA_INFLUXDB_PASSWORD: ${_param:prometheus_influxdb_password}
- alertmanager:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "alertmanager"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "alertmanager"
- image: ${_param:docker_image_alertmanager}
- ports:
- - 15011:${prometheus:alertmanager:bind:port}
- volumes:
- - ${prometheus:alertmanager:dir:config}:${_param:prometheus_alertmanager_config_directory}
- - ${prometheus:alertmanager:dir:data}:${_param:prometheus_alertmanager_data_directory}
- environment:
- ALERTMANAGER_CONFIG_DIR: ${_param:prometheus_alertmanager_config_directory}
- ALERTMANAGER_DATA_DIR: ${_param:prometheus_alertmanager_data_directory}
- ALERTMANAGER_BIND_PORT: ${prometheus:alertmanager:bind:port}
- ALERTMANAGER_BIND_ADDRESS: ${prometheus:alertmanager:bind:address}
- ALERTMANAGER_DISCOVERY_DOMAIN: 'monitoring_alertmanager'
- ALERTMANAGER_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15011"
- pushgateway:
- networks:
- - monitoring
- deploy:
- replicas: 2
- labels:
- com.mirantis.monitoring: "pushgateway"
- restart_policy:
- condition: any
- environment:
- PUSHGATEWAY_BIND_PORT: ${prometheus:pushgateway:bind:port}
- PUSHGATEWAY_BIND_ADDRESS: ${prometheus:pushgateway:bind:address}
- labels:
- com.mirantis.monitoring: "pushgateway"
- image: ${_param:docker_image_pushgateway}
- ports:
- - 15012:${prometheus:pushgateway:bind:port}
- server:
- networks:
- - monitoring
- deploy:
- mode: global
- labels:
- com.mirantis.monitoring: "prometheus"
- restart_policy:
- condition: any
- labels:
- com.mirantis.monitoring: "prometheus"
- image: ${_param:docker_image_prometheus}
- ports:
- - 15010:${prometheus:server:bind:port}
- volumes:
- - ${prometheus:server:dir:config}:${_param:prometheus_server_config_directory}
- - ${prometheus:server:dir:data}:${_param:prometheus_server_data_directory}
- environment:
- PROMETHEUS_CONFIG_DIR: ${_param:prometheus_server_config_directory}
- PROMETHEUS_DATA_DIR: ${_param:prometheus_server_data_directory}
- PROMETHEUS_BIND_PORT: ${prometheus:server:bind:port}
- PROMETHEUS_BIND_ADDRESS: ${prometheus:server:bind:address}
- PROMETHEUS_STORAGE_LOCAL_RETENTION: ${prometheus:server:storage:local:retention}
- PROMETHEUS_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15010"
- # Backward compatibility for Prometheus 1.7
- PROMETHEUS_STORAGE_LOCAL_ENGINE: ${_param:prometheus_storage_local_engine}
- PROMETHEUS_STORAGE_LOCAL_TARGET_HEAP_SIZE: ${_param:prometheus_storage_heap_size}
- PROMETHEUS_STORAGE_LOCAL_NUM_FINGERPRINT_MUTEXES: ${_param:prometheus_storage_num_fingerprint_mutexes}
- PROMETHEUS_USE_STATIC_DATADIR: "true"
+- system.docker.swarm.stack.monitoring.remote_storage_adapter
diff --git a/docker/swarm/stack/monitoring/prometheus_relay.yml b/docker/swarm/stack/monitoring/prometheus_relay.yml
new file mode 100644
index 0000000..315ba1d
--- /dev/null
+++ b/docker/swarm/stack/monitoring/prometheus_relay.yml
@@ -0,0 +1,27 @@
+parameters:
+ docker:
+ client:
+ stack:
+ monitoring:
+ network:
+ monitoring:
+ driver: overlay
+ driver_opts:
+ encrypted: 1
+ service:
+ relay:
+ networks:
+ - monitoring
+ deploy:
+ replicas: 2
+ labels:
+ com.mirantis.monitoring: "relay"
+ restart_policy:
+ condition: any
+ labels:
+ com.mirantis.monitoring: "relay"
+ image: ${_param:docker_image_prometheus_relay}
+ ports:
+ - 15016:8080
+ environment:
+ PROMETHEUS_RELAY_DNS: 'tasks.monitoring_server'
diff --git a/docker/swarm/stack/monitoring/pushgateway.yml b/docker/swarm/stack/monitoring/pushgateway.yml
new file mode 100644
index 0000000..af108a6
--- /dev/null
+++ b/docker/swarm/stack/monitoring/pushgateway.yml
@@ -0,0 +1,30 @@
+classes:
+- system.prometheus.pushgateway.container
+parameters:
+ docker:
+ client:
+ stack:
+ monitoring:
+ network:
+ monitoring:
+ driver: overlay
+ driver_opts:
+ encrypted: 1
+ service:
+ pushgateway:
+ networks:
+ - monitoring
+ deploy:
+ replicas: 2
+ labels:
+ com.mirantis.monitoring: "pushgateway"
+ restart_policy:
+ condition: any
+ environment:
+ PUSHGATEWAY_BIND_PORT: ${prometheus:pushgateway:bind:port}
+ PUSHGATEWAY_BIND_ADDRESS: ${prometheus:pushgateway:bind:address}
+ labels:
+ com.mirantis.monitoring: "pushgateway"
+ image: ${_param:docker_image_pushgateway}
+ ports:
+ - 15012:${prometheus:pushgateway:bind:port}
diff --git a/docker/swarm/stack/monitoring/remote_storage_adapter.yml b/docker/swarm/stack/monitoring/remote_storage_adapter.yml
new file mode 100644
index 0000000..04ffb90
--- /dev/null
+++ b/docker/swarm/stack/monitoring/remote_storage_adapter.yml
@@ -0,0 +1,35 @@
+classes:
+- system.prometheus.remote_storage_adapter.container
+parameters:
+ docker:
+ client:
+ stack:
+ monitoring:
+ network:
+ monitoring:
+ driver: overlay
+ driver_opts:
+ encrypted: 1
+ service:
+ remote_storage_adapter:
+ networks:
+ - monitoring
+ deploy:
+ replicas: 1
+ labels:
+ com.mirantis.monitoring: "remote_storage_adapter"
+ restart_policy:
+ condition: any
+ labels:
+ com.mirantis.monitoring: "remote_storage_adapter"
+ image: ${_param:docker_image_remote_storage_adapter}
+ ports:
+ - 15015:${prometheus:remote_storage_adapter:bind:port}
+ environment:
+ RSA_BIND_PORT: ${prometheus:remote_storage_adapter:bind:port}
+ RSA_BIND_ADDRESS: ${prometheus:remote_storage_adapter:bind:address}
+ RSA_INFLUXDB_RETENTION_POLICY: 'lma'
+ RSA_INFLUXDB_URL: ${_param:prometheus_influxdb_url}
+ RSA_INFLUXDB_DB: ${_param:prometheus_influxdb_db}
+ RSA_INFLUXDB_USERNAME: ${_param:prometheus_influxdb_username}
+ RSA_INFLUXDB_PASSWORD: ${_param:prometheus_influxdb_password}
diff --git a/docker/swarm/stack/pushkin.yml b/docker/swarm/stack/pushkin.yml
index 22a921d..55f1fd6 100644
--- a/docker/swarm/stack/pushkin.yml
+++ b/docker/swarm/stack/pushkin.yml
@@ -11,6 +11,7 @@
pushkin_db_host: ${_param:haproxy_postgresql_bind_host}
pushkin_smtp_host: smtp.gmail.com
pushkin_smtp_port: 587
+ pushkin_smtp_use_tls: true
webhook_from: your_sender@mail.com
pushkin_email_sender_password: your_sender_password
webhook_recipients: "recepient1@mail.com,recepient2@mail.com"
@@ -38,6 +39,7 @@
EMAIL_SENDER_PASSWORD: ${_param:pushkin_email_sender_password}
SMTP_HOST: ${_param:pushkin_smtp_host}
SMTP_PORT: ${_param:pushkin_smtp_port}
+ SMTP_USE_TLS: ${_param:pushkin_smtp_use_tls}
WEBHOOK_RECIPIENTS: ${_param:webhook_recipients}
WEBHOOK_LOGIN_ID: ${_param:webhook_login_id}
WEBHOOK_APPLICATION_ID: ${_param:webhook_application_id}
diff --git a/dogtag/server/cluster.yml b/dogtag/server/cluster.yml
new file mode 100644
index 0000000..5ef3f4c
--- /dev/null
+++ b/dogtag/server/cluster.yml
@@ -0,0 +1,3 @@
+classes:
+- service.dogtag.server.cluster
+- system.haproxy.proxy.listen.dogtag
diff --git a/fluentd/init.yml b/fluentd/init.yml
index ebf469a..c6238e8 100644
--- a/fluentd/init.yml
+++ b/fluentd/init.yml
@@ -2,5 +2,9 @@
- service.fluentd.agent.single
- system
parameters:
+ _param:
+ td_agent_log_rotate_size: 10000000
fluentd:
+ agent:
+ td_agent_log_rotate_size: ${_param:td_agent_log_rotate_size}
dollar: ${_param:dollarsign}
diff --git a/fluentd/label/default_metric/prometheus.yml b/fluentd/label/default_metric/prometheus.yml
index 9eb3b1b..a13b786 100644
--- a/fluentd/label/default_metric/prometheus.yml
+++ b/fluentd/label/default_metric/prometheus.yml
@@ -3,7 +3,7 @@
agent:
plugin:
fluent-plugin-prometheus:
- gem: ['fluent-plugin-prometheus']
+ deb: ['td-agent-additional-plugins']
config:
input:
prometheus:
diff --git a/fluentd/label/default_output/elasticsearch.yml b/fluentd/label/default_output/elasticsearch.yml
index 3c26d15..5960c49 100644
--- a/fluentd/label/default_output/elasticsearch.yml
+++ b/fluentd/label/default_output/elasticsearch.yml
@@ -9,6 +9,32 @@
config:
label:
default_output:
+ filter:
+ drop_nested_timestamp_and_sensitive_data:
+ tag: "openstack.**"
+ type: record_transformer
+ enable_ruby: true
+ remove_keys: '["_dummy_1", "_dummy_2", "_dummy_3"]'
+ record:
+ - name: _dummy_1
+ value: ${fluentd:dollar}{if record.has_key?("context"); record["context"].delete("timestamp") ; end; nil }
+ - name: _dummy_2
+ value: ${fluentd:dollar}{if record.has_key?("context"); record["context"].delete("auth_token"); end; nil}
+ - name: _dummy_3
+ value: ${fluentd:dollar}{if record.has_key?("context"); record["context"].delete("auth_token_info"); end; nil}
+ drop_hostname_field:
+ tag: "openstack.**"
+ type: record_transformer
+ enable_ruby: true
+ remove_keys: '["hostname"]'
+ change_pid_field_value:
+ tag: "haproxy.**"
+ type: record_transformer
+ enable_ruby: true
+ record:
+ - name: Pid
+ value: ${fluentd:dollar}{record["pid"]}
+ remove_keys: '["pid"]'
match:
elasticsearch_output:
host: ${_param:fluentd_elasticsearch_host}
diff --git a/galera/server/database/gnocchi.yml b/galera/server/database/gnocchi.yml
new file mode 100644
index 0000000..1ee36da
--- /dev/null
+++ b/galera/server/database/gnocchi.yml
@@ -0,0 +1,19 @@
+parameters:
+ _param:
+ mysql_gnocchi_ssl_option: []
+ mysql:
+ server:
+ database:
+ gnocchi:
+ encoding: utf8
+ users:
+ - name: gnocchi
+ password: ${_param:mysql_gnocchi_password}
+ host: '%'
+ rights: all
+ ssl_option: ${_param:mysql_gnocchi_ssl_option}
+ - name: gnocchi
+ password: ${_param:mysql_gnocchi_password}
+ host: ${_param:cluster_local_address}
+ rights: all
+ ssl_option: ${_param:mysql_gnocchi_ssl_option}
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/gerrit/client/init.yml b/gerrit/client/init.yml
index 8b097ee..5d719d4 100644
--- a/gerrit/client/init.yml
+++ b/gerrit/client/init.yml
@@ -59,13 +59,34 @@
score: -1..+1
"refs/tags/*":
actions:
+ - name: pushTag
+ group: Administrators
+ force: true
+ - name: pushTag
+ group: Project Owners
+ force: true
- name: pushSignedTag
group: devops-core
+ - name: pushSignedTag
+ group: Administrators
+ - name: pushSignedTag
+ group: Project Owners
- name: create
group: devops-core
+ - name: create
+ group: Administrators
- name: push
group: devops-core
+ - name: push
+ group: Administrators
+ force: true
- name: forgeCommitter
group: devops-core
+ - name: forgeCommitter
+ group: Administrators
- name: forgeAuthor
group: devops-core
+ - name: forgeAuthor
+ group: Administrators
+ - name: forgeServerAsCommitter
+ group: Administrators
diff --git a/gerrit/client/project/vnf_onboarding.yml b/gerrit/client/project/vnf_onboarding.yml
index 9cefb95..1e7d238 100644
--- a/gerrit/client/project/vnf_onboarding.yml
+++ b/gerrit/client/project/vnf_onboarding.yml
@@ -42,3 +42,11 @@
require_change_id: true
require_agreement: false
merge_content: true
+ vnf-onboarding/platform-tests:
+ enabled: true
+ description: VNF onboarding platform tests
+ upstream: https://gerrit.mcp.mirantis.net/vnf-onboarding/platform-tests
+ access: ${gerrit:client:default_access}
+ require_change_id: true
+ require_agreement: false
+ merge_content: true
diff --git a/glusterfs/client/volume/backup.yml b/glusterfs/client/volume/backup.yml
new file mode 100644
index 0000000..eded1ac
--- /dev/null
+++ b/glusterfs/client/volume/backup.yml
@@ -0,0 +1,13 @@
+parameters:
+ _param:
+ backup_glusterfs_service_host: ${_param:glusterfs_service_host}
+ glusterfs_node01_address: ${_param:cluster_node01_address}
+ glusterfs_node02_address: ${_param:cluster_node02_address}
+ glusterfs_node03_address: ${_param:cluster_node03_address}
+ glusterfs:
+ client:
+ volumes:
+ backup:
+ path: /srv/volumes/backup
+ server: ${_param:backup_glusterfs_service_host}
+ opts: "defaults,backup-volfile-servers=${_param:glusterfs_node01_address}:${_param:glusterfs_node02_address}:${_param:glusterfs_node03_address}"
diff --git a/glusterfs/client/volume/etcd.yml b/glusterfs/client/volume/etcd.yml
new file mode 100644
index 0000000..49a173f
--- /dev/null
+++ b/glusterfs/client/volume/etcd.yml
@@ -0,0 +1,15 @@
+parameters:
+ _param:
+ etcd_glusterfs_service_host: ${_param:glusterfs_service_host}
+ glusterfs_node01_address: ${_param:cluster_node01_address}
+ glusterfs_node02_address: ${_param:cluster_node02_address}
+ glusterfs_node03_address: ${_param:cluster_node03_address}
+ glusterfs:
+ client:
+ volumes:
+ etcd:
+ path: /srv/volumes/etcd
+ server: ${_param:etcd_glusterfs_service_host}
+ opts: "defaults,backup-volfile-servers=${_param:glusterfs_node01_address}:${_param:glusterfs_node02_address}:${_param:glusterfs_node03_address}"
+ user: 1000
+ group: 1000
diff --git a/glusterfs/client/volume/gnocchi.yml b/glusterfs/client/volume/gnocchi.yml
new file mode 100644
index 0000000..f6c3351
--- /dev/null
+++ b/glusterfs/client/volume/gnocchi.yml
@@ -0,0 +1,32 @@
+parameters:
+ _param:
+ gnocchi_glusterfs_service_host: ${_param:glusterfs_service_host}
+ glusterfs_node01_address: ${_param:cluster_node01_address}
+ glusterfs_node02_address: ${_param:cluster_node02_address}
+ glusterfs_node03_address: ${_param:cluster_node03_address}
+ glusterfs:
+ client:
+ volumes:
+ gnocchi:
+ path: /var/lib/gnocchi/
+ server: ${_param:gnocchi_glusterfs_service_host}
+ user: gnocchi
+ group: gnocchi
+ opts: "defaults,backup-volfile-servers=${_param:glusterfs_node01_address}:${_param:glusterfs_node02_address}:${_param:glusterfs_node03_address}"
+ linux:
+ system:
+ user:
+ gnocchi:
+ enabled: true
+ name: gnocchi
+ uid: 305
+ gid: 305
+ home: /var/lib/gnocchi
+ shell: /bin/false
+ system: True
+ group:
+ gnocchi:
+ enabled: true
+ name: gnocchi
+ gid: 305
+ system: True
diff --git a/glusterfs/client/volume/kqueen.yml b/glusterfs/client/volume/kqueen.yml
new file mode 100644
index 0000000..4417e11
--- /dev/null
+++ b/glusterfs/client/volume/kqueen.yml
@@ -0,0 +1,15 @@
+parameters:
+ _param:
+ kqueen_glusterfs_service_host: ${_param:glusterfs_service_host}
+ glusterfs_node01_address: ${_param:cluster_node01_address}
+ glusterfs_node02_address: ${_param:cluster_node02_address}
+ glusterfs_node03_address: ${_param:cluster_node03_address}
+ glusterfs:
+ client:
+ volumes:
+ kqueen:
+ path: /srv/volumes/kqueen
+ server: ${_param:kqueen_glusterfs_service_host}
+ opts: "defaults,backup-volfile-servers=${_param:glusterfs_node01_address}:${_param:glusterfs_node02_address}:${_param:glusterfs_node03_address}"
+ user: 1000
+ group: 1000
diff --git a/glusterfs/server/cluster.yml b/glusterfs/server/cluster.yml
index 87aa0e9..16453c9 100644
--- a/glusterfs/server/cluster.yml
+++ b/glusterfs/server/cluster.yml
@@ -2,6 +2,8 @@
- service.glusterfs.server
parameters:
glusterfs:
+ monitoring:
+ glusterfs_service_host: ${_param:glusterfs_service_host}
_support:
iptables:
enabled: false
diff --git a/glusterfs/server/volume/backup.yml b/glusterfs/server/volume/backup.yml
new file mode 100644
index 0000000..22e59e2
--- /dev/null
+++ b/glusterfs/server/volume/backup.yml
@@ -0,0 +1,18 @@
+parameters:
+ glusterfs:
+ server:
+ volumes:
+ backup:
+ storage: /srv/glusterfs/backup
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/backup
+ - ${_param:cluster_node02_address}:/srv/glusterfs/backup
+ - ${_param:cluster_node03_address}:/srv/glusterfs/backup
+ options:
+ cluster.readdir-optimize: On
+ nfs.disable: On
+ network.remote-dio: On
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
+ cluster.favorite-child-policy: mtime
diff --git a/glusterfs/server/volume/etcd.yml b/glusterfs/server/volume/etcd.yml
new file mode 100644
index 0000000..874119e
--- /dev/null
+++ b/glusterfs/server/volume/etcd.yml
@@ -0,0 +1,18 @@
+parameters:
+ glusterfs:
+ server:
+ volumes:
+ etcd:
+ storage: /srv/glusterfs/etcd
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/etcd
+ - ${_param:cluster_node02_address}:/srv/glusterfs/etcd
+ - ${_param:cluster_node03_address}:/srv/glusterfs/etcd
+ options:
+ cluster.readdir-optimize: On
+ nfs.disable: On
+ network.remote-dio: On
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
+ cluster.favorite-child-policy: mtime
diff --git a/glusterfs/server/volume/gnocchi.yml b/glusterfs/server/volume/gnocchi.yml
new file mode 100644
index 0000000..f8f5b6a
--- /dev/null
+++ b/glusterfs/server/volume/gnocchi.yml
@@ -0,0 +1,18 @@
+parameters:
+ glusterfs:
+ server:
+ volumes:
+ gnocchi:
+ storage: /srv/glusterfs/gnocchi
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/gnocchi
+ - ${_param:cluster_node02_address}:/srv/glusterfs/gnocchi
+ - ${_param:cluster_node03_address}:/srv/glusterfs/gnocchi
+ options:
+ cluster.readdir-optimize: On
+ nfs.disable: On
+ network.remote-dio: On
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
+ cluster.favorite-child-policy: mtime
diff --git a/glusterfs/server/volume/kqueen.yml b/glusterfs/server/volume/kqueen.yml
new file mode 100644
index 0000000..0d09c51
--- /dev/null
+++ b/glusterfs/server/volume/kqueen.yml
@@ -0,0 +1,18 @@
+parameters:
+ glusterfs:
+ server:
+ volumes:
+ kqueen:
+ storage: /srv/glusterfs/kqueen
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/kqueen
+ - ${_param:cluster_node02_address}:/srv/glusterfs/kqueen
+ - ${_param:cluster_node03_address}:/srv/glusterfs/kqueen
+ options:
+ cluster.readdir-optimize: On
+ nfs.disable: On
+ network.remote-dio: On
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
+ cluster.favorite-child-policy: mtime
diff --git a/gnocchi/common/coordination/redis.yml b/gnocchi/common/coordination/redis.yml
new file mode 100644
index 0000000..673d9bd
--- /dev/null
+++ b/gnocchi/common/coordination/redis.yml
@@ -0,0 +1,7 @@
+parameters:
+ _param:
+ gnocchi_coordination_url: redis://${_param:single_address}:6379
+ gnocchi:
+ common:
+ coordination_backend:
+ url: ${_param:gnocchi_coordination_url}
diff --git a/gnocchi/common/storage/file.yml b/gnocchi/common/storage/file.yml
new file mode 100644
index 0000000..c035723
--- /dev/null
+++ b/gnocchi/common/storage/file.yml
@@ -0,0 +1,9 @@
+parameters:
+ _param:
+ gnocchi_storage_file_basepath: /var/lib/gnocchi
+ gnocchi_storage_driver: file
+ gnocchi:
+ common:
+ storage:
+ driver: ${_param:gnocchi_storage_driver}
+ file_basepath: ${_param:gnocchi_storage_file_basepath}
diff --git a/gnocchi/common/storage/incoming/file.yml b/gnocchi/common/storage/incoming/file.yml
new file mode 100644
index 0000000..52d57f7
--- /dev/null
+++ b/gnocchi/common/storage/incoming/file.yml
@@ -0,0 +1,10 @@
+parameters:
+ _param:
+ gnocchi_storage_incoming_file_basepath: /var/lib/gnocchi
+ gnocchi_storage_incoming_driver: file
+ gnocchi:
+ common:
+ storage:
+ incoming:
+ driver: ${_param:gnocchi_storage_incoming_driver}
+ file_basepath: ${_param:gnocchi_storage_incoming_file_basepath}
diff --git a/gnocchi/common/storage/incoming/redis.yml b/gnocchi/common/storage/incoming/redis.yml
new file mode 100644
index 0000000..d0f04d7
--- /dev/null
+++ b/gnocchi/common/storage/incoming/redis.yml
@@ -0,0 +1,10 @@
+parameters:
+ _param:
+ gnocchi_storage_incoming_redis_url: redis://${_param:single_address}:6379
+ gnocchi_storage_incoming_driver: redis
+ gnocchi:
+ common:
+ storage:
+ incoming:
+ driver: ${_param:gnocchi_storage_incoming_driver}
+ redis_url: ${_param:gnocchi_storage_incoming_redis_url}
\ No newline at end of file
diff --git a/gnocchi/common/storage/redis.yml b/gnocchi/common/storage/redis.yml
new file mode 100644
index 0000000..d71fcf0
--- /dev/null
+++ b/gnocchi/common/storage/redis.yml
@@ -0,0 +1,9 @@
+parameters:
+ _param:
+ gnocchi_storage_redis_url: redis://${_param:single_address}:6379
+ gnocchi_storage_driver: redis
+ gnocchi:
+ common:
+ storage:
+ driver: ${_param:gnocchi_storage_driver}
+ redis_url: ${_param:gnocchi_storage_redis_url}
\ No newline at end of file
diff --git a/gnocchi/server/cluster.yml b/gnocchi/server/cluster.yml
new file mode 100644
index 0000000..062b60e
--- /dev/null
+++ b/gnocchi/server/cluster.yml
@@ -0,0 +1,25 @@
+classes:
+- service.gnocchi.server.cluster
+- service.haproxy.proxy.single
+- system.apache.server.site.gnocchi
+- system.haproxy.proxy.listen.openstack.gnocchi
+- system.keepalived.cluster.instance.openstack_telemetry_vip
+parameters:
+ _param:
+ gnocchi_memcached_node01_address: ${_param:cluster_node01_address}
+ gnocchi_memcached_node02_address: ${_param:cluster_node02_address}
+ gnocchi_memcached_node03_address: ${_param:cluster_node03_address}
+ gnocchi:
+ server:
+ enable_proxy_headers_parsing: true
+ identity:
+ host: ${_param:openstack_control_address}
+ cache:
+ engine: memcached
+ members:
+ - host: ${_param:gnocchi_memcached_node01_address}
+ port: 11211
+ - host: ${_param:gnocchi_memcached_node02_address}
+ port: 11211
+ - host: ${_param:gnocchi_memcached_node03_address}
+ port: 11211
diff --git a/gnocchi/server/single.yml b/gnocchi/server/single.yml
new file mode 100644
index 0000000..035491e
--- /dev/null
+++ b/gnocchi/server/single.yml
@@ -0,0 +1,2 @@
+classes:
+- service.gnocchi.server.single
diff --git a/gnocchi/statsd/single.yml b/gnocchi/statsd/single.yml
new file mode 100644
index 0000000..4be519f
--- /dev/null
+++ b/gnocchi/statsd/single.yml
@@ -0,0 +1,2 @@
+classes:
+- service.gnocchi.statsd.single
\ No newline at end of file
diff --git a/haproxy/proxy/listen/cicd/etcd.yml b/haproxy/proxy/listen/cicd/etcd.yml
new file mode 100644
index 0000000..27d8540
--- /dev/null
+++ b/haproxy/proxy/listen/cicd/etcd.yml
@@ -0,0 +1,37 @@
+parameters:
+ _param:
+ haproxy_etcd_bind_host: ${_param:haproxy_bind_address}
+ haproxy_etcd_bind_port: 4001
+ haproxy_etcd_exposed_port: 14001
+ haproxy_etcd_ssl:
+ enabled: false
+ haproxy:
+ proxy:
+ timeout:
+ queue: '8h'
+ client: '8h'
+ server: '8h'
+ check: '10s'
+ listen:
+ etcd:
+ mode: http
+ balance: source
+ options:
+ - tcp-check
+ binds:
+ - address: ${_param:haproxy_etcd_bind_host}
+ port: ${_param:haproxy_etcd_bind_port}
+ ssl: ${_param:haproxy_etcd_ssl}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: ${_param:haproxy_etcd_exposed_port}
+ params: check port ${_param:haproxy_etcd_exposed_port}
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: ${_param:haproxy_etcd_exposed_port}
+ params: backup check port ${_param:haproxy_etcd_exposed_port}
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: ${_param:haproxy_etcd_exposed_port}
+ params: backup check port ${_param:haproxy_etcd_exposed_port}
diff --git a/haproxy/proxy/listen/cicd/kqueen.yml b/haproxy/proxy/listen/cicd/kqueen.yml
new file mode 100644
index 0000000..52b02d0
--- /dev/null
+++ b/haproxy/proxy/listen/cicd/kqueen.yml
@@ -0,0 +1,76 @@
+parameters:
+ _param:
+ haproxy_kqueen_api_bind_host: ${_param:haproxy_bind_address}
+ haproxy_kqueen_api_bind_port: 5000
+ haproxy_kqueen_api_exposed_port: 15000
+ haproxy_kqueen_ui_bind_host: ${_param:haproxy_bind_address}
+ haproxy_kqueen_ui_bind_port: 5080
+ haproxy_kqueen_ui_exposed_port: 15080
+ haproxy_kqueen_api_ssl:
+ enabled: false
+ haproxy_kqueen_ui_ssl:
+ enabled: false
+ haproxy:
+ proxy:
+ listen:
+ kqueen_api:
+ mode: http
+ options:
+ - forwardfor
+ - httpchk GET /api/v1/health
+ - httpclose
+ - httplog
+ balance: source
+ http_request:
+ - action: "add-header X-Forwarded-Proto https"
+ condition: "if { ssl_fc }"
+ sticks:
+ - http-check expect string 'Gutten tag!'
+ binds:
+ - address: ${_param:haproxy_kqueen_api_bind_host}
+ port: ${_param:haproxy_kqueen_api_bind_port}
+ ssl: ${_param:haproxy_kqueen_api_ssl}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: ${_param:haproxy_kqueen_api_exposed_port}
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: ${_param:haproxy_kqueen_api_exposed_port}
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: ${_param:haproxy_kqueen_api_exposed_port}
+ params: backup check
+ kqueen_ui:
+ mode: http
+ balance: source
+ options:
+ - forwardfor
+ - httpchk GET /ui/login
+ - httpclose
+ - httplog
+ balance: source
+ http_request:
+ - action: "add-header X-Forwarded-Proto https"
+ condition: "if { ssl_fc }"
+ sticks:
+ - http-check expect string 'KQueen'
+ binds:
+ - address: ${_param:haproxy_kqueen_ui_bind_host}
+ port: ${_param:haproxy_kqueen_ui_bind_port}
+ ssl: ${_param:haproxy_kqueen_ui_ssl}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: ${_param:haproxy_kqueen_ui_exposed_port}
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: ${_param:haproxy_kqueen_ui_exposed_port}
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: ${_param:haproxy_kqueen_ui_exposed_port}
+ params: backup check
diff --git a/haproxy/proxy/listen/dogtag.yml b/haproxy/proxy/listen/dogtag.yml
new file mode 100644
index 0000000..90761c0
--- /dev/null
+++ b/haproxy/proxy/listen/dogtag.yml
@@ -0,0 +1,25 @@
+parameters:
+ _param:
+ haproxy_dogtag_bind_port: ${_param:cluster_dogtag_port}
+ haproxy_dogtag_source_port: ${_param:cluster_dogtag_port}
+ haproxy:
+ proxy:
+ listen:
+ dogtag:
+ mode: tcp
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: ${_param:haproxy_dogtag_bind_port}
+ servers:
+ - name: ${_param:cluster_node01_hostname}
+ host: ${_param:cluster_node01_address}
+ port: ${_param:haproxy_dogtag_source_port}
+ params: check
+ - name: ${_param:cluster_node02_hostname}
+ host: ${_param:cluster_node02_address}
+ port: ${_param:haproxy_dogtag_source_port}
+ params: check
+ - name: ${_param:cluster_node03_hostname}
+ host: ${_param:cluster_node03_address}
+ port: ${_param:haproxy_dogtag_source_port}
+ params: check
\ No newline at end of file
diff --git a/haproxy/proxy/listen/openstack/gnocchi.yml b/haproxy/proxy/listen/openstack/gnocchi.yml
new file mode 100644
index 0000000..ec2bb20
--- /dev/null
+++ b/haproxy/proxy/listen/openstack/gnocchi.yml
@@ -0,0 +1,23 @@
+parameters:
+ haproxy:
+ proxy:
+ listen:
+ gnocchi_api:
+ type: openstack-service
+ service_name: gnocchi
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: 8041
+ servers:
+ - name: ${_param:cluster_node01_hostname}
+ host: ${_param:cluster_node01_address}
+ port: 8041
+ params: check
+ - name: ${_param:cluster_node02_hostname}
+ host: ${_param:cluster_node02_address}
+ port: 8041
+ params: check
+ - name: ${_param:cluster_node03_hostname}
+ host: ${_param:cluster_node03_address}
+ port: 8041
+ params: check
\ No newline at end of file
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/haproxy/proxy/listen/openstack/nova-placement.yml b/haproxy/proxy/listen/openstack/nova-placement.yml
index 9fec963..58c9dd2 100644
--- a/haproxy/proxy/listen/openstack/nova-placement.yml
+++ b/haproxy/proxy/listen/openstack/nova-placement.yml
@@ -2,18 +2,21 @@
haproxy:
proxy:
listen:
+ # Nova placement API returns 401 when doing GET to root URL, while
+ # other serivces normally returns 200 and API versions data.
nova_placement_api:
mode: http
- binds:
- - address: ${_param:cluster_vip_address}
- port: 8778
+ service_name: nova_placement
options:
- - httpclose
- - httplog
+ - httpclose
+ - httplog
health-check:
http:
options:
- expect status 401
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: 8778
servers:
- name: ${_param:cluster_node01_hostname}
host: ${_param:cluster_node01_address}
diff --git a/haproxy/proxy/listen/openstack/panko.yml b/haproxy/proxy/listen/openstack/panko.yml
new file mode 100644
index 0000000..51eb030
--- /dev/null
+++ b/haproxy/proxy/listen/openstack/panko.yml
@@ -0,0 +1,23 @@
+parameters:
+ haproxy:
+ proxy:
+ listen:
+ panko_api:
+ type: general-service
+ check: false
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: 8977
+ servers:
+ - name: ${_param:cluster_node01_hostname}
+ host: ${_param:cluster_node01_address}
+ port: 8977
+ params: check
+ - name: ${_param:cluster_node02_hostname}
+ host: ${_param:cluster_node02_address}
+ port: 8977
+ params: check
+ - name: ${_param:cluster_node03_hostname}
+ host: ${_param:cluster_node03_address}
+ port: 8977
+ params: check
\ No newline at end of file
diff --git a/haproxy/proxy/listen/openstack/placement.yml b/haproxy/proxy/listen/openstack/placement.yml
new file mode 100644
index 0000000..f3b2b99
--- /dev/null
+++ b/haproxy/proxy/listen/openstack/placement.yml
@@ -0,0 +1,26 @@
+# Starting with Nova (17.0.0) Queens - accessing to / of placement service
+# returns 200 with version data instead of 401 as it was before.
+# This file should be included for nova/placement higher than Queens.
+parameters:
+ haproxy:
+ proxy:
+ listen:
+ placement_api:
+ type: openstack-service
+ service_name: placement
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: 8778
+ servers:
+ - name: ${_param:cluster_node01_hostname}
+ host: ${_param:cluster_node01_address}
+ port: 8778
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+ - name: ${_param:cluster_node02_hostname}
+ host: ${_param:cluster_node02_address}
+ port: 8778
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+ - name: ${_param:cluster_node03_hostname}
+ host: ${_param:cluster_node03_address}
+ port: 8778
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
diff --git a/haproxy/proxy/listen/radosgw.yml b/haproxy/proxy/listen/radosgw.yml
index ecdeb6b..434555d 100644
--- a/haproxy/proxy/listen/radosgw.yml
+++ b/haproxy/proxy/listen/radosgw.yml
@@ -2,6 +2,12 @@
_param:
haproxy_radosgw_bind_port: 8080
haproxy_radosgw_source_port: 8080
+ ceph_rgw_node01_hostname: ${_param:cluster_node01_hostname}
+ ceph_rgw_node02_hostname: ${_param:cluster_node02_hostname}
+ ceph_rgw_node03_hostname: ${_param:cluster_node03_hostname}
+ ceph_rgw_node01_address: ${_param:cluster_node01_address}
+ ceph_rgw_node02_address: ${_param:cluster_node02_address}
+ ceph_rgw_node03_address: ${_param:cluster_node03_address}
haproxy:
proxy:
listen:
@@ -12,15 +18,15 @@
- address: ${_param:cluster_vip_address}
port: ${_param:haproxy_radosgw_bind_port}
servers:
- - name: ${_param:cluster_node01_hostname}
- host: ${_param:cluster_node01_address}
+ - name: ${_param:ceph_rgw_node01_hostname}
+ host: ${_param:ceph_rgw_node01_address}
port: ${_param:haproxy_radosgw_source_port}
params: check
- - name: ${_param:cluster_node02_hostname}
- host: ${_param:cluster_node02_address}
+ - name: ${_param:ceph_rgw_node02_hostname}
+ host: ${_param:ceph_rgw_node02_address}
port: ${_param:haproxy_radosgw_source_port}
params: check
- - name: ${_param:cluster_node03_hostname}
- host: ${_param:cluster_node03_address}
+ - name: ${_param:ceph_rgw_node03_hostname}
+ host: ${_param:ceph_rgw_node03_address}
port: ${_param:haproxy_radosgw_source_port}
params: check
diff --git a/haproxy/proxy/listen/stacklight/prometheus_relay.yml b/haproxy/proxy/listen/stacklight/prometheus_relay.yml
new file mode 100644
index 0000000..23c9286
--- /dev/null
+++ b/haproxy/proxy/listen/stacklight/prometheus_relay.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ cluster_prometheus_relay_port: 8080
+ haproxy:
+ proxy:
+ listen:
+ prometheus_relay:
+ service_name: prometheus_relay
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: ${_param:cluster_prometheus_relay_port}
+ servers:
+ - name: ${_param:cluster_node01_hostname}
+ host: ${_param:cluster_node01_address}
+ port: ${_param:prometheus_relay_bind_port}
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+ - name: ${_param:cluster_node02_hostname}
+ host: ${_param:cluster_node02_address}
+ port: ${_param:prometheus_relay_bind_port}
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+ - name: ${_param:cluster_node03_hostname}
+ host: ${_param:cluster_node03_address}
+ port: ${_param:prometheus_relay_bind_port}
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
diff --git a/heat/server/cluster.yml b/heat/server/cluster.yml
index 8e38f4f..5829aee 100644
--- a/heat/server/cluster.yml
+++ b/heat/server/cluster.yml
@@ -5,7 +5,8 @@
- system.haproxy.proxy.listen.openstack.heat
parameters:
_param:
- cluster_public_protocol: https
+ cluster_public_protocol: 'https'
+ cluster_internal_protocol: 'http'
linux:
system:
package:
@@ -54,6 +55,7 @@
tenant: service
user: heat
password: ${_param:keystone_heat_password}
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
port: 5672
diff --git a/heat/server/resource/networking_bgpvpn.yml b/heat/server/resource/networking_bgpvpn.yml
new file mode 100644
index 0000000..4fbd851
--- /dev/null
+++ b/heat/server/resource/networking_bgpvpn.yml
@@ -0,0 +1,11 @@
+parameters:
+ linux:
+ system:
+ package:
+ python-networking-bgpvpn:
+ version: latest
+ heat:
+ server:
+ dir:
+ plugins:
+ - /usr/lib/python2.7/dist-packages/networking_bgpvpn_heat
\ No newline at end of file
diff --git a/horizon/server/plugin/manila.yml b/horizon/server/plugin/manila.yml
new file mode 100644
index 0000000..ec00da6
--- /dev/null
+++ b/horizon/server/plugin/manila.yml
@@ -0,0 +1,17 @@
+parameters:
+ horizon:
+ server:
+ plugin:
+ manila:
+ source:
+ engine: pkg
+ name: python-manila-ui
+ policy:
+ share:
+ source: file
+ name: manila_policy.json
+ enabled: true
+ sharev2:
+ source: file
+ name: manila_policy.json
+ enabled: true
diff --git a/horizon/server/plugin/neutron_bgpvpn.yml b/horizon/server/plugin/neutron_bgpvpn.yml
new file mode 100644
index 0000000..7ad75ff
--- /dev/null
+++ b/horizon/server/plugin/neutron_bgpvpn.yml
@@ -0,0 +1,8 @@
+parameters:
+ horizon:
+ server:
+ plugin:
+ bgpvpn:
+ source:
+ engine: pkg
+ name: python-networking-bgpvpn
diff --git a/jenkins/client/approved_scripts.yml b/jenkins/client/approved_scripts.yml
index 80cfd95..8122e8c 100644
--- a/jenkins/client/approved_scripts.yml
+++ b/jenkins/client/approved_scripts.yml
@@ -15,6 +15,7 @@
- method groovy.util.Node attributes
- method groovy.util.XmlParser parse java.io.File
- method groovy.util.XmlParser parseText java.lang.String
+ - method hudson.EnvVars get java.lang.String java.lang.String
- method hudson.PluginManager getPlugins
- method hudson.PluginWrapper getShortName
- method hudson.model.Hudson getSlaves
diff --git a/jenkins/client/job/debian/packages/extra.yml b/jenkins/client/job/debian/packages/extra.yml
index 61d7ee2..0a21a55 100644
--- a/jenkins/client/job/debian/packages/extra.yml
+++ b/jenkins/client/job/debian/packages/extra.yml
@@ -205,6 +205,10 @@
dist: xenial
build: pipeline
branch: debian/xenial
+ - package: python-backports.ssl-match-hostname
+ dist: xenial
+ build: pipeline
+ branch: debian/xenial
template:
type: workflow-scm
concurrent: false
diff --git a/jenkins/client/job/debian/packages/salt-multi.yml b/jenkins/client/job/debian/packages/salt-multi.yml
index a81302e..e185b60 100644
--- a/jenkins/client/job/debian/packages/salt-multi.yml
+++ b/jenkins/client/job/debian/packages/salt-multi.yml
@@ -111,10 +111,10 @@
default: 'true'
EXTRA_REPO_URL:
type: string
- default: "deb ${_param:jenkins_aptly_url}/{{dist}}/ testing salt salt-latest"
+ default: "deb http://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3 xenial main; deb ${_param:jenkins_aptly_url}/{{dist}}/ testing salt"
EXTRA_REPO_KEY_URL:
type: string
- default: "${_param:jenkins_aptly_url}/public.gpg"
+ default: "https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3/SALTSTACK-GPG-KEY.pub; ${_param:jenkins_aptly_url}/public.gpg"
APTLY_URL:
type: string
default: "${_param:jenkins_aptly_api_url}"
diff --git a/jenkins/client/job/debian/packages/salt.yml b/jenkins/client/job/debian/packages/salt.yml
index 6089195..ad35faa 100644
--- a/jenkins/client/job/debian/packages/salt.yml
+++ b/jenkins/client/job/debian/packages/salt.yml
@@ -5,680 +5,897 @@
build-debian-salt-formula:
name: build-debian-salt-formula-{{name}}-ubuntu-{{dist}}
jobs:
- - name: aide
- upload_source_package: false
- dist: trusty
- name: aodh
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: apache
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: aptcacher
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: aptly
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: artifactory
upload_source_package: false
- dist: trusty
- - name: auditd
- upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: avinetworks
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: backupninja
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: baremetal-simulator
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: billometer
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: bind
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: bird
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: cadf
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: calico
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: cassandra
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: ccp
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: ceph
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: chrony
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: collectd
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: debmirror
upload_source_package: true
+ upload_to_aptly: true
dist: trusty
- name: dekapod
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: designate
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: devops-portal
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: docker
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: dogtag
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: dovecot
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: elasticsearch
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: etcd
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: fluentbit
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: fluentd
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: foreman
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: freeipa
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: galera
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: gerrit
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: git
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: gitlab
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: glusterfs
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: grafana
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: graphite
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: haproxy
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: heka
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: heketi
upload_source_package: true
+ upload_to_aptly: true
dist: trusty
- name: influxdb
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: iptables
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: ironic
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: isc-dhcp
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: java
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: jenkins
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: kedb
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: keepalived
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: kibana
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: letsencrypt
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: libvirt
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: linux
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: lldp
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: logrotate
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: maas
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: magnum
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: manila
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: memcached
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: mirascan
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: midonet
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: monasca
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: mongodb
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: murano
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: mysql
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: nagios
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: network
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: nfs
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: nginx
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: nodejs
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: ntp
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: octavia
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: opencontrail
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: openldap
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: openssh
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: openvpn
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: openvstorage
upload_source_package: false
+ upload_to_aptly: true
+ dist: trusty
+ - name: oslo-templates
+ upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: owncloud
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: postfix
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: postgresql
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: powerdns
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: pritunl
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: prometheus
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: python
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: rabbitmq
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: reclass
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: redis
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: roundcube
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: rsync
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: rsyslog
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: rundeck
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: runtest
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: sahara
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: salt
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: sensu
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: sentry
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: shibboleth
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: sphinx
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: spinnaker
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: statsd
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: supervisor
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: taiga
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: telegraf
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: tinyproxy
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: tftpd-hpa
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: varnish
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: xtrabackup
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- name: zookeeper
upload_source_package: false
+ upload_to_aptly: true
dist: trusty
- - name: aide
- upload_source_package: true
- dist: xenial
- name: aodh
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: apache
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: aptcacher
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: aptly
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: artifactory
upload_source_package: true
- dist: xenial
- - name: auditd
- upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: avinetworks
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: barbican
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: baremetal-simulator
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: backupninja
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: billometer
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: bind
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: bird
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: cadf
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: calico
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: cassandra
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: ccp
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: ceph
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: chrony
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: collectd
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: debmirror
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: dekapod
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: designate
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: devops-portal
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: docker
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: dogtag
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: dovecot
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: elasticsearch
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: etcd
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: fluentbit
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: fluentd
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: foreman
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: freeipa
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: galera
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: gerrit
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: git
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: gitlab
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: glusterfs
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: gnocchi
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: grafana
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: graphite
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: haproxy
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: heka
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: heketi
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: helm
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: influxdb
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: iptables
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: ironic
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: isc-dhcp
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: java
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: jenkins
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: kedb
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: keepalived
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: kibana
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: letsencrypt
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: libvirt
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: linux
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: lldp
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: logrotate
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: maas
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: magnum
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: manila
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: memcached
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: mirascan
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: midonet
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: monasca
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: mongodb
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: murano
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: mysql
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: nagios
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: network
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: nfs
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: nginx
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: nodejs
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: ntp
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: octavia
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: opencontrail
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: openldap
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: openssh
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: openvpn
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: openvstorage
upload_source_package: true
+ upload_to_aptly: true
+ dist: xenial
+ - name: oslo-templates
+ upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: owncloud
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: panko
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: postfix
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: postgresql
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: pritunl
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: prometheus
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: powerdns
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: python
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: rabbitmq
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: reclass
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: redis
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: roundcube
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: rsync
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: rundeck
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: rsyslog
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: runtest
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: sahara
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: salt
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: sensu
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: sentry
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: shibboleth
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: sphinx
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: spinnaker
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: statsd
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: supervisor
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: taiga
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: telegraf
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: tinyproxy
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: tftpd-hpa
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: varnish
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: watchdog
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: xtrabackup
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
- name: zookeeper
upload_source_package: true
+ upload_to_aptly: true
dist: xenial
template:
discard:
@@ -725,10 +942,10 @@
default: '~{{dist}}1'
EXTRA_REPO_URL:
type: string
- default: "deb ${_param:jenkins_aptly_url}/{{dist}}/ testing salt salt-latest"
+ default: "deb http://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3 xenial main; deb ${_param:jenkins_aptly_url}/{{dist}}/ testing salt"
EXTRA_REPO_KEY_URL:
type: string
- default: "${_param:jenkins_aptly_url}/public.gpg"
+ default: "https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3/SALTSTACK-GPG-KEY.pub; ${_param:jenkins_aptly_url}/public.gpg"
APTLY_URL:
type: string
default: "${_param:jenkins_aptly_api_url}"
@@ -752,7 +969,7 @@
default: '{{upload_source_package}}'
UPLOAD_APTLY:
type: boolean
- default: 'true'
+ default: '{{upload_to_aptly}}'
DEBUG:
type: boolean
default: 'false'
diff --git a/jenkins/client/job/deploy/lab/cleanup.yml b/jenkins/client/job/deploy/lab/cleanup.yml
index 0db6463..6ecaeee 100644
--- a/jenkins/client/job/deploy/lab/cleanup.yml
+++ b/jenkins/client/job/deploy/lab/cleanup.yml
@@ -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/component/aaa.yml b/jenkins/client/job/deploy/lab/component/aaa.yml
index 1c640d5..26a66fd 100644
--- a/jenkins/client/job/deploy/lab/component/aaa.yml
+++ b/jenkins/client/job/deploy/lab/component/aaa.yml
@@ -8,4 +8,4 @@
stack_type: heat
stack_install: core,aaa
stack_test: ""
- job_timer: ""
+ job_timer: "H H(0-6) * * *"
diff --git a/jenkins/client/job/deploy/lab/component/drivetrain.yml b/jenkins/client/job/deploy/lab/component/drivetrain.yml
index 945ac4a..6d05945 100644
--- a/jenkins/client/job/deploy/lab/component/drivetrain.yml
+++ b/jenkins/client/job/deploy/lab/component/drivetrain.yml
@@ -8,7 +8,7 @@
stack_type: heat
stack_install: core
stack_test: ""
- job_timer: ""
+ job_timer: "H H(0-6) * * *"
- stack_name: drivetrain_ha_clusters
stack_env: devcloud
stack_type: heat
diff --git a/jenkins/client/job/deploy/lab/component/kubernetes.yml b/jenkins/client/job/deploy/lab/component/kubernetes.yml
index 62526f7..8cbf766 100644
--- a/jenkins/client/job/deploy/lab/component/kubernetes.yml
+++ b/jenkins/client/job/deploy/lab/component/kubernetes.yml
@@ -25,7 +25,7 @@
stack_env: devcloud
stack_type: heat
stack_install: core,k8s,calico
- stack_test: ""
+ stack_test: "k8s"
job_timer: "H H(0-6) * * *"
- stack_name: k8s_ha_contrail
stack_env: devcloud
diff --git a/jenkins/client/job/deploy/lab/deploy.yml b/jenkins/client/job/deploy/lab/deploy.yml
index 9a04876..6e716f9 100644
--- a/jenkins/client/job/deploy/lab/deploy.yml
+++ b/jenkins/client/job/deploy/lab/deploy.yml
@@ -55,6 +55,10 @@
STACK_COMPUTE_COUNT:
type: string
default: '2'
+ STACK_CLUSTER_NAME:
+ type: string
+ default: ""
+ description: "Cluster name to use from reclass"
STACK_TEMPLATE:
type: string
@@ -161,7 +165,7 @@
default: "http://127.0.0.1:8080"
TEST_K8S_CONFORMANCE_IMAGE:
type: string
- default: "docker-dev-virtual.docker.mirantis.net/mirantis/kubernetes/k8s-conformance:v1.7.5-2_1504192939316"
+ default: "docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/k8s-conformance:v1.8.9-7"
TEST_TEMPEST_IMAGE:
type: string
diff --git a/jenkins/client/job/deploy/lab/init.yml b/jenkins/client/job/deploy/lab/init.yml
index 52ec947..6d197a1 100644
--- a/jenkins/client/job/deploy/lab/init.yml
+++ b/jenkins/client/job/deploy/lab/init.yml
@@ -1,6 +1,5 @@
classes:
- system.jenkins.client.job.deploy.lab.cicd
- - system.jenkins.client.job.deploy.lab.test-devops-portal-cicd
- system.jenkins.client.job.deploy.lab.demo
- system.jenkins.client.job.deploy.lab.cleanup
- system.jenkins.client.job.deploy.lab.release.mcp05
diff --git a/jenkins/client/job/deploy/lab/release/mcp11.yml b/jenkins/client/job/deploy/lab/release/mcp11.yml
index 657e1d1..7f12594 100644
--- a/jenkins/client/job/deploy/lab/release/mcp11.yml
+++ b/jenkins/client/job/deploy/lab/release/mcp11.yml
@@ -27,6 +27,24 @@
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
+ stack_type: heat
+ stack_test: ""
+ job_timer: ""
+ - stack_name: virtual_mcp11_aio_telemetry
+ stack_env: devcloud
+ stack_install: core,openstack,ovs
+ stack_type: heat
+ stack_test: ""
+ job_timer: ""
- stack_name: virtual_mcp11_aio
stack_env: devcloud
stack_install: core,openstack,ovs
@@ -81,3 +99,27 @@
stack_type: heat
stack_test: ""
job_timer: ""
+ - stack_name: virtual_mcp_pike_dvr
+ stack_env: devcloud
+ stack_install: core,openstack,dvr
+ stack_type: heat
+ stack_test: ""
+ job_timer: ""
+ - stack_name: virtual_mcp_pike_dvr_ssl
+ stack_env: devcloud
+ stack_install: core,openstack,dvr
+ stack_type: heat
+ stack_test: ""
+ job_timer: ""
+ - stack_name: virtual_mcp_pike_dvr_ssl_barbican
+ stack_env: devcloud
+ stack_install: core,openstack,ovs
+ stack_type: heat
+ stack_test: ""
+ job_timer: ""
+ - stack_name: virtual_mcp_pike_ovs
+ stack_env: devcloud
+ stack_install: core,openstack,ovs
+ stack_type: heat
+ stack_test: ""
+ job_timer: ""
diff --git a/jenkins/client/job/deploy/lab/test-devops-portal-cicd.yml b/jenkins/client/job/deploy/lab/test-devops-portal-cicd.yml
deleted file mode 100644
index 8dfc70e..0000000
--- a/jenkins/client/job/deploy/lab/test-devops-portal-cicd.yml
+++ /dev/null
@@ -1,115 +0,0 @@
-parameters:
- jenkins:
- client:
- job_template:
- deploy_heat_test_cicd:
- name: deploy-heat-{{name}}
- jobs:
- - name: test-cicd-lab-dev
- lab: cicd_lab_dev
- template:
- type: workflow-scm
- concurrent: true
- display_name: "Deploy {{name}} heat stack"
- scm:
- type: git
- url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
- credentials: "gerrit"
- script: test-func-devops-portal-pipeline.groovy
- param:
- # heat
- HEAT_STACK_DELETE:
- type: boolean
- default: 'true'
- description: "Delete heat stack at the end of job"
- HEAT_STACK_REUSE:
- type: boolean
- default: 'false'
- description: "Reuse existing stack and only orchestrate deployment"
- HEAT_STACK_KEEP_INTACT:
- type: boolean
- default: 'false'
- description: "Save current deployment status without re-orchestrating"
- HEAT_TEMPLATE_URL:
- type: string
- default: "${_param:jenkins_gerrit_url}/mk/heat-templates"
- HEAT_TEMPLATE_CREDENTIALS:
- type: string
- default: "gerrit"
- HEAT_TEMPLATE_BRANCH:
- type: string
- default: "master"
- HEAT_STACK_NAME:
- type: string
- description: Heat stack name. Will be generated if missing.
- HEAT_STACK_TEMPLATE:
- type: string
- default: "{{lab}}"
- HEAT_STACK_ENVIRONMENT:
- type: string
- default: "devcloud"
- HEAT_STACK_ZONE:
- type: string
- default: "mcp-oss"
- HEAT_STACK_PUBLIC_NET:
- type: string
- default: "public"
-
- # salt master
- SALT_MASTER_CREDENTIALS:
- type: string
- default: "salt-qa-credentials"
- SSH_PUBLIC_KEY:
- type: string
- description: "User's public SSH key to be able to login when stack is deployed"
-
- # openstack api
- OPENSTACK_API_URL:
- type: string
- default: "https://cloud-cz.bud.mirantis.net:5000"
- OPENSTACK_API_CREDENTIALS:
- type: string
- default: "openstack-devcloud-credentials"
- OPENSTACK_API_PROJECT:
- type: string
- default: "mcp-oss"
- OPENSTACK_API_CLIENT:
- type: string
- default: ""
- OPENSTACK_API_VERSION:
- type: string
- default: "3"
- OPENSTACK_API_PROJECT_DOMAIN:
- type: string
- default: "default"
- OPENSTACK_API_USER_DOMAIN_ID:
- type: string
- default: "default"
- OPENSTACK_API_PROJECT_ID:
- type: string
- default: ""
- OPENSTACK_API_USER_DOMAIN:
- type: string
- default: "default"
-
- # devops-portal-tests
- DEVOPS_PORTAL_TESTS_URL:
- type: string
- default: "${_param:jenkins_gerrit_url}/oss/devops-portal-tests"
- DEVOPS_PORTAL_TESTS_CREDENTIALS:
- type: string
- default: "gerrit"
- DEVOPS_PORTAL_TESTS_BRANCH:
- type: string
- default: "master"
- DEVOPS_PORTAL_TESTS_RUN_LOCAL:
- type: boolean
- default: 'true'
- description: "Run on swarm master node"
- DEVOPS_PORTAL_TESTS_CONFIG:
- type: string
- description: "Path to the service-configuration file in json-format"
- DEVOPS_PORTAL_TESTS_MARK:
- type: string
- default: "ALL"
- description: "Mark specific tests to run: healthcheck, functional (default = all)"
diff --git a/jenkins/client/job/deploy/openstack.yml b/jenkins/client/job/deploy/openstack.yml
index d9b1c29..a9f2007 100644
--- a/jenkins/client/job/deploy/openstack.yml
+++ b/jenkins/client/job/deploy/openstack.yml
@@ -26,7 +26,7 @@
STACK_INSTALL:
type: string
default: "core,kvm,openstack,stacklight"
-
+ description: "Components to be installed. Valid values are 'core,kvm,k8s,openstack,contrail,ovs,ceph,oss,cicd,stacklight,sl-legacy,finalize'. For all deployments it's recommended to run 'finalize' as a final step as Salt highstate on all nodes will be run."
# salt master
SALT_MASTER_CREDENTIALS:
type: string
diff --git a/jenkins/client/job/deploy/update/cloud_update.yml b/jenkins/client/job/deploy/update/cloud_update.yml
new file mode 100644
index 0000000..0480557
--- /dev/null
+++ b/jenkins/client/job/deploy/update/cloud_update.yml
@@ -0,0 +1,150 @@
+#
+# Jobs to update cloud packages on given Salt master environment
+#
+parameters:
+ _param:
+ jenkins_salt_api_url: "http://${_param:salt_master_host}:6969"
+ jenkins:
+ client:
+ job:
+ deploy-update-cloud:
+ type: workflow-scm
+ concurrent: true
+ display_name: "Deploy - update cloud"
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ branch: "${_param:jenkins_pipelines_branch}"
+ credentials: "gerrit"
+ script: cloud-update.groovy
+ param:
+ SALT_MASTER_URL:
+ type: string
+ default: "${_param:jenkins_salt_api_url}"
+ SALT_MASTER_CREDENTIALS:
+ type: string
+ default: "salt"
+ SNAPSHOT_NAME:
+ type: string
+ default: "updateSnapshot1"
+ description: "Live snapshot name"
+ CFG_NODE_PROVIDER:
+ type: string
+ default: ""
+ description: "Physical machine hosting Salt-Master VM (ex. kvm01*)"
+ INTERACTIVE:
+ type: boolean
+ default: 'false'
+ description: "Ask interactive questions during pipeline run"
+ PER_NODE:
+ type: boolean
+ default: 'true'
+ description: "Target nodes will be managed one by one"
+ ROLLBACK_BY_REDEPLOY:
+ type: boolean
+ default: 'false'
+ description: "Omit taking live snapshots. Rollback is planned to be done by redeployment"
+ STOP_SERVICES:
+ type: boolean
+ default: 'true'
+ description: "Stop API services before update"
+ TARGET_UPDATES:
+ type: string
+ default: "cfg,ctl,prx,msg,dbs"
+ description: "Comma separated list of nodes to update (Valid values are cfg,ctl,prx,msg,dbs,log,mon,mtr,ntw,nal,gtw-virtual,cmn,rgw,cid,cmp,kvm,osd,gtw-physical)"
+ TARGET_ROLLBACKS:
+ type: string
+ default: ""
+ description: "Comma separated list of nodes to rollback (Valid values are ctl,prx,msg,dbs,log,mon,mtr,ntw,nal,gtw-virtual,cmn,rgw,cmp,kvm,osd,gtw-physical)"
+ TARGET_SNAPSHOT_MERGES:
+ type: string
+ default: ""
+ description: "Comma separated list of nodes to merge live snapshot for (Valid values are cfg,ctl,prx,msg,dbs,log,mon,mtr,ntw,nal,gtw-virtual,cmn,rgw,cid)"
+ CTL_TARGET:
+ type: string
+ default: "ctl*"
+ description: "Salt targeted CTL nodes (ex. ctl*)"
+ PRX_TARGET:
+ type: string
+ default: "prx*"
+ description: "Salt targeted PRX nodes (ex. prx*)"
+ MSG_TARGET:
+ type: string
+ default: "msg*"
+ description: "Salt targeted MSG nodes (ex. msg*)"
+ DBS_TARGET:
+ type: string
+ default: "dbs*"
+ description: "Salt targeted DBS nodes (ex. dbs*)"
+ LOG_TARGET:
+ type: string
+ default: "log*"
+ description: "Salt targeted LOG nodes (ex. log*)"
+ MON_TARGET:
+ type: string
+ default: "mon*"
+ description: "Salt targeted MON nodes (ex. mon*)"
+ MTR_TARGET:
+ type: string
+ default: "mtr*"
+ description: "Salt targeted MTR nodes (ex. mtr*)"
+ NTW_TARGET:
+ type: string
+ default: "ntw*"
+ description: "Salt targeted NTW nodes (ex. ntw*)"
+ NAL_TARGET:
+ type: string
+ default: "nal*"
+ description: "Salt targeted NAL nodes (ex. nal*)"
+ CMN_TARGET:
+ type: string
+ default: "cmn*"
+ description: "Salt targeted CMN nodes (ex. cmn*)"
+ RGW_TARGET:
+ type: string
+ default: "rgw*"
+ description: "Salt targeted RGW nodes (ex. rgw*)"
+ CID_TARGET:
+ type: string
+ default: "cid*"
+ description: "Salt targeted CID nodes (ex. cid*)"
+ CMP_TARGET:
+ type: string
+ default: "cmp001*"
+ description: "Salt targeted physical compute nodes (ex. cmp001*)"
+ KVM_TARGET:
+ type: string
+ default: "kvm01*"
+ description: "Salt targeted physical KVM nodes (ex. kvm01*)"
+ CEPH_OSD_TARGET:
+ type: string
+ default: "osd001*"
+ description: "Salt targeted physical Ceph OSD nodes (ex. osd001*)"
+ GTW_TARGET:
+ type: string
+ default: "gtw01*"
+ description: "Salt targeted physical or virtual GTW nodes (ex. gtw01*)"
+ REBOOT:
+ type: boolean
+ default: 'false'
+ description: "Reboot nodes after update"
+ ROLLBACK_PKG_VERSIONS:
+ type: string
+ default: ""
+ description: "Space separated list of pkgs=versions to rollback to on physical targeted machines (ex. pkg_name1=pkg_version1 pkg_name2=pkg_version2)"
+ PURGE_PKGS:
+ type: string
+ default: ""
+ description: "Space separated list of pkgs=versions to be purged on physical targeted machines (ex. pkg_name1=pkg_version1 pkg_name2=pkg_version2)"
+ REMOVE_PKGS:
+ type: string
+ default: ""
+ description: "Space separated list of pkgs=versions to be removed on physical targeted machines (ex. pkg_name1=pkg_version1 pkg_name2=pkg_version2)"
+ RESTORE_GALERA:
+ type: boolean
+ default: 'false'
+ description: "Restore Galera DB"
+ RESTORE_CONTRAIL_DB:
+ type: boolean
+ default: 'false'
+ description: "Restore Cassandra and Zookeeper DBs for OpenContrail"
diff --git a/jenkins/client/job/deploy/update/init.yml b/jenkins/client/job/deploy/update/init.yml
index 4e6f460..fb1f5cf 100644
--- a/jenkins/client/job/deploy/update/init.yml
+++ b/jenkins/client/job/deploy/update/init.yml
@@ -13,3 +13,5 @@
- system.jenkins.client.job.deploy.update.restore_mysql
- system.jenkins.client.job.deploy.update.restore_cassandra
- system.jenkins.client.job.deploy.update.restore_zookeeper
+ - system.jenkins.client.job.deploy.update.virt_snapshot
+ - system.jenkins.client.job.deploy.update.cloud_update
diff --git a/jenkins/client/job/deploy/update/update_mirror_image.yml b/jenkins/client/job/deploy/update/update_mirror_image.yml
index ec812c4..2b2dc26 100644
--- a/jenkins/client/job/deploy/update/update_mirror_image.yml
+++ b/jenkins/client/job/deploy/update/update_mirror_image.yml
@@ -10,7 +10,7 @@
deploy-update-mirror-image:
type: workflow-scm
concurrent: true
- display_name: "Deploy - update mirror image"
+ display_name: "Deploy - update local mirror"
scm:
type: git
url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
@@ -30,6 +30,9 @@
UPDATE_APTLY_MIRRORS:
type: string
default: ""
+ RECREATE_APTLY_MIRRORS:
+ type: boolean
+ default: 'true'
PUBLISH_APTLY:
type: boolean
default: 'true'
@@ -42,6 +45,9 @@
CLEANUP_APTLY:
type: boolean
default: 'false'
+ UPDATE_DEBMIRRORS:
+ type: boolean
+ default: 'true'
UPDATE_DOCKER_REGISTRY:
type: boolean
default: 'true'
@@ -54,6 +60,6 @@
UPDATE_GIT:
type: boolean
default: 'true'
- UPDATE_IMAGES:
+ UPDATE_FILES:
type: boolean
default: 'true'
\ No newline at end of file
diff --git a/jenkins/client/job/deploy/update/upgrade.yml b/jenkins/client/job/deploy/update/upgrade.yml
index 2c76753..7e94c10 100644
--- a/jenkins/client/job/deploy/update/upgrade.yml
+++ b/jenkins/client/job/deploy/update/upgrade.yml
@@ -36,6 +36,10 @@
type: boolean
default: 'true'
description: "Rollback if control upgrade fails"
+ OPERATING_SYSTEM_RELEASE_UPGRADE:
+ type: boolean
+ default: 'false'
+ description: "Set to true if operating system release upgrade is desired. For ex. from Ubuntu 14.04 currently running on ctl and prx nodes to Ubuntu 16.04"
SKIP_VM_RELAUNCH:
type: boolean
default: 'false'
diff --git a/jenkins/client/job/deploy/update/virt_snapshot.yml b/jenkins/client/job/deploy/update/virt_snapshot.yml
new file mode 100644
index 0000000..0388ed1
--- /dev/null
+++ b/jenkins/client/job/deploy/update/virt_snapshot.yml
@@ -0,0 +1,62 @@
+#
+# Job to manage libvirt live snapshots
+#
+parameters:
+ _param:
+ jenkins_salt_api_url: "http://${_param:salt_master_host}:6969"
+ jenkins:
+ client:
+ job:
+ manage-virt-snapshot:
+ type: workflow-scm
+ concurrent: true
+ display_name: "Deploy - virt snapshot VM"
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ branch: "${_param:jenkins_pipelines_branch}"
+ credentials: "gerrit"
+ script: libvirt-live-snapshots.groovy
+ param:
+ SALT_MASTER_URL:
+ type: string
+ default: "${_param:jenkins_salt_api_url}"
+ SALT_MASTER_CREDENTIALS:
+ type: string
+ default: "salt"
+ CREATE_LIVE_SNAPSHOT:
+ type: boolean
+ default: 'true'
+ description: "Ensures that the live snapshot exists"
+ ROLLBACK_LIVE_SNAPSHOT:
+ type: boolean
+ default: 'false'
+ description: "Rollback the VM to a state before live snapshot was taken"
+ REMOVE_LIVE_SNAPSHOT:
+ type: boolean
+ default: 'false'
+ description: "Ensures that the live snapshot does not exist"
+ MERGE_LIVE_SNAPSHOT:
+ type: boolean
+ default: 'false'
+ description: "Ensures that the live snapshot is merged into it's base image"
+ NODE_PROVIDER:
+ type: string
+ default: "kvm01"
+ description: "KVM node that hosts the VM (for ex. kvm02)"
+ TARGET:
+ type: string
+ default: "ctl01"
+ description: "Unique identification of the VM being snapshoted without domain name (for ex. ctl01)"
+ SNAPSHOT_NAME:
+ type: string
+ default: "snapshot1"
+ description: "Snapshot name"
+ PATH:
+ type: string
+ default: "/var/lib/libvirt/images"
+ description: "Path where snapshot image and dumpxml are being put"
+ DISK_NAME:
+ type: string
+ default: "vda"
+ description: "Disk name of the snapshot"
diff --git a/jenkins/client/job/docker/cicd/init.yml b/jenkins/client/job/docker/cicd/init.yml
new file mode 100644
index 0000000..5b1df1d
--- /dev/null
+++ b/jenkins/client/job/docker/cicd/init.yml
@@ -0,0 +1,3 @@
+classes:
+ - system.jenkins.client.job.docker.cicd.rally
+ - system.jenkins.client.job.docker.cicd.tempest
diff --git a/jenkins/client/job/docker/cicd/rally.yml b/jenkins/client/job/docker/cicd/rally.yml
new file mode 100644
index 0000000..849d453
--- /dev/null
+++ b/jenkins/client/job/docker/cicd/rally.yml
@@ -0,0 +1,56 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ docker-build-images-docker-ci-rally:
+ name: docker-build-images-docker-ci-rally
+ discard:
+ build:
+ keep_num: 30
+ artifact:
+ keep_num: 30
+ 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:
+ "mcp/docker-ci-rally":
+ branches:
+ - master
+ event:
+ patchset:
+ - created:
+ excludeDrafts: false
+ excludeNoCodeChange: false
+ change:
+ - merged
+ comment:
+ - addedContains:
+ commentAddedCommentContains: 'rebuild'
+ param:
+ IMAGE_NAME:
+ type: string
+ default: "ci-rally"
+ 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: "cicd"
+ DOCKERFILE_PATH:
+ type: string
+ default: "Dockerfile"
+ CONTEXT_PATH:
+ type: string
+ default: "."
diff --git a/jenkins/client/job/docker/cicd/tempest.yml b/jenkins/client/job/docker/cicd/tempest.yml
new file mode 100644
index 0000000..7b68403
--- /dev/null
+++ b/jenkins/client/job/docker/cicd/tempest.yml
@@ -0,0 +1,56 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ docker-build-images-docker-ci-tempest:
+ name: docker-build-images-docker-ci-tempest
+ discard:
+ build:
+ keep_num: 30
+ artifact:
+ keep_num: 30
+ 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:
+ "mcp/docker-ci-tempest":
+ branches:
+ - master
+ event:
+ patchset:
+ - created:
+ excludeDrafts: false
+ excludeNoCodeChange: false
+ change:
+ - merged
+ comment:
+ - addedContains:
+ commentAddedCommentContains: 'rebuild'
+ param:
+ IMAGE_NAME:
+ type: string
+ default: "ci-tempest"
+ 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: "cicd"
+ DOCKERFILE_PATH:
+ type: string
+ default: "Dockerfile"
+ CONTEXT_PATH:
+ type: string
+ default: "."
diff --git a/jenkins/client/job/docker/saas/init.yml b/jenkins/client/job/docker/saas/init.yml
new file mode 100644
index 0000000..0b872e7
--- /dev/null
+++ b/jenkins/client/job/docker/saas/init.yml
@@ -0,0 +1,70 @@
+parameters:
+ jenkins:
+ client:
+ job_template:
+ docker-build-saas:
+ name: docker-image-build-saas-{{subproject}}-{{name}}
+ jobs:
+ - name: auth
+ subproject: core
+ - name: application
+ subproject: core
+ - name: ui
+ subproject: frontend
+ template:
+ discard:
+ build:
+ keep_num: 25
+ artifact:
+ keep_num: 25
+ type: workflow-scm
+ concurrent: false
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
+ credentials: "gerrit"
+ script: docker-build-image-pipeline.groovy
+ trigger:
+ gerrit:
+ project:
+ 'saas\/{{subproject}}\/{{name}}':
+ compare_type: REG_EXP
+ branches:
+ - master
+ skip_vote:
+ - successful
+ - failed
+ - unstable
+ - not_built
+ event:
+ patchset:
+ - create:
+ excludeDrafts: false
+ excludeNoCodeChange: false
+ change:
+ - merged
+ comment:
+ - addedContains:
+ commentAddedCommentContains: '^(?s:Patch Set \d+:.*(rebuild)\s*)$'
+ param:
+ IMAGE_NAME:
+ type: string
+ default: "saas-{{name}}"
+ IMAGE_TAGS:
+ type: string
+ default: ""
+ CONTEXT_PATH:
+ type: string
+ default: "."
+ CREDENTIALS_ID:
+ type: string
+ default: "gerrit"
+ DOCKERFILE_PATH:
+ type: string
+ default: "Dockerfile"
+ DOCKER_REGISTRY:
+ type: string
+ default: "docker-dev-virtual.docker.mirantis.net"
+ PROJECT_NAMESPACE:
+ type: string
+ default: "saas"
diff --git a/jenkins/client/job/git-mirrors/2way.yml b/jenkins/client/job/git-mirrors/2way.yml
index 3b1a62f..0546d94 100644
--- a/jenkins/client/job/git-mirrors/2way.yml
+++ b/jenkins/client/job/git-mirrors/2way.yml
@@ -1,6 +1,7 @@
parameters:
_param:
jenkins_pollscm_spec: "H/60 * * * *"
+ job_description_2way: <br>Syncronizes code projects with GitHub.<br>
jenkins:
client:
job_template:
@@ -11,7 +12,16 @@
source: mcp/mcp-common-scripts
target: Mirantis/mcp-common-scripts
branches: "master"
+ - name: mcp-local-repo-model
+ source: mcp/mcp-local-repo-model
+ target: Mirantis/mcp-local-repo-model
+ branches: "master"
+ - name: mcp-offline-model
+ source: mcp/mcp-offline-model
+ target: Mirantis/mcp-offline-model
+ branches: "master"
template:
+ description: ${_param:job_description_2way}
discard:
build:
keep_num: 10
diff --git a/jenkins/client/job/git-mirrors/downstream/pipelines.yml b/jenkins/client/job/git-mirrors/downstream/pipelines.yml
index 7bf366c..271a725 100644
--- a/jenkins/client/job/git-mirrors/downstream/pipelines.yml
+++ b/jenkins/client/job/git-mirrors/downstream/pipelines.yml
@@ -2,12 +2,14 @@
- system.jenkins.client.job.git-mirrors.downstream
parameters:
_param:
+ gerrit_pipeline_library_repo: https://github.com/Mirantis/pipeline-library
+ gerrit_mk_pipelines_repo: https://github.com/Mirantis/mk-pipelines
jenkins_git_mirror_downstream_jobs:
- name: pipeline-library
downstream: mcp-ci/pipeline-library
- upstream: "https://github.com/Mirantis/pipeline-library"
+ upstream: "${_param:gerrit_pipeline_library_repo}"
branches: master
- name: mk-pipelines
downstream: mk/mk-pipelines
- upstream: "https://github.com/Mirantis/mk-pipelines"
+ upstream: "${_param:gerrit_mk_pipelines_repo}"
branches: master
diff --git a/jenkins/client/job/git-mirrors/upstream/models.yml b/jenkins/client/job/git-mirrors/upstream/models.yml
new file mode 100644
index 0000000..9a16673
--- /dev/null
+++ b/jenkins/client/job/git-mirrors/upstream/models.yml
@@ -0,0 +1,13 @@
+classes:
+ - system.jenkins.client.job.git-mirrors.upstream
+parameters:
+ _param:
+ jenkins_git_mirror_upstream_jobs:
+ - name: kubernetes-aws-model
+ downstream: mk/kubernetes-aws-model
+ upstream: "git@github.com:Mirantis/kubernetes-aws-model"
+ branches: master
+ - name: ceph-ha-model
+ downstream: ceph/ceph-ha-model
+ upstream: "git@github.com:Mirantis/ceph-ha-model"
+ branches: master
diff --git a/jenkins/client/job/git-mirrors/upstream/templates.yml b/jenkins/client/job/git-mirrors/upstream/templates.yml
index 5ffaa43..a83a6de 100644
--- a/jenkins/client/job/git-mirrors/upstream/templates.yml
+++ b/jenkins/client/job/git-mirrors/upstream/templates.yml
@@ -7,7 +7,11 @@
downstream: mk/cookiecutter-templates
upstream: "git@github.com:Mirantis/mk2x-cookiecutter-reclass-model"
branches: master,mcp10
+ - name: heat-fragments
+ downstream: mk/heat-fragments
+ upstream: "git@github.com:Mirantis/heat-fragments"
+ branches: master
- name: heat-templates
downstream: mk/heat-templates
upstream: "git@github.com:Mirantis/mk-lab-heat-templates"
- branches: master
\ No newline at end of file
+ branches: master
diff --git a/jenkins/client/job/opencontrail/git-mirrors/upstream.yml b/jenkins/client/job/opencontrail/git-mirrors/upstream.yml
index af4c6ac..0f60c76 100644
--- a/jenkins/client/job/opencontrail/git-mirrors/upstream.yml
+++ b/jenkins/client/job/opencontrail/git-mirrors/upstream.yml
@@ -46,6 +46,8 @@
branches: ${_param:contrail_dpdk_extra_branches}
- name: contrail-dpdk
branches: ${_param:contrail_dpdk_branches}
+ - name: contrail-third-party-cache-fixup
+ branches: ${_param:contrail_third_party_cache_fixup_branches}
template:
discard:
build:
diff --git a/jenkins/client/job/opencontrail/init.yml b/jenkins/client/job/opencontrail/init.yml
index 34cc4e5..d2ecdb6 100644
--- a/jenkins/client/job/opencontrail/init.yml
+++ b/jenkins/client/job/opencontrail/init.yml
@@ -9,6 +9,7 @@
contrail_ceilometer_plugin_branches: "master,R4.0,R4.1"
contrail_kubernetes_branches: "master,origin-1.1,origin-1.1.3,release-1.1,release-1.2"
contrail_dpdk_branches: "master,R3.0.2.x,R3.0.3.x,R3.1,R3.1.1.x,R3.2,R3.2.3.x,R4.0,R4.0.1,R4.1,contrail_dpdk_17_02,contrail_dpdk_17_05,contrail_dpdk_1_7,contrail_dpdk_2_0,contrail_dpdk_2_1"
+ contrail_third_party_cache_fixup_branches: "master"
jenkins:
client:
view:
diff --git a/jenkins/client/job/oscore/init.yml b/jenkins/client/job/oscore/init.yml
index 18dd008..2f45ef8 100644
--- a/jenkins/client/job/oscore/init.yml
+++ b/jenkins/client/job/oscore/init.yml
@@ -2,11 +2,17 @@
- system.jenkins.client.job.oscore.security_tests
- system.jenkins.client.job.oscore.tests
- system.jenkins.client.job.oscore.qa
+ - system.jenkins.client.job.oscore.salt_virtual_models
parameters:
+ _param:
+ job_description_oscore: <br>Deploy and test OpenStack.<br>
jenkins:
client:
view:
"OSCORE":
enabled: true
- type: ListView
+ type: CategorizedJobsView
include_regex: "^oscore-.*"
+ categories:
+ - group_regex: "oscore-bandit-*"
+ naming_rule: "Bandit"
diff --git a/jenkins/client/job/oscore/qa.yml b/jenkins/client/job/oscore/qa.yml
index a8d4fae..eb565a2 100644
--- a/jenkins/client/job/oscore/qa.yml
+++ b/jenkins/client/job/oscore/qa.yml
@@ -5,6 +5,7 @@
oscore-build-docker-image:
name: "{{job_prefix}}-{{oscore-qa-project}}-build-docker-image"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 25
@@ -49,6 +50,7 @@
oscore-docker-image-systest-template:
name: "{{job_prefix}}-{{oscore-qa-project}}-image-systest-{{model}}"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -164,14 +166,14 @@
type: string
default: "3"
# test
- TEST_TEMPEST_CONF:
+ TEST_CONF:
type: string
description: Tempest configuration file path inside container
- default: "{{tempest_conf}}"
- TEST_TEMPEST_TARGET:
+ default: "{{test_conf}}"
+ TEST_TARGET:
type: string
description: Node to run tests
- default: "{{tempest_target}}"
+ default: "{{test_target}}"
TEST_MODEL:
type: string
description: Environment salt model
diff --git a/jenkins/client/job/oscore/salt_virtual_models.yml b/jenkins/client/job/oscore/salt_virtual_models.yml
new file mode 100644
index 0000000..911c1ce
--- /dev/null
+++ b/jenkins/client/job/oscore/salt_virtual_models.yml
@@ -0,0 +1,170 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ oscore-test_virtual_model:
+ concurrent: true
+ description: ${_param:job_description_oscore}
+ discard:
+ build:
+ keep_num: 30
+ artifact:
+ keep_num: 30
+ plugin_properties:
+ throttleconcurrents:
+ enabled: true
+ throttle_option: category
+ categories:
+ - oscore-ci-ha-builds
+ display_name: oscore-test-virtual-model
+ name: oscore-test-virtual-model
+ param:
+ CREDENTIALS_ID:
+ default: gerrit
+ type: string
+ description: "Name of creadentials to use when connecting to gerrit"
+ HEAT_STACK_ZONE:
+ type: string
+ description: "Heat stack zone where build stack"
+ default: "mcp-oscore-ci"
+ STACK_RECLASS_ADDRESS:
+ type: string
+ default: 'https://gerrit.mcp.mirantis.net/salt-models/mcp-virtual-lab'
+ description: 'Url to repository with stack salt models'
+ STACK_RECLASS_BRANCH:
+ type: string
+ default: 'master'
+ description: 'Branch of repository with stack salt models'
+ STACK_CLUSTER_NAME:
+ type: string
+ default: ""
+ description: "Cluster name to use from reclass"
+ STACK_DELETE:
+ type: boolean
+ default: 'false'
+ description: "Enable it when stack have to be deleted."
+ FORMULA_PKG_REVISION:
+ type: string
+ description: Version of formulas for salt-master bootstrap
+ default: "nightly"
+ # openstack api
+ OPENSTACK_API_URL:
+ type: string
+ default: "https://cloud-cz.bud.mirantis.net:5000"
+ OPENSTACK_API_CREDENTIALS:
+ type: string
+ default: "openstack-devcloud-credentials"
+ OPENSTACK_API_PROJECT:
+ type: string
+ default: "mcp-oscore-ci"
+ OPENSTACK_API_PROJECT_DOMAIN:
+ type: string
+ default: "default"
+ OPENSTACK_API_PROJECT_ID:
+ type: string
+ default: ""
+ OPENSTACK_API_USER_DOMAIN:
+ type: string
+ default: "default"
+ OPENSTACK_API_CLIENT:
+ type: string
+ default: ""
+ OPENSTACK_API_VERSION:
+ type: string
+ default: "3"
+ # Test params
+ TEST_CONF:
+ type: string
+ description: Tempest configuration file path inside container
+ default: "/home/rally/rally_reports/tempest_generated.conf"
+ TEST_TARGET:
+ type: string
+ description: Node to run tests
+ default: "cfg01*"
+ TEST_CONCURRENCY:
+ type: string
+ description: How much test threads to run
+ default: "2"
+ RUN_SMOKE:
+ type: boolean
+ default: "false"
+ description: Enabling of running smoke tests
+ scm:
+ script: test-virtual-model-pipeline.groovy
+ type: git
+ url: "${_param:jenkins_gerrit_url}/openstack-ci/openstack-pipelines"
+ credentials: "gerrit"
+ type: workflow-scm
+ oscore-test_virtual_models:
+ concurrent: true
+ description: ${_param:job_description_oscore}
+ discard:
+ build:
+ keep_num: 30
+ artifact:
+ keep_num: 30
+ trigger:
+ timer:
+ spec: "H 05 * * *"
+ display_name: oscore-test-virtual-models
+ name: oscore-test-virtual-models
+ param:
+ CREDENTIALS_ID:
+ default: gerrit
+ type: string
+ description: "Name of creadentials to use when connecting to gerrit"
+ HEAT_STACK_ZONE:
+ type: string
+ description: "Heat stack zone where build stack"
+ default: "mcp-oscore-ci"
+ STACK_RECLASS_ADDRESS:
+ type: string
+ default: 'https://gerrit.mcp.mirantis.net/salt-models/mcp-virtual-lab'
+ description: 'Url to repository with stack salt models'
+ STACK_RECLASS_BRANCH:
+ type: string
+ default: 'master'
+ description: 'Branch of repository with stack salt models'
+ STACK_CLUSTER_NAMES:
+ type: string
+ default: "virtual-mcp-pike-ovs,virtual-mcp-pike-dvr,virtual-mcp-pike-dvr-ssl"
+ description: "Comma separated list of cluster names to test."
+ STACK_DELETE:
+ type: boolean
+ default: 'true'
+ description: "Enable it when stack have to be deleted."
+ FORMULA_PKG_REVISION:
+ type: string
+ description: Version of formulas for salt-master bootstrap
+ default: "nightly"
+ # openstack api
+ OPENSTACK_API_URL:
+ type: string
+ default: "https://cloud-cz.bud.mirantis.net:5000"
+ OPENSTACK_API_CREDENTIALS:
+ type: string
+ default: "openstack-devcloud-credentials"
+ OPENSTACK_API_PROJECT:
+ type: string
+ default: "mcp-oscore-ci"
+ OPENSTACK_API_PROJECT_DOMAIN:
+ type: string
+ default: "default"
+ OPENSTACK_API_PROJECT_ID:
+ type: string
+ default: ""
+ OPENSTACK_API_USER_DOMAIN:
+ type: string
+ default: "default"
+ OPENSTACK_API_CLIENT:
+ type: string
+ default: ""
+ OPENSTACK_API_VERSION:
+ type: string
+ default: "3"
+ scm:
+ script: test-virtual-models-pipeline.groovy
+ type: git
+ url: "${_param:jenkins_gerrit_url}/openstack-ci/openstack-pipelines"
+ credentials: "gerrit"
+ type: workflow-scm
diff --git a/jenkins/client/job/oscore/security_tests.yml b/jenkins/client/job/oscore/security_tests.yml
index 36b5441..8c6e39d 100644
--- a/jenkins/client/job/oscore/security_tests.yml
+++ b/jenkins/client/job/oscore/security_tests.yml
@@ -5,6 +5,7 @@
bandit-scanner-template-downstream:
name: "{{job_prefix}}-bandit-downstream-{{project}}"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -94,6 +95,7 @@
bandit-scanner-template-upstream:
name: "{{job_prefix}}-bandit-upstream-{{project}}"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
diff --git a/jenkins/client/job/oscore/tests.yml b/jenkins/client/job/oscore/tests.yml
index f5bb092..367f32a 100644
--- a/jenkins/client/job/oscore/tests.yml
+++ b/jenkins/client/job/oscore/tests.yml
@@ -5,6 +5,7 @@
test-openstack-component-formula:
name: "{{job_prefix}}-formula-systest-{{model}}-{{openstack_version}}"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -64,6 +65,10 @@
type: string
default: '{{stack_reclass_branch}}'
description: 'Branch of repository with stack salt models'
+ STACK_CLUSTER_NAME:
+ type: string
+ default: ""
+ description: "Cluster name to use from reclass"
# salt
SALT_OVERRIDES:
type: text
@@ -99,15 +104,15 @@
type: string
default: "3"
# test
- TEST_TEMPEST_CONF:
+ TEST_CONF:
type: string
description: Tempest configuration file path inside container
- default: "{{tempest_conf}}"
- TEST_TEMPEST_TARGET:
+ default: "{{test_conf}}"
+ TEST_TARGET:
type: string
description: Node to run tests
- default: "{{tempest_target}}"
- TEST_TEMPEST_PATTERN:
+ default: "{{test_target}}"
+ TEST_PATTERN:
type: string
description: Run tests matched to pattern only
default: "tempest"
@@ -142,6 +147,7 @@
test-openstack-component-periodic:
name: "{{job_prefix}}-{{milestone}}-{{model}}-{{openstack_version}}-{{formula_pkg_revision}}"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -249,18 +255,18 @@
type: string
description: Product milestone
default: "{{milestone}}"
- TEST_TEMPEST_CONF:
+ TEST_CONF:
type: string
description: Tempest configuration file path inside container
- default: "{{tempest_conf}}"
- TEST_TEMPEST_TARGET:
+ default: "{{test_conf}}"
+ TEST_TARGET:
type: string
description: Node to run tests
- default: "{{tempest_target}}"
- TEST_TEMPEST_PATTERN:
+ default: "{{test_target}}"
+ TEST_PATTERN:
type: string
description: Run tests matched to pattern only
- default: "tempest --concurrency 2"
+ default: "{{test_pattern}}"
TEST_MODEL:
type: string
description: Environment salt model
@@ -273,9 +279,14 @@
type: boolean
default: 'true'
description: Whether to fail build on test results
+ RUN_SMOKE:
+ type: boolean
+ default: "{{run_smoke}}"
+ description: Enabling of running smoke tests
test-runner-template:
name: "{{job_prefix}}-{{test_type}}-runner"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -308,6 +319,10 @@
type: string
description: Job for results processing
default: "{{proc_results_job}}"
+ TEST_TYPE:
+ type: string
+ description: Name of test type
+ default: "{{test_type}}"
SLAVE_NODE:
type: string
default: 'python'
@@ -323,28 +338,28 @@
type: boolean
default: 'false'
description: Upload results to testrail or not
- TEST_TEMPEST_TARGET:
+ TEST_TARGET:
type: string
description: Salt target to run tests
- TEST_TEMPEST_IMAGE:
+ TEST_IMAGE:
type: string
description: Url to tempest docker image
- default: 'docker-prod-local.artifactory.mirantis.com/mirantis/oscore/rally-tempest'
+ default: "{{test_image}}"
LOCAL_TEMPEST_IMAGE:
type: string
description: Path to local docker image
default: ''
- TEST_TEMPEST_PATTERN:
+ TEST_PATTERN:
type: string
description: Run tests matched to pattern only
- TEST_TEMPEST_SET:
+ TEST_SET:
type: string
description: Run tests matched by tempest set only
- TEST_TEMPEST_CONCURRENCY:
+ TEST_CONCURRENCY:
type: string
description: How much test threads to run
default: "2"
- TEST_TEMPEST_CONF:
+ TEST_CONF:
type: string
description: Tempest configuration file path inside container
default: "mcp.conf"
@@ -366,6 +381,7 @@
results-checker-template:
name: "{{job_prefix}}-{{test_type}}-results-checker"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -403,7 +419,7 @@
type: string
default: "{{testrail_credentials}}"
description: Credentials for results upload to testrail
- TEST_TEMPEST_TARGET:
+ TEST_TARGET:
type: string
description: Node to run tests
TEST_MILESTONE:
@@ -412,8 +428,7 @@
TEST_SUITE:
type: string
description: Testrail test suite
- default: >-
- 'Tempest 16.0.0 with designate tests'
+ default: "{{test_suite}}"
TEST_PLAN:
type: string
description: Testrail test plan
@@ -439,6 +454,7 @@
deploy-kvm-virtual-template:
name: "{{job_prefix}}-deploy-kvm-VMs"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -520,6 +536,7 @@
oscore-oscc-ci-template:
name: "{{job_prefix}}-oscc-ci"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -584,6 +601,7 @@
build-salt-formula-refspec-template:
name: "{{job_prefix}}-build-salt-formula-refspec"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -620,11 +638,11 @@
description: Whether to make a snapshot build
EXTRA_REPO_URL:
type: string
- default: "deb ${_param:jenkins_aptly_url}/{{dist}}/ testing salt salt-latest"
+ default: "deb http://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3 xenial main; deb ${_param:jenkins_aptly_url}/{{dist}}/ testing salt"
description: Extra repo for building process
EXTRA_REPO_KEY_URL:
type: string
- default: "${_param:jenkins_aptly_url}/public.gpg"
+ default: "https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3/SALTSTACK-GPG-KEY.pub; ${_param:jenkins_aptly_url}/public.gpg"
description: Extra repo GPG public key URL
OS:
type: string
@@ -653,6 +671,7 @@
test-salt-formula-refspec-template:
name: "{{job_prefix}}-test-salt-formula-refspec"
template:
+ description: ${_param:job_description_oscore}
discard:
build:
keep_num: 30
@@ -669,7 +688,7 @@
trigger:
gerrit:
project:
- "^salt-formulas/(nova|cinder|glance|keystone|horizon|neutron|designate|heat|ironic|barbican|salt|linux|reclass|galera|memcached|rabbitmq|bind|apache)$":
+ "^salt-formulas/(nova|cinder|glance|keystone|horizon|neutron|designate|heat|ironic|barbican|aodh|ceilometer|gnocchi|panko|manila|salt|linux|reclass|galera|memcached|rabbitmq|bind|apache|runtest)$":
compare_type: 'REG_EXP'
branches:
- master
@@ -734,3 +753,61 @@
type: string
default: "{{systestJobPrefix}}"
description: "Systest job prefix. I.e. oscore-formula-systest-virtual_mcp11_aio-"
+ OPENSTACK_COMPONENTS_LIST:
+ type: string
+ description: "OpenStack related components list"
+ default: "{{openstack_components_list}}"
+ SOURCE_REPO_NAME:
+ type: string
+ description: "Name of the repo where packages are stored"
+ default: "{{source_repo_name}}"
+ test-deploy-virtual-model-change-template:
+ name: "{{job_prefix}}-deploy-virtual-model-change-{{job_suffix}}"
+ template:
+ description: ${_param:job_description_oscore}
+ 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: deploy-virtual-model-change-pipeline.groovy
+ trigger:
+ gerrit:
+ project:
+ "^salt-models/mcp-virtual-aio$":
+ compare_type: 'REG_EXP'
+ branches:
+ - master
+ - stable/pike
+ - stable/ocata
+ - stable/newton
+ - stable/mitaka
+ skip_vote:
+ - successful
+ - failed
+ - unstable
+ - not_built
+ event:
+ comment:
+ - addedContains:
+ commentAddedCommentContains: '^(?s:Patch Set \d+:.*(test|recheck|reverify)\s*)$'
+ param:
+ CREDENTIALS_ID:
+ type: string
+ default: "{{credentials_id}}"
+ STACK_RECLASS_ADDRESS:
+ type: string
+ default: "{{stack_reclass_address}}"
+ STACK_RECLASS_BRANCH:
+ type: string
+ default: "{{stack_reclass_branch}}"
+ TEST_CLUSTER_NAMES:
+ type: string
+ default: "{{test_cluster_names}}"
diff --git a/jenkins/client/job/oss/init.yml b/jenkins/client/job/oss/init.yml
index 9478ffd..5aecb0b 100644
--- a/jenkins/client/job/oss/init.yml
+++ b/jenkins/client/job/oss/init.yml
@@ -1,5 +1,6 @@
classes:
- system.jenkins.client.job.oss.test_devops_portal
+ - system.jenkins.client.job.oss.test_devops_portal_backend
- system.jenkins.client.job.oss.test_devops_portal_nightly
- system.jenkins.client.job.oss.test_pushkin_codebase
- system.jenkins.client.job.oss.test_security_monkey_openstack
diff --git a/jenkins/client/job/oss/test_devops_portal_backend.yml b/jenkins/client/job/oss/test_devops_portal_backend.yml
new file mode 100644
index 0000000..0c23847
--- /dev/null
+++ b/jenkins/client/job/oss/test_devops_portal_backend.yml
@@ -0,0 +1,99 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ test-oss-devops-portal-backend:
+ name: test-oss-devops-portal-backend
+ discard:
+ build:
+ keep_num: 15
+ artifact:
+ keep_num: 15
+ type: workflow-scm
+ concurrent: true
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
+ credentials: "gerrit"
+ script: test-devops-portal-backend-pipeline.groovy
+ param:
+ # heat
+ HEAT_STACK_NAME:
+ type: string
+ description: Heat stack name. Will be generated if missing.
+ # salt master
+ SALT_MASTER_CREDENTIALS:
+ type: string
+ default: "salt-qa-credentials"
+ SSH_PUBLIC_KEY:
+ type: string
+ description: "User's public SSH key to be able to login when stack is deployed"
+ # openstack api
+ OPENSTACK_API_URL:
+ type: string
+ default: "https://cloud-cz.bud.mirantis.net:5000"
+ OPENSTACK_API_CREDENTIALS:
+ type: string
+ default: "openstack-devcloud-credentials"
+ OPENSTACK_API_PROJECT:
+ type: string
+ default: "mcp-oss"
+ OPENSTACK_API_CLIENT:
+ type: string
+ default: ""
+ OPENSTACK_API_VERSION:
+ type: string
+ default: "3"
+ OPENSTACK_API_PROJECT_DOMAIN:
+ type: string
+ default: "default"
+ OPENSTACK_API_USER_DOMAIN_ID:
+ type: string
+ default: "default"
+ OPENSTACK_API_PROJECT_ID:
+ type: string
+ default: ""
+ OPENSTACK_API_USER_DOMAIN:
+ type: string
+ default: "default"
+ # devops-portal-tests
+ DEVOPS_PORTAL_TESTS_URL:
+ type: string
+ default: "${_param:jenkins_gerrit_url}/oss/devops-portal-tests"
+ DEVOPS_PORTAL_TESTS_CREDENTIALS:
+ type: string
+ default: "gerrit"
+ DEVOPS_PORTAL_TESTS_BRANCH:
+ type: string
+ default: "master"
+ DEVOPS_PORTAL_BIND_IP:
+ type: string
+ default: "0.0.0.0"
+ DEVOPS_PORTAL_BIND_PORT:
+ type: string
+ default: "8012"
+ # testrail
+ TESTRAIL_REPORT:
+ type: boolean
+ default: false
+ TESTRAIL_URL:
+ type: string
+ default: "https://mirantis.testrail.com"
+ TESTRAIL_QA_CREDENTIALS:
+ type: string
+ default: "oscore-qa-credentials"
+ TESTRAIL_PROJECT:
+ type: string
+ default: "Mirantis Cloud Platform"
+ TESTRAIL_PLAN:
+ type: string
+ default: "[MCP] [Auto] DevOps Portal"
+ TESTRAIL_SUITE:
+ type: string
+ default: "[MCP] DevOps Portal"
+ TESTRAIL_MILESTONE:
+ type: string
+ default: "MCP-Q18.1"
+ TESTRAIL_RUN:
+ type: string
+ default: "[MCP] [Auto] DevOps Portal test run"
diff --git a/jenkins/client/job/oss/test_devops_portal_nightly.yml b/jenkins/client/job/oss/test_devops_portal_nightly.yml
index 34a8bec..b654846 100644
--- a/jenkins/client/job/oss/test_devops_portal_nightly.yml
+++ b/jenkins/client/job/oss/test_devops_portal_nightly.yml
@@ -32,3 +32,27 @@
NIGHTLY_BUILD:
type: boolean
default: true
+ TESTRAIL_REPORT:
+ type: boolean
+ default: false
+ TESTRAIL_URL:
+ type: string
+ default: "https://mirantis.testrail.com"
+ TESTRAIL_QA_CREDENTIALS:
+ type: string
+ default: "oscore-qa-credentials"
+ TESTRAIL_PROJECT:
+ type: string
+ default: "Mirantis Cloud Platform"
+ TESTRAIL_PLAN:
+ type: string
+ default: "[MCP] [Auto] DevOps Portal"
+ TESTRAIL_SUITE:
+ type: string
+ default: "[MCP] DevOps Portal"
+ TESTRAIL_MILESTONE:
+ type: string
+ default: "MCP-Q18.1"
+ TESTRAIL_RUN:
+ type: string
+ default: "[MCP] [Auto] DevOps Portal test run"
diff --git a/jenkins/client/job/saas/init.yml b/jenkins/client/job/saas/init.yml
new file mode 100644
index 0000000..33ebbe4
--- /dev/null
+++ b/jenkins/client/job/saas/init.yml
@@ -0,0 +1,3 @@
+classes:
+ - system.jenkins.client.job.saas.test_saas_ui
+ - system.jenkins.client.job.saas.test_saas_core_auth
diff --git a/jenkins/client/job/saas/test_saas_core_auth.yml b/jenkins/client/job/saas/test_saas_core_auth.yml
new file mode 100644
index 0000000..1ff2339
--- /dev/null
+++ b/jenkins/client/job/saas/test_saas_core_auth.yml
@@ -0,0 +1,43 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ test-saas-core-auth:
+ name: test-saas-core-auth
+ discard:
+ build:
+ keep_num: 15
+ artifact:
+ keep_num: 15
+ type: workflow-scm
+ concurrent: true
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
+ credentials: "gerrit"
+ script: test-saas-core-auth-pipeline.groovy
+ trigger:
+ gerrit:
+ project:
+ "saas/core/auth":
+ branches:
+ - master
+ event:
+ patchset:
+ - created:
+ excludeDrafts: false
+ excludeTrivialRebase: false
+ excludeNoCodeChange: false
+ comment:
+ - addedContains:
+ commentAddedCommentContains: '^(?s:Patch Set \d+:.*(test|recheck|reverify)\s*)$'
+ param:
+ CREDENTIALS_ID:
+ type: string
+ default: "gerrit"
+ DEFAULT_GIT_URL:
+ type: string
+ default: "${_param:jenkins_gerrit_url}/saas/core/auth"
+ DEFAULT_GIT_REF:
+ type: string
+ default: master
diff --git a/jenkins/client/job/saas/test_saas_ui.yml b/jenkins/client/job/saas/test_saas_ui.yml
new file mode 100644
index 0000000..f49dd7f
--- /dev/null
+++ b/jenkins/client/job/saas/test_saas_ui.yml
@@ -0,0 +1,43 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ test-saas-ui:
+ name: test-saas-ui
+ discard:
+ build:
+ keep_num: 15
+ artifact:
+ keep_num: 15
+ type: workflow-scm
+ concurrent: true
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/oss/jenkins/pipelines"
+ credentials: "gerrit"
+ script: test-saas-ui-pipeline.groovy
+ trigger:
+ gerrit:
+ project:
+ "saas/frontend/ui":
+ branches:
+ - master
+ event:
+ patchset:
+ - created:
+ excludeDrafts: false
+ excludeTrivialRebase: false
+ excludeNoCodeChange: false
+ comment:
+ - addedContains:
+ commentAddedCommentContains: '^(?s:Patch Set \d+:.*(test|recheck|reverify)\s*)$'
+ param:
+ CREDENTIALS_ID:
+ type: string
+ default: "gerrit"
+ DEFAULT_GIT_URL:
+ type: string
+ default: "${_param:jenkins_gerrit_url}/saas/frontend/ui"
+ DEFAULT_GIT_REF:
+ type: string
+ default: master
diff --git a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
index 249a7e5..a2b000a 100644
--- a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
+++ b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
@@ -1,14 +1,13 @@
parameters:
_param:
jenkins_pollscm_spec: "H/60 * * * *"
+ job_description_2way: <br>Syncronizes code projects with GitHub.<br>
jenkins:
client:
job_template:
git-mirror-2way-salt-formula:
name: git-mirror-2way-salt-formula-{{name}}
jobs:
- - name: aide
- branches: ${_param:salt_formulas_branches}
- name: aodh
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
@@ -24,9 +23,6 @@
- name: artifactory
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
- - name: auditd
- branches: ${_param:salt_formulas_branches}
- notification_recipients: ${_param:salt_formulas_notification_recipients}
- name: avinetworks
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
@@ -36,6 +32,9 @@
- name: barbican
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
+ - name: baremetal-simulator
+ branches: ${_param:salt_formulas_branches}
+ notification_recipients: ${_param:salt_formulas_notification_recipients}
- name: billometer
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
@@ -84,6 +83,9 @@
- name: docker
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
+ - name: dogtag
+ branches: ${_param:salt_formulas_branches}
+ notification_recipients: ${_param:salt_formulas_notification_recipients}
- name: dovecot
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
@@ -367,6 +369,7 @@
branches: ${_param:salt_formulas_branches}
notification_recipients: ${_param:salt_formulas_notification_recipients}
template:
+ description: ${_param:job_description_2way}
discard:
build:
keep_num: 10
@@ -412,6 +415,7 @@
default: "{{notification_recipients}}"
job:
git-mirror-2way-salt-formulas-scripts:
+ description: ${_param:job_description_2way}
discard:
build:
keep_num: 10
@@ -445,6 +449,7 @@
type: string
default: "master"
git-mirror-2way-salt-formulas-cookiecutter:
+ description: ${_param:job_description_2way}
discard:
build:
keep_num: 10
diff --git a/jenkins/client/job/salt-formulas/tests.yml b/jenkins/client/job/salt-formulas/tests.yml
index b6d74f2..73d9083 100644
--- a/jenkins/client/job/salt-formulas/tests.yml
+++ b/jenkins/client/job/salt-formulas/tests.yml
@@ -5,13 +5,11 @@
test-salt-formula:
name: test-salt-formula-{{name}}-latest
jobs:
- - name: aide
- name: aodh
- name: apache
- name: aptcacher
- name: aptly
- name: artifactory
- - name: auditd
- name: avinetworks
- name: backupninja
- name: barbican
@@ -53,6 +51,7 @@
- name: haproxy
- name: heat
- name: heka
+ - name: heketi
- name: helm
- name: horizon
- name: influxdb
@@ -95,6 +94,7 @@
- name: openssh
- name: openvpn
- name: openvstorage
+ - name: oslo-templates
- name: owncloud
- name: panko
- name: postfix
diff --git a/jenkins/client/job/salt-models/generate.yml b/jenkins/client/job/salt-models/generate.yml
index b2ef4e5..686e74d 100644
--- a/jenkins/client/job/salt-models/generate.yml
+++ b/jenkins/client/job/salt-models/generate.yml
@@ -19,25 +19,10 @@
script: generate-cookiecutter-products.groovy
param:
# Cookiecutter
- COOKIECUTTER_TEMPLATE_URL:
- type: string
- default: "${_param:jenkins_gerrit_url}/mk/cookiecutter-templates.git"
- COOKIECUTTER_TEMPLATE_CREDENTIALS:
- type: string
- default: gerrit
- COOKIECUTTER_TEMPLATE_BRANCH:
- type: string
- default: master
- COOKIECUTTER_TEMPLATE_PATH:
- type: string
- default: "./"
COOKIECUTTER_TEMPLATE_CONTEXT:
type: text
# Other
- SHARED_RECLASS_URL:
- type: string
- default: "${_param:jenkins_gerrit_url}/salt-models/reclass-system.git"
EMAIL_ADDRESS:
type: string
TEST_MODEL:
diff --git a/jenkins/client/job/salt-models/tests.yml b/jenkins/client/job/salt-models/tests.yml
index 9e6b8ac..80135b5 100644
--- a/jenkins/client/job/salt-models/tests.yml
+++ b/jenkins/client/job/salt-models/tests.yml
@@ -67,6 +67,9 @@
CONFIG_NODE_NAME_PATTERN:
type: string
default: "{{config_node_name}}"
+ RECLASS_VERSION:
+ type: string
+ default: "master"
MAX_CPU_PER_JOB:
type: string
default: "2"
@@ -82,6 +85,31 @@
APT_REPOSITORY_GPG:
type: string
default: ""
+ test_customers_salt_models:
+ name: test-customers-salt-models
+ template:
+ type: workflow-scm
+ discard:
+ build:
+ keep_num: 50
+ artifact:
+ keep_num: 50
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ branch: "${_param:jenkins_pipelines_branch}"
+ credentials: "gerrit"
+ script: test-customers-salt-models.groovy
+ concurrent: false
+ trigger:
+ timer:
+ spec: "{{job_timer}}"
+ param:
+ CUSTOMERS:
+ type: string
+ description: "Comma separated list of customer model names"
+ default: "{{customers}}"
+
test_salt_model_customer:
name: test-salt-model-customer-{{name}}
template:
@@ -110,6 +138,10 @@
- addedContains:
commentAddedCommentContains: '^(?s:Patch Set \d+:.*(test|recheck|reverify)\s*)$'
param:
+ TEST_CLUSTER_NAMES:
+ type: string
+ description: "Comma separated list of cluster names, empty string means all valid clusters"
+ default: "{{test_cluster_names}}"
SALT_OPTS:
type: string
default: "--force-color"
@@ -151,6 +183,10 @@
RECLASS_IGNORE_CLASS_NOTFOUND:
type: boolean
default: "{{reclass_ignore_class_notfound}}"
+ RECLASS_VERSION:
+ type: string
+ default: "master"
+ description: "Version (branch) of Reclass we will use"
LEGACY_TEST_MODE:
type: boolean
default: "{{legacy_test_mode}}"
@@ -244,6 +280,9 @@
RECLASS_MODEL_BRANCH:
type: string
default: master
+ DISTRIB_REVISION:
+ type: string
+ default: 'nightly'
SYSTEM_GIT_URL:
type: string
default: ""
@@ -255,7 +294,7 @@
default: "1"
EXTRA_FORMULAS:
type: string
- default: "aptly artifactory backupninja collectd devops-portal docker elasticsearch freeipa gerrit glusterfs grafana haproxy heka horizon influxdb jenkins keepalived kibana libvirt maas memcached mysql nginx ntp openldap openssh postfix prometheus rsync rsyslog rundeck sensu sphinx telegraf xtrabackup"
+ default: "aptly artifactory backupninja collectd devops-portal docker elasticsearch fluentd freeipa gerrit glusterfs grafana haproxy heka horizon influxdb jenkins keepalived kibana libvirt maas memcached mysql nginx ntp openldap openssh postfix prometheus rsync rsyslog rundeck sensu sphinx telegraf xtrabackup watchdog"
job:
test-salt-model-node:
name: test-salt-model-node
@@ -309,6 +348,10 @@
SYSTEM_GIT_REF:
type: string
default: ""
+ RECLASS_VERSION:
+ type: string
+ default: "master"
+ description: "Version (branch) of Reclass we will use"
MAX_CPU_PER_JOB:
type: string
default: "2"
diff --git a/jenkins/client/job/validate.yml b/jenkins/client/job/validate.yml
index e8ed6d6..c97c0ad 100644
--- a/jenkins/client/job/validate.yml
+++ b/jenkins/client/job/validate.yml
@@ -234,7 +234,7 @@
TEMPEST_TEST_PATTERN:
type: string
default: "set=smoke"
- description: Use set=smoke (or identity,full...] or just test name
+ description: Use set=smoke (or identity,full...) or just test name
TEMPEST_ENDPOINT_TYPE:
type: choice
choices:
@@ -276,11 +276,11 @@
description: Credentials to the Salt API
TEMPEST_TARGET_NODE:
type: string
- default: ""
+ default: "${_param:cicd_control_node03_hostname}.${_param:cluster_domain}"
description: Node where container with tempest will be run
TEST_IMAGE:
type: string
- default: "rallyforge/rally"
+ default: "xrally/xrally-openstack:0.9.1"
description: Docker image to use for running Rally/Tempest
TARGET_NODES:
type: string
@@ -296,7 +296,7 @@
description: If you have any problems with timeouts (e.g. while waiting for node to be up/down), please increase this value
SKIP_LIST_PATH:
type: string
- default: "/home/rally/cvp-configuration/tempest/skip-list.yaml"
+ default: "cvp-configuration/tempest/skip-list.yaml"
description: path to skip-list file inside container
PROXY:
type: string
@@ -305,7 +305,7 @@
TEMPEST_TEST_PATTERN:
type: string
default: "set=smoke"
- description: Use set=smoke (or identity,full...] or just test name
+ description: Use set=smoke (or identity,full...) or just test name
MANUAL_CONFIRMATION:
type: boolean
default: 'false'
@@ -316,7 +316,7 @@
description: Can be repo url (local or remote) or path to folder (inside container) with Tempest
TOOLS_REPO:
type: string
- default: "${_param:gerrit_public_host}/cvp-configuration"
+ default: "https://github.com/Mirantis/cvp-configuration"
description: URL of repo where testing tools, scenarios, configs are located.
cvp-perf:
type: workflow-scm
diff --git a/jenkins/client/job/vnf-onboarding/init.yml b/jenkins/client/job/vnf-onboarding/init.yml
index cd97fef..19ba3f6 100644
--- a/jenkins/client/job/vnf-onboarding/init.yml
+++ b/jenkins/client/job/vnf-onboarding/init.yml
@@ -1,6 +1,7 @@
classes:
- system.jenkins.client.job.vnf-onboarding.test_avi_loadbalancer
- system.jenkins.client.job.vnf-onboarding.test_nginx_vnf
+ - system.jenkins.client.job.vnf-onboarding.test_platform
parameters:
_param:
@@ -9,3 +10,4 @@
vnf_openstack_api_url: "${_param:cluster_public_protocol}://${_param:cluster_public_host}:5000/v2.0"
vnf_openstack_api_credentials: "test-openstack"
vnf_elastic_url: "${_param:stacklight_log_address}:${_param:cluster_elasticsearch_port}"
+ vnf_docker_registry_path: "docker-dev-local.docker.mirantis.net/mirantis/vnf-onboarding"
diff --git a/jenkins/client/job/vnf-onboarding/test_platform.yml b/jenkins/client/job/vnf-onboarding/test_platform.yml
new file mode 100644
index 0000000..1dd0051
--- /dev/null
+++ b/jenkins/client/job/vnf-onboarding/test_platform.yml
@@ -0,0 +1,99 @@
+parameters:
+ jenkins:
+ client:
+ plugin:
+ gerrit-trigger: {}
+ job:
+ platform_validation_pipeline:
+ type: workflow-scm
+ name: platform_validation_pipeline
+ display_name: "Validate OpenStack platform before deploy of VNF"
+ discard:
+ build:
+ keep_num: 20
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/vnf-onboarding/pipelines"
+ credentials: "${_param:vnf_gerrit_credentials}"
+ script: test_platform.groovy
+ param:
+ OPENSTACK_API_CREDENTIALS:
+ type: string
+ description: "OpenStack admin user credentials for running tests"
+ default: "${_param:vnf_openstack_api_credentials}"
+ OS_PROJECT_NAME:
+ type: string
+ description: "OpenStack project name for running tests"
+ default: "platform-test"
+ OS_AUTH_URL:
+ type: string
+ description: "OpenStack auth url"
+ default: "http://${_param:openstack_control_address}:35357/v3"
+ IMAGE_ID:
+ type: string
+ description: "Specify image id to execute tests against custom images"
+ default: ""
+ FLAVOR_ID:
+ type: string
+ description: "Specify flavor id to execute tests against custom images"
+ default: ""
+ MIN_COMPUTE_NODES:
+ type: string
+ description: "Specify number of compute nodes of environment"
+ default: '2'
+ FIXED_SHARED_NETWORK_NAME:
+ type: string
+ description: "Shared network that will be used in tests."
+ default: "test-shared"
+ COMPUTE_NODE_HOST_NAME:
+ type: string
+ description: "To run CPU pinning/NUMA topology tests against specific node"
+ default: ''
+ COMPUTE_AVAILABILITY_ZONE:
+ type: string
+ description: "To run CPU pinning/NUMA topology tests against specific node"
+ default: 'nova'
+ COMPUTE_NUMA_NODE_COUNT:
+ type: string
+ description: "Number of NUMA node for NUMA topology testing."
+ default: '2'
+ IMAGE_SSH_USER:
+ type: string
+ description: "Specify user name to login in test OpenStack VMs"
+ default: "cirros"
+ VNF_PLATFORM_TESTS_REPO:
+ type: string
+ description: "Repository with testing framework"
+ default: "${_param:jenkins_gerrit_url}vnf-onboarding/platform-tests"
+ VNF_PLATFORM_TESTS_BRANCH:
+ type: string
+ default: "master"
+ VNF_PLATFORM_TESTS_REPO_CREDENTIALS:
+ type: string
+ default: "${_param:vnf_gerrit_credentials}"
+ TEMPEST_IMAGE_DOCKER_REGISTRY_PATH:
+ type: string
+ description: "Path for docker image with testing tool. If empty, image will be build using VNF_PLATFORM_TESTS_* parameters."
+ default: ${_param:vnf_docker_registry_path}
+ TEMPEST_IMAGE_NAME:
+ type: string
+ description: "Name of docker image with testing tool"
+ default: "platform_tests:latest"
+ ELASTIC_URL:
+ type: string
+ description: "URL to elastic search API"
+ default: "${_param:vnf_elastic_url}"
+ ELASTIC_TRANSFER_REPO:
+ type: string
+ description: "Repository with scripts for transfering test results to elastic search"
+ default: "${_param:jenkins_gerrit_url}/vnf-onboarding/nfv-platform"
+ ELASTIC_TRANSFER_REPO_CREDENTIALS:
+ type: string
+ default: "${_param:vnf_gerrit_credentials}"
+ ELASTIC_TRANSFER_REPO_BRANCH:
+ type: string
+ default: "master"
+ DOCKER_TEMPEST_PARAMS:
+ type: string
+ description: "Pass custom parameters for tempest container"
+ default: ""
diff --git a/jenkins/slave/libvirt.yml b/jenkins/slave/libvirt.yml
index e40b841..4ebaae2 100644
--- a/jenkins/slave/libvirt.yml
+++ b/jenkins/slave/libvirt.yml
@@ -14,6 +14,9 @@
version: latest
libvirt-bin:
version: latest
+ # Reguired to simplify building custom cloud-init.iso
+ cloud-image-utils:
+ version: latest
# Ensure FORWARD chain to be ACCEPT to avoid issue when running with docker
# 1.13 and newer that sets chain to DROP, see:
# https://github.com/docker/docker/pull/28257
diff --git a/keepalived/cluster/instance/cicd_control_vip.yml b/keepalived/cluster/instance/cicd_control_vip.yml
index ab7f413..462cbd6 100644
--- a/keepalived/cluster/instance/cicd_control_vip.yml
+++ b/keepalived/cluster/instance/cicd_control_vip.yml
@@ -5,6 +5,12 @@
parameters:
keepalived:
cluster:
+ vrrp_scripts:
+ vip:
+ content: "pidof haproxy && docker service ls"
+ interval: 30
+ rise: 1
+ fall: 1
enabled: true
instance:
cicd_control_vip:
@@ -13,3 +19,4 @@
interface: ${_param:keepalived_vip_interface}
virtual_router_id: ${_param:keepalived_vip_virtual_router_id}
priority: ${_param:keepalived_vip_priority}
+ track_script: vip
diff --git a/keepalived/cluster/instance/openstack_baremetal_vip.yml b/keepalived/cluster/instance/openstack_baremetal_vip.yml
index c3141b6..355cf53 100644
--- a/keepalived/cluster/instance/openstack_baremetal_vip.yml
+++ b/keepalived/cluster/instance/openstack_baremetal_vip.yml
@@ -11,6 +11,12 @@
keepalived_openstack_baremetal_vip_priority: ${_param:keepalived_vip_priority}
keepalived:
cluster:
+ vrrp_scripts:
+ check_pidof:
+ args: "haproxy"
+ interval: 10
+ rise: 1
+ fall: 1
enabled: true
instance:
openstack_baremetal_vip:
@@ -19,3 +25,4 @@
interface: ${_param:keepalived_openstack_baremetal_vip_interface}
virtual_router_id: ${_param:keepalived_openstack_baremetal_vip_virtual_router_id}
priority: ${_param:keepalived_openstack_baremetal_vip_priority}
+ track_script: check_pidof
diff --git a/keepalived/cluster/instance/openstack_web_public_vip.yml b/keepalived/cluster/instance/openstack_web_public_vip.yml
index 8279b65..1080e62 100644
--- a/keepalived/cluster/instance/openstack_web_public_vip.yml
+++ b/keepalived/cluster/instance/openstack_web_public_vip.yml
@@ -9,6 +9,12 @@
keepalived_openstack_web_public_vip_interface: eth1
keepalived:
cluster:
+ vrrp_scripts:
+ check_pidof:
+ args: "haproxy"
+ interval: 10
+ rise: 1
+ fall: 1
enabled: true
instance:
openstack_web_public_vip:
@@ -17,3 +23,4 @@
interface: ${_param:keepalived_openstack_web_public_vip_interface}
virtual_router_id: 132
priority: ${_param:keepalived_vip_priority}
+ track_script: check_pidof
diff --git a/keepalived/cluster/instance/prometheus_server_vip.yml b/keepalived/cluster/instance/prometheus_server_vip.yml
index 7bde702..aea8b55 100644
--- a/keepalived/cluster/instance/prometheus_server_vip.yml
+++ b/keepalived/cluster/instance/prometheus_server_vip.yml
@@ -5,8 +5,15 @@
parameters:
_param:
keepalived_vip_priority: 101
+ keepalived_prometheus_vrrp_script_content: "pidof haproxy && docker service ls"
keepalived:
cluster:
+ vrrp_scripts:
+ vip:
+ content: ${_param:keepalived_prometheus_vrrp_script_content}
+ interval: 30
+ rise: 1
+ fall: 1
enabled: true
instance:
prometheus_server_vip:
@@ -15,4 +22,4 @@
interface: ${_param:keepalived_prometheus_vip_interface}
virtual_router_id: 105
priority: ${_param:keepalived_vip_priority}
-
+ track_script: vip
diff --git a/keepalived/cluster/instance/stacklight_log_vip.yml b/keepalived/cluster/instance/stacklight_log_vip.yml
index caa6754..44d3527 100644
--- a/keepalived/cluster/instance/stacklight_log_vip.yml
+++ b/keepalived/cluster/instance/stacklight_log_vip.yml
@@ -5,6 +5,12 @@
parameters:
keepalived:
cluster:
+ vrrp_scripts:
+ check_pidof:
+ args: "haproxy"
+ interval: 10
+ rise: 1
+ fall: 1
enabled: true
instance:
stacklight_log_vip:
@@ -13,3 +19,4 @@
interface: ${_param:keepalived_stacklight_log_vip_interface}
virtual_router_id: 110
priority: 101
+ track_script: check_pidof
diff --git a/keepalived/cluster/instance/stacklight_monitor_vip.yml b/keepalived/cluster/instance/stacklight_monitor_vip.yml
index 28a6b69..51283b2 100644
--- a/keepalived/cluster/instance/stacklight_monitor_vip.yml
+++ b/keepalived/cluster/instance/stacklight_monitor_vip.yml
@@ -3,8 +3,16 @@
classes:
- service.keepalived.support
parameters:
+ _param:
+ keepalived_docker_vrrp_script_content: "docker service ls"
keepalived:
cluster:
+ vrrp_scripts:
+ docker_service_ls:
+ content: ${_param:keepalived_docker_vrrp_script_content}
+ interval: 10
+ rise: 1
+ fall: 1
enabled: true
instance:
stacklight_monitor_vip:
@@ -13,3 +21,4 @@
interface: ${_param:keepalived_stacklight_monitor_vip_interface}
virtual_router_id: 100
priority: 101
+ track_script: docker_service_ls
diff --git a/keepalived/cluster/instance/stacklight_telemetry_vip.yml b/keepalived/cluster/instance/stacklight_telemetry_vip.yml
index e7d31a5..95d4d80 100644
--- a/keepalived/cluster/instance/stacklight_telemetry_vip.yml
+++ b/keepalived/cluster/instance/stacklight_telemetry_vip.yml
@@ -5,6 +5,12 @@
parameters:
keepalived:
cluster:
+ vrrp_scripts:
+ check_pidof:
+ args: "haproxy"
+ interval: 10
+ rise: 1
+ fall: 1
enabled: true
instance:
stacklight_telemetry_vip:
@@ -13,3 +19,4 @@
interface: ${_param:keepalived_stacklight_telemetry_vip_interface}
virtual_router_id: 120
priority: 101
+ track_script: check_pidof
diff --git a/keystone/client/service/aodh.yml b/keystone/client/service/aodh.yml
index c4d49b8..e7b0dbb 100644
--- a/keystone/client/service/aodh.yml
+++ b/keystone/client/service/aodh.yml
@@ -2,6 +2,7 @@
_param:
cluster_public_protocol: https
aodh_service_protocol: http
+ aodh_public_host: ${_param:cluster_public_host}
keystone:
client:
server:
@@ -19,7 +20,7 @@
description: OpenStack Alarming Service
endpoints:
- region: ${_param:openstack_region}
- public_address: ${_param:cluster_public_host}
+ public_address: ${_param:aodh_public_host}
public_protocol: ${_param:cluster_public_protocol}
public_port: 8042
public_path: '/'
diff --git a/keystone/client/service/ceilometer.yml b/keystone/client/service/ceilometer.yml
index 90e0d3e..40f4ebf 100644
--- a/keystone/client/service/ceilometer.yml
+++ b/keystone/client/service/ceilometer.yml
@@ -2,6 +2,7 @@
_param:
cluster_public_protocol: https
ceilometer_service_protocol: http
+ ceilometer_public_host: ${_param:cluster_public_host}
keystone:
client:
server:
@@ -19,7 +20,7 @@
description: OpenStack Telemetry Service
endpoints:
- region: ${_param:openstack_region}
- public_address: ${_param:cluster_public_host}
+ public_address: ${_param:ceilometer_public_host}
public_protocol: ${_param:cluster_public_protocol}
public_port: 8777
public_path: '/'
diff --git a/keystone/client/service/gnocchi.yml b/keystone/client/service/gnocchi.yml
new file mode 100644
index 0000000..6707764
--- /dev/null
+++ b/keystone/client/service/gnocchi.yml
@@ -0,0 +1,34 @@
+parameters:
+ _param:
+ cluster_public_protocol: https
+ gnocchi_service_protocol: http
+ gnocchi_public_host: ${_param:cluster_public_host}
+ keystone:
+ client:
+ server:
+ identity:
+ project:
+ service:
+ user:
+ gnocchi:
+ is_admin: true
+ password: ${_param:keystone_gnocchi_password}
+ email: ${_param:admin_email}
+ service:
+ gnocchi:
+ type: metric
+ description: OpenStack Metric Service
+ endpoints:
+ - region: ${_param:openstack_region}
+ public_address: ${_param:gnocchi_public_host}
+ public_protocol: ${_param:cluster_public_protocol}
+ public_port: 8041
+ public_path: '/'
+ internal_address: ${_param:gnocchi_service_host}
+ internal_port: 8041
+ internal_path: '/'
+ internal_protocol: ${_param:gnocchi_service_protocol}
+ admin_protocol: ${_param:gnocchi_service_protocol}
+ admin_address: ${_param:gnocchi_service_host}
+ admin_port: 8041
+ admin_path: '/'
diff --git a/keystone/client/service/keystone.yml b/keystone/client/service/keystone.yml
index d9092e0..ba116f8 100644
--- a/keystone/client/service/keystone.yml
+++ b/keystone/client/service/keystone.yml
@@ -2,6 +2,9 @@
_param:
cluster_public_protocol: https
keystone_service_protocol: http
+ keystone_public_path: "/v2.0"
+ keystone_internal_path: "/v2.0"
+ keystone_admin_path: "/v2.0"
keystone:
client:
server:
@@ -15,12 +18,12 @@
public_address: ${_param:cluster_public_host}
public_protocol: ${_param:cluster_public_protocol}
public_port: 5000
- public_path: '/v2.0'
+ public_path: ${_param:keystone_public_path}
internal_address: ${_param:keystone_service_host}
internal_port: 5000
- internal_path: '/v2.0'
+ internal_path: ${_param:keystone_internal_path}
internal_protocol: ${_param:keystone_service_protocol}
admin_address: ${_param:keystone_service_host}
admin_port: 35357
- admin_path: '/v2.0'
+ admin_path: ${_param:keystone_admin_path}
admin_protocol: ${_param:keystone_service_protocol}
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/keystone/client/service/panko.yml b/keystone/client/service/panko.yml
index 05f9453..6f86b36 100644
--- a/keystone/client/service/panko.yml
+++ b/keystone/client/service/panko.yml
@@ -1,6 +1,8 @@
parameters:
_param:
cluster_public_protocol: https
+ panko_service_protocol: http
+ panko_public_host: ${_param:cluster_public_host}
keystone:
client:
server:
@@ -18,13 +20,15 @@
description: OpenStack Event Service
endpoints:
- region: ${_param:openstack_region}
- public_address: ${_param:cluster_public_host}
+ public_address: ${_param:panko_public_host}
public_protocol: ${_param:cluster_public_protocol}
public_port: 8977
public_path: '/'
internal_address: ${_param:panko_service_host}
internal_port: 8977
internal_path: '/'
+ internal_protocol: ${_param:panko_service_protocol}
+ admin_protocol: ${_param:panko_service_protocol}
admin_address: ${_param:panko_service_host}
admin_port: 8977
admin_path: '/'
diff --git a/kubernetes/master/cluster.yml b/kubernetes/master/cluster.yml
index f21f003..78e91a0 100644
--- a/kubernetes/master/cluster.yml
+++ b/kubernetes/master/cluster.yml
@@ -11,7 +11,6 @@
master:
container: false
network:
- engine: calico
- private_ip_range: ${_param:calico_private_network}/${_param:calico_private_netmask}
- prometheus:
- enabled: true
+ calico:
+ prometheus:
+ enabled: true
diff --git a/kubernetes/master/single.yml b/kubernetes/master/single.yml
index cc8d8ab..684af64 100644
--- a/kubernetes/master/single.yml
+++ b/kubernetes/master/single.yml
@@ -7,5 +7,3 @@
kubernetes:
master:
container: false
- network:
- engine: calico
diff --git a/kubernetes/pool/cluster.yml b/kubernetes/pool/cluster.yml
index 3dd0c40..d223d57 100644
--- a/kubernetes/pool/cluster.yml
+++ b/kubernetes/pool/cluster.yml
@@ -4,7 +4,7 @@
parameters:
_param:
# component docker images
- kubernetes_calicoctl_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/ctl:latest
+ kubernetes_calico_calicoctl_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/ctl:latest
kubernetes_calico_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/node:latest
kubernetes_calico_cni_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/cni:latest
kubernetes_hyperkube_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/hyperkube-amd64:v1.6.2-2
@@ -15,9 +15,9 @@
pool:
container: false
network:
- engine: calico
- prometheus:
- enabled: true
+ calico:
+ prometheus:
+ enabled: true
docker:
host:
options:
diff --git a/kubernetes/pool/single.yml b/kubernetes/pool/single.yml
index 67363a6..d6282c3 100644
--- a/kubernetes/pool/single.yml
+++ b/kubernetes/pool/single.yml
@@ -4,7 +4,7 @@
parameters:
_param:
# component docker images
- kubernetes_calicoctl_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/ctl:latest
+ kubernetes_calico_calicoctl_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/ctl:latest
kubernetes_calico_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/node:latest
kubernetes_calico_cni_image: docker-prod-virtual.docker.mirantis.net/mirantis/projectcalico/calico/cni:latest
kubernetes_hyperkube_image: docker-prod-virtual.docker.mirantis.net/mirantis/kubernetes/hyperkube-amd64:v1.6.2-2
@@ -14,8 +14,6 @@
kubernetes:
pool:
container: false
- network:
- engine: calico
docker:
host:
options:
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/linux/system/repo/mcp/apt_mirantis/aptly.yml b/linux/system/repo/mcp/apt_mirantis/aptly.yml
index b0cf536..5a023a5 100644
--- a/linux/system/repo/mcp/apt_mirantis/aptly.yml
+++ b/linux/system/repo/mcp/apt_mirantis/aptly.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_aptly_version}/aptly/${_param:linux_system_codename}/ squeeze main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: 9E3E53F19C7DE460
+ key_server: keys.gnupg.net
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
index 308f555..8bf3583 100644
--- a/linux/system/repo/mcp/apt_mirantis/cassandra.yml
+++ b/linux/system/repo/mcp/apt_mirantis/cassandra.yml
@@ -7,11 +7,8 @@
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}"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_cassandra_version}/cassandra/${_param:linux_system_codename}/ ${_param:linux_system_repo_mcp_cassandra_version_number} main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: F8358FA2F2833C93
+ key_server: keyserver.ubuntu.com
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
index 2532f86..40c8d87 100644
--- a/linux/system/repo/mcp/apt_mirantis/ceph.yml
+++ b/linux/system/repo/mcp/apt_mirantis/ceph.yml
@@ -7,11 +7,11 @@
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}"
+ source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/ ${_param:linux_system_repo_mcp_ceph_version} ceph-${_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
+ package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/docker.yml b/linux/system/repo/mcp/apt_mirantis/docker.yml
index cbd3097..d3314a9 100644
--- a/linux/system/repo/mcp/apt_mirantis/docker.yml
+++ b/linux/system/repo/mcp/apt_mirantis/docker.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_docker_version}/docker/${_param:linux_system_codename}/ ${_param:linux_system_codename} 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: '*'
+ key_id: 8D81803C0EBFCD88
+ key_server: keyserver.ubuntu.com
+ clean_file: true
\ No newline at end of file
diff --git a/linux/system/repo/mcp/apt_mirantis/docker_legacy.yml b/linux/system/repo/mcp/apt_mirantis/docker_legacy.yml
index cf49630..2689869 100644
--- a/linux/system/repo/mcp/apt_mirantis/docker_legacy.yml
+++ b/linux/system/repo/mcp/apt_mirantis/docker_legacy.yml
@@ -6,7 +6,7 @@
system:
repo:
mcp_docker_legacy:
- source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_docker_legacy_version}/docker-1.x/ ubuntu-${_param:linux_system_codename} main"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_docker_legacy_version}/docker-1.x/${_param:linux_system_codename}/ ubuntu-${_param:linux_system_codename} main"
architectures: amd64
key_id: 58118E89F3A912897C070ADBF76221572C52609D
key_server: keyserver.ubuntu.com
\ No newline at end of file
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml b/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml
index 4add81e..1db8267 100644
--- a/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml
@@ -6,11 +6,8 @@
system:
repo:
mcp_elastic_2x:
- source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/elastic/2.x/ ${_param:linux_system_repo_mcp_elastic_2x_version} main"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_elastic_2x_version}/elasticsearch-2.x/${_param:linux_system_codename}/ stable main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: D88E42B4
+ key_server: keyserver.ubuntu.com
clean_file: true
- pin:
- - pin: 'release a=${_param:linux_system_repo_mcp_elastic_2x_version}'
- priority: 1100
- package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml b/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml
index 8876c51..453b3bc 100644
--- a/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml
@@ -6,11 +6,8 @@
system:
repo:
mcp_elastic_5x:
- source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/elastic/5.x/ ${_param:linux_system_repo_mcp_elastic_5x_version} main"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_elastic_5x_version}/elasticsearch-5.x/${_param:linux_system_codename}/ stable main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: D88E42B4
+ key_server: keyserver.ubuntu.com
clean_file: true
- pin:
- - pin: 'release a=${_param:linux_system_repo_mcp_elastic_5x_version}'
- priority: 1100
- package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/fluentd.yml b/linux/system/repo/mcp/apt_mirantis/fluentd.yml
index da7d3ca..58df85f 100644
--- a/linux/system/repo/mcp/apt_mirantis/fluentd.yml
+++ b/linux/system/repo/mcp/apt_mirantis/fluentd.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_fluentd_version}/td-agent/${_param:linux_system_codename} ${_param:linux_system_codename} contrib"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: 901F9177AB97ACBE
+ key_server: keyserver.ubuntu.com
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
index 1f5dd0e..02f2fd9 100644
--- a/linux/system/repo/mcp/apt_mirantis/glusterfs.yml
+++ b/linux/system/repo/mcp/apt_mirantis/glusterfs.yml
@@ -2,16 +2,13 @@
_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_version_number: "3.8"
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}"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_glusterfs_version}/glusterfs-${_param:linux_system_repo_mcp_glusterfs_version_number}/${_param:linux_system_codename}/ ${_param:linux_system_codename} main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: 3FE869A9
+ key_server: keyserver.ubuntu.com
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
index 2d71740..5bf9396 100644
--- a/linux/system/repo/mcp/apt_mirantis/grafana.yml
+++ b/linux/system/repo/mcp/apt_mirantis/grafana.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_grafana_version}/grafana/${_param:linux_system_codename}/ jessie main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: C2E73424D59097AB
+ key_server: keyserver.ubuntu.com
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
index f3c1fec..e6ebcb3 100644
--- a/linux/system/repo/mcp/apt_mirantis/influxdb.yml
+++ b/linux/system/repo/mcp/apt_mirantis/influxdb.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_influxdb_version}/influxdb/${_param:linux_system_codename}/ ${_param:linux_system_codename} stable"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: 684A14CF2582E0C5
+ key_server: keyserver.ubuntu.com
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/46.yml b/linux/system/repo/mcp/apt_mirantis/kibana/46.yml
index f3795ad..21ab878 100644
--- a/linux/system/repo/mcp/apt_mirantis/kibana/46.yml
+++ b/linux/system/repo/mcp/apt_mirantis/kibana/46.yml
@@ -6,11 +6,8 @@
system:
repo:
mcp_kibana_46:
- source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/kibana/4.6/ ${_param:linux_system_repo_mcp_kibana_46_version} kibana-46"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_kibana_46_version}/kibana-4.6/${_param:linux_system_codename}/ stable main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: D88E42B4
+ key_server: keyserver.ubuntu.com
clean_file: true
- pin:
- - pin: 'release a=${_param:linux_system_repo_mcp_kibana_46_version}'
- priority: 1100
- package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/kibana/5x.yml b/linux/system/repo/mcp/apt_mirantis/kibana/5x.yml
index e2f4795..3c3d128 100644
--- a/linux/system/repo/mcp/apt_mirantis/kibana/5x.yml
+++ b/linux/system/repo/mcp/apt_mirantis/kibana/5x.yml
@@ -6,11 +6,8 @@
system:
repo:
mcp_kibana_5x:
- source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/kibana/5.x/ ${_param:linux_system_repo_mcp_kibana_5x_version} kibana-5x"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_kibana_5x_version}/elasticsearch-5.x/${_param:linux_system_codename}/ stable main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: D88E42B4
+ key_server: keyserver.ubuntu.com
clean_file: true
- pin:
- - pin: 'release a=${_param:linux_system_repo_mcp_kibana_5x_version}'
- priority: 1100
- package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/maas.yml b/linux/system/repo/mcp/apt_mirantis/maas.yml
index b18bf65..7ee3537 100644
--- a/linux/system/repo/mcp/apt_mirantis/maas.yml
+++ b/linux/system/repo/mcp/apt_mirantis/maas.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_maas_version}/maas/${_param:linux_system_codename}/ ${_param:linux_system_codename} main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: 684D4A1C
+ key_server: keyserver.ubuntu.com
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/saltstack_2016_3.yml b/linux/system/repo/mcp/apt_mirantis/saltstack_2016_3.yml
index bec95cd..c47e177 100644
--- a/linux/system/repo/mcp/apt_mirantis/saltstack_2016_3.yml
+++ b/linux/system/repo/mcp/apt_mirantis/saltstack_2016_3.yml
@@ -6,11 +6,8 @@
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"
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_saltstack_version}/saltstack-2016.3/${_param:linux_system_codename}/ ${_param:linux_system_codename} main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: 0E08A149DE57BFBE
+ key_server: keyserver.ubuntu.com
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
index f86b88a..fb1045f 100644
--- a/linux/system/repo/mcp/apt_mirantis/sensu.yml
+++ b/linux/system/repo/mcp/apt_mirantis/sensu.yml
@@ -1,16 +1,13 @@
parameters:
_param:
apt_mk_version: stable
- linux_system_repo_mcp_extra_version: ${_param:apt_mk_version}
+ linux_system_repo_mcp_sensu_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"
+ mcp_sensu:
+ source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_sensu_version}/sensu/${_param:linux_system_codename}/ sensu main"
architectures: amd64
- key_url: "http://apt.mirantis.com/public.gpg"
+ key_id: A20F259AEB9C94BB
+ key_server: keyserver.ubuntu.com
clean_file: true
- pin:
- - pin: 'release a=${_param:linux_system_repo_mcp_extra_version}'
- priority: 1100
- package: '*'
diff --git a/linux/system/repo/mcp/updates.yml b/linux/system/repo/mcp/updates.yml
new file mode 100644
index 0000000..6d08b19
--- /dev/null
+++ b/linux/system/repo/mcp/updates.yml
@@ -0,0 +1,16 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ linux_system_repo_mcp_updates_version: ${_param:apt_mk_version}
+ linux:
+ system:
+ repo:
+ mcp_updates:
+ source: "deb [arch=amd64] http://apt.mirantis.com/${_param:linux_system_codename}/ ${_param:linux_system_repo_mcp_updates_version} updates"
+ architectures: amd64
+ key_url: "http://apt.mirantis.com/public.gpg"
+ clean_file: true
+ pin:
+ - pin: 'release a=${_param:linux_system_repo_mcp_updates_version}'
+ priority: 1200
+ package: '*'
diff --git a/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml b/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml
index 40682d7..d0a1671 100644
--- a/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml
+++ b/linux/system/repo_local/mcp/apt_mirantis/fluentd.yml
@@ -6,7 +6,7 @@
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"
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/fluentd ${_param:apt_mk_version} contrib"
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
clean_file: true
diff --git a/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml b/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml
index ca7e1bd..cb3444b 100644
--- a/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml
+++ b/linux/system/repo_local/mcp/apt_mirantis/glusterfs.yml
@@ -2,7 +2,7 @@
_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_version_number: "3.8"
linux:
system:
repo:
diff --git a/linux/system/repo_local/mcp/updates.yml b/linux/system/repo_local/mcp/updates.yml
new file mode 100644
index 0000000..f7f22d1
--- /dev/null
+++ b/linux/system/repo_local/mcp/updates.yml
@@ -0,0 +1,17 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ linux_system_repo_mcp_updates_version: ${_param:apt_mk_version}
+ linux:
+ system:
+ repo:
+ mcp_updates:
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:linux_system_repo_mcp_updates_version} updates"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
+ clean_file: true
+ pin:
+ - pin: 'release a=${_param:linux_system_repo_mcp_updates_version}'
+ priority: 1200
+ package: '*'
diff --git a/linux/system/single/debian.yml b/linux/system/single/debian.yml
index b6d0b2b..b4d08c9 100644
--- a/linux/system/single/debian.yml
+++ b/linux/system/single/debian.yml
@@ -6,5 +6,31 @@
linux:
system:
package:
+ apt-transport-https:
+ version: latest
+ cloud-init:
+ version: purged
+ mcelog:
+ version: latest
python-msgpack:
version: latest
+ unattended-upgrades:
+ version: purged
+ apt:
+ config:
+ compression-workaround:
+ "Acquire::CompressionTypes::Order": "gz"
+ aws-s3-mirrors-workaround:
+ "Acquire::http::Pipeline-Depth": "0"
+ dont_install_recommends:
+ "APT::Install-Recommends": "false"
+ dont_install_suggests:
+ "APT::Install-Suggests": "false"
+ dont_acquire_all_languages:
+ "Acquire::Languages": "none"
+ dont_update_package_list:
+ "APT::Periodic::Update-Package-Lists": "0"
+ dont_update_download_upg_packages:
+ "APT::Periodic::Download-Upgradeable-Packages": "0"
+ disable_unattended_upgrade:
+ "APT::Periodic::Unattended-Upgrade": "0"
diff --git a/linux/system/single/init.yml b/linux/system/single/init.yml
index 70eae66..dae70ff 100644
--- a/linux/system/single/init.yml
+++ b/linux/system/single/init.yml
@@ -14,19 +14,6 @@
enabled: true
name: root
home: /root
- package:
- cloud-init:
- version: purged
- unattended-upgrades:
- version: purged
- mcelog:
- version: latest
- apt:
- config:
- compression-workaround:
- "Acquire::CompressionTypes::Order": "gz"
- aws-s3-mirrors-workaround:
- "Acquire::http::Pipeline-Depth": "0"
kernel:
modules:
- nf_conntrack
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/control/cluster.yml b/manila/control/cluster.yml
new file mode 100644
index 0000000..ff6ca10
--- /dev/null
+++ b/manila/control/cluster.yml
@@ -0,0 +1,15 @@
+classes:
+ - system.manila.common.cluster
+ - system.apache.server.site.manila
+ - system.haproxy.proxy.listen.openstack.manila
+parameters:
+ manila:
+ common:
+ dhss: false
+ version: ${_param:openstack_version}
+ api:
+ enabled: true
+ version: ${_param:openstack_version}
+ scheduler:
+ enabled: true
+ version: ${_param:openstack_version}
diff --git a/manila/control/single.yml b/manila/control/single.yml
new file mode 100644
index 0000000..3e14e96
--- /dev/null
+++ b/manila/control/single.yml
@@ -0,0 +1,14 @@
+classes:
+ - system.manila.common.cluster
+ - system.apache.server.site.manila
+parameters:
+ manila:
+ common:
+ dhss: false
+ version: ${_param:openstack_version}
+ api:
+ enabled: true
+ version: ${_param:openstack_version}
+ scheduler:
+ enabled: true
+ version: ${_param:openstack_version}
diff --git a/manila/share/backend/lvm.yml b/manila/share/backend/lvm.yml
new file mode 100644
index 0000000..fe709da
--- /dev/null
+++ b/manila/share/backend/lvm.yml
@@ -0,0 +1,28 @@
+parameters:
+ _param:
+ manila_share_address: ${_param:single_address}
+ linux:
+ storage:
+ lvm:
+ manila-vg:
+ enabled: true
+ name: manila-volume
+ devices: ${_param:manila_lvm_devices}
+ system:
+ package:
+ samba:
+ - name: samba
+ nfs-kernel-server:
+ - name: nfs-kernel-server
+ manila:
+ share:
+ enabled_share_backends:
+ lvm:
+ name: lvm
+ type: lvm
+ enabled: true
+ lvm_share_export_ips:
+ - "${_param:manila_share_address}"
+ dhss: false
+ share_driver: manila.share.drivers.lvm.LVMShareDriver
+ lvm_share_volume_group: manila-volume
diff --git a/manila/share/init.yml b/manila/share/init.yml
new file mode 100644
index 0000000..2c6558e
--- /dev/null
+++ b/manila/share/init.yml
@@ -0,0 +1,10 @@
+classes:
+ - service.manila.common.cluster
+parameters:
+ manila:
+ common:
+ dhss: false
+ version: ${_param:openstack_version}
+ share:
+ enabled: true
+ version: ${_param:openstack_version}
diff --git a/mongodb/server/cluster.yml b/mongodb/server/cluster.yml
index f3c16d6..02294c4 100644
--- a/mongodb/server/cluster.yml
+++ b/mongodb/server/cluster.yml
@@ -2,10 +2,13 @@
- service.mongodb.server.cluster
parameters:
_param:
+ openstack_telemetry_node01_hostname: mdb01
+ openstack_telemetry_node02_hostname: mdb02
+ openstack_telemetry_node03_hostname: mdb03
mongodb_server_replica_set: mongodb
- mongodb_master: mdb01
+ mongodb_master: ${_param:openstack_telemetry_node01_hostname}
mongodb_server_members:
- - host: mdb01
+ - host: ${_param:openstack_telemetry_node01_hostname}
priority: 2
- - host: mdb02
- - host: mdb03
+ - host: ${_param:openstack_telemetry_node02_hostname}
+ - host: ${_param:openstack_telemetry_node03_hostname}
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/neutron/compute/cluster.yml b/neutron/compute/cluster.yml
index 13ee31c..e348a93 100644
--- a/neutron/compute/cluster.yml
+++ b/neutron/compute/cluster.yml
@@ -4,6 +4,8 @@
_param:
neutron_enable_qos: False
neutron_enable_vlan_aware_vms: False
+ neutron_enable_bgp_vpn: False
+ neutron_bgp_vpn_driver: bagpipe
linux:
system:
package:
@@ -15,6 +17,9 @@
dvr: ${_param:neutron_compute_dvr}
qos: ${_param:neutron_enable_qos}
vlan_aware_vms: ${_param:neutron_enable_vlan_aware_vms}
+ bgp_vpn:
+ enabled: ${_param:neutron_enable_bgp_vpn}
+ driver: ${_param:neutron_bgp_vpn_driver}
agent_mode: ${_param:neutron_compute_agent_mode}
external_access: ${_param:neutron_compute_external_access}
backend:
diff --git a/neutron/control/cluster.yml b/neutron/control/cluster.yml
index ea9596d..166de3a 100644
--- a/neutron/control/cluster.yml
+++ b/neutron/control/cluster.yml
@@ -5,6 +5,8 @@
- system.haproxy.proxy.listen.openstack.neutron
- system.galera.server.database.neutron
parameters:
+ _param:
+ cluster_internal_protocol: 'http'
linux:
system:
package:
@@ -36,3 +38,5 @@
neutron:
server:
plugin: contrail
+ identity:
+ protocol: ${_param:cluster_internal_protocol}
diff --git a/neutron/control/opendaylight/cluster.yml b/neutron/control/opendaylight/cluster.yml
new file mode 100644
index 0000000..1f8142e
--- /dev/null
+++ b/neutron/control/opendaylight/cluster.yml
@@ -0,0 +1,22 @@
+classes:
+- service.keepalived.cluster.single
+- service.haproxy.proxy.single
+- service.neutron.control.cluster
+- system.neutron.control.openvswitch.cluster
+parameters:
+ _param:
+ opendaylight_router: odl-router_v2
+ opendaylight_driver: opendaylight_v2
+ neutron:
+ server:
+ backend:
+ opendaylight: true
+ host: ${_param:opendaylight_service_host}
+ rest_api_port: 8282
+ user: admin
+ password: admin
+ ovsdb_connection: tcp:127.0.0.1:6639
+ router: ${_param:opendaylight_router}
+ mechanism:
+ ovs:
+ driver: ${_param:opendaylight_driver}
diff --git a/neutron/control/opendaylight/single.yml b/neutron/control/opendaylight/single.yml
new file mode 100644
index 0000000..297cfa0
--- /dev/null
+++ b/neutron/control/opendaylight/single.yml
@@ -0,0 +1,20 @@
+classes:
+- service.neutron.control.single
+- system.neutron.control.openvswitch.single
+parameters:
+ _param:
+ opendaylight_router: odl-router_v2
+ opendaylight_driver: opendaylight_v2
+ neutron:
+ server:
+ backend:
+ opendaylight: true
+ host: ${_param:opendaylight_service_host}
+ rest_api_port: 8282
+ user: admin
+ password: admin
+ ovsdb_connection: tcp:127.0.0.1:6639
+ router: ${_param:opendaylight_router}
+ mechanism:
+ ovs:
+ driver: ${_param:opendaylight_driver}
diff --git a/neutron/control/openvswitch/cluster.yml b/neutron/control/openvswitch/cluster.yml
index 80489c8..3f80a55 100644
--- a/neutron/control/openvswitch/cluster.yml
+++ b/neutron/control/openvswitch/cluster.yml
@@ -12,6 +12,9 @@
neutron_tenant_network_types: "flat,vxlan"
neutron_enable_qos: False
neutron_enable_vlan_aware_vms: False
+ neutron_enable_bgp_vpn: False
+ neutron_bgp_vpn_driver: bagpipe
+ cluster_internal_protocol: 'http'
neutron:
server:
global_physnet_mtu: ${_param:neutron_global_physnet_mtu}
@@ -19,6 +22,9 @@
dvr: ${_param:neutron_control_dvr}
qos: ${_param:neutron_enable_qos}
vlan_aware_vms: ${_param:neutron_enable_vlan_aware_vms}
+ bgp_vpn:
+ enabled: ${_param:neutron_enable_bgp_vpn}
+ driver: ${_param:neutron_bgp_vpn_driver}
backend:
engine: ml2
tenant_network_types: "${_param:neutron_tenant_network_types}"
@@ -32,6 +38,7 @@
host: ${_param:openstack_database_address}
identity:
region: ${_param:openstack_region}
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
members:
- host: ${_param:openstack_message_queue_node01_address}
diff --git a/neutron/control/openvswitch/single.yml b/neutron/control/openvswitch/single.yml
index 009c116..baa710e 100644
--- a/neutron/control/openvswitch/single.yml
+++ b/neutron/control/openvswitch/single.yml
@@ -10,6 +10,9 @@
neutron_tenant_network_types: "flat,vxlan"
neutron_enable_qos: False
neutron_enable_vlan_aware_vms: False
+ neutron_enable_bgp_vpn: False
+ neutron_bgp_vpn_driver: bagpipe
+ internal_protocol: 'http'
neutron:
server:
global_physnet_mtu: ${_param:neutron_global_physnet_mtu}
@@ -17,6 +20,9 @@
dvr: ${_param:neutron_control_dvr}
qos: ${_param:neutron_enable_qos}
vlan_aware_vms: ${_param:neutron_enable_vlan_aware_vms}
+ bgp_vpn:
+ enabled: ${_param:neutron_enable_bgp_vpn}
+ driver: ${_param:neutron_bgp_vpn_driver}
backend:
engine: ml2
tenant_network_types: "${_param:neutron_tenant_network_types}"
@@ -30,6 +36,7 @@
host: ${_param:openstack_database_address}
identity:
region: ${_param:openstack_region}
+ protocol: ${_param:internal_protocol}
message_queue:
members:
- host: ${_param:openstack_message_queue_node01_address}
diff --git a/neutron/control/single.yml b/neutron/control/single.yml
index 7f02325..067b4df 100644
--- a/neutron/control/single.yml
+++ b/neutron/control/single.yml
@@ -2,6 +2,8 @@
- service.neutron.control.single
- system.galera.server.database.neutron
parameters:
+ _param:
+ internal_protocol: 'http'
linux:
system:
package:
@@ -12,3 +14,5 @@
server:
database:
host: ${_param:single_address}
+ identity:
+ protocol: ${_param:internal_protocol}
diff --git a/nginx/server/proxy/openstack/aodh.yml b/nginx/server/proxy/openstack/aodh.yml
index bfdb4d6..d15bca5 100644
--- a/nginx/server/proxy/openstack/aodh.yml
+++ b/nginx/server/proxy/openstack/aodh.yml
@@ -1,6 +1,9 @@
parameters:
_param:
nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_aodh_host: ${_param:aodh_service_host}
+ nginx_proxy_openstack_aodh_protocol: 'http'
nginx:
server:
enabled: true
@@ -11,10 +14,11 @@
name: openstack_api_aodh
check: false
proxy:
- host: ${_param:aodh_service_host}
+ host: ${_param:nginx_proxy_openstack_aodh_host}
port: 8042
- protocol: http
+ protocol: ${_param:nginx_proxy_openstack_aodh_protocol}
host:
name: ${_param:nginx_proxy_openstack_api_host}
port: 8042
+ address: ${_param:nginx_proxy_openstack_api_address}
ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/barbican.yml b/nginx/server/proxy/openstack/barbican.yml
index 89e5a9c..6ac6a14 100644
--- a/nginx/server/proxy/openstack/barbican.yml
+++ b/nginx/server/proxy/openstack/barbican.yml
@@ -3,6 +3,7 @@
nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
nginx_proxy_openstack_api_address: 0.0.0.0
nginx_proxy_openstack_barbican_host: ${_param:barbican_service_host}
+ nginx_proxy_openstack_barbican_protocol: 'http'
nginx:
server:
enabled: true
@@ -15,7 +16,7 @@
proxy:
host: ${_param:nginx_proxy_openstack_barbican_host}
port: 9311
- protocol: http
+ protocol: ${_param:nginx_proxy_openstack_barbican_protocol}
host:
name: ${_param:nginx_proxy_openstack_api_host}
port: 9311
diff --git a/nginx/server/proxy/openstack/ceilometer.yml b/nginx/server/proxy/openstack/ceilometer.yml
index 57315fe..78b1f00 100644
--- a/nginx/server/proxy/openstack/ceilometer.yml
+++ b/nginx/server/proxy/openstack/ceilometer.yml
@@ -1,6 +1,9 @@
parameters:
_param:
nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_ceilometer_host: ${_param:ceilometer_service_host}
+ nginx_proxy_openstack_ceilometer_protocol: 'http'
nginx:
server:
enabled: true
@@ -11,10 +14,11 @@
name: openstack_api_ceilometer
check: false
proxy:
- host: ${_param:ceilometer_service_host}
+ host: ${_param:nginx_proxy_openstack_ceilometer_host}
port: 8777
- protocol: http
+ protocol: ${_param:nginx_proxy_openstack_ceilometer_protocol}
host:
name: ${_param:nginx_proxy_openstack_api_host}
port: 8777
+ address: ${_param:nginx_proxy_openstack_api_address}
ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/cinder.yml b/nginx/server/proxy/openstack/cinder.yml
new file mode 100644
index 0000000..c89fa11
--- /dev/null
+++ b/nginx/server/proxy/openstack/cinder.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_cinder_host: ${_param:cinder_service_host}
+ nginx_proxy_openstack_cinder_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_cinder:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_cinder
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_cinder_host}
+ port: 8776
+ protocol: ${_param:nginx_proxy_openstack_cinder_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8776
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/designate.yml b/nginx/server/proxy/openstack/designate.yml
index c238775..ce92ff6 100644
--- a/nginx/server/proxy/openstack/designate.yml
+++ b/nginx/server/proxy/openstack/designate.yml
@@ -3,6 +3,7 @@
nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
nginx_proxy_openstack_api_address: 0.0.0.0
nginx_proxy_openstack_designate_host: ${_param:designate_service_host}
+ nginx_proxy_openstack_designate_protocol: 'http'
nginx:
server:
enabled: true
@@ -14,7 +15,7 @@
proxy:
host: ${_param:nginx_proxy_openstack_designate_host}
port: 9001
- protocol: http
+ protocol: ${_param:nginx_proxy_openstack_designate_protocol}
host:
name: ${_param:nginx_proxy_openstack_api_host}
port: 9001
diff --git a/nginx/server/proxy/openstack/glance.yml b/nginx/server/proxy/openstack/glance.yml
new file mode 100644
index 0000000..3479296
--- /dev/null
+++ b/nginx/server/proxy/openstack/glance.yml
@@ -0,0 +1,26 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_glance_protocol: 'http'
+ nginx_proxy_openstack_glance_host: ${_param:glance_service_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_glance:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_glance
+ check: false
+ underscores_in_headers: true
+ proxy:
+ host: ${_param:nginx_proxy_openstack_glance_host}
+ port: 9292
+ protocol: ${_param:nginx_proxy_openstack_glance_protocol}
+ size: 30000m
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 9292
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/gnocchi.yml b/nginx/server/proxy/openstack/gnocchi.yml
new file mode 100644
index 0000000..6169648
--- /dev/null
+++ b/nginx/server/proxy/openstack/gnocchi.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_gnocchi_host: ${_param:gnocchi_service_host}
+ nginx_proxy_openstack_gnocchi_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_gnocchi:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_gnocchi
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_gnocchi_host}
+ port: 8041
+ protocol: ${_param:nginx_proxy_openstack_gnocchi_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8041
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/heat.yml b/nginx/server/proxy/openstack/heat.yml
new file mode 100644
index 0000000..bfb7745
--- /dev/null
+++ b/nginx/server/proxy/openstack/heat.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_heat_host: ${_param:heat_service_host}
+ nginx_proxy_openstack_heat_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_heat:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_heat
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_heat_host}
+ port: 8004
+ protocol: ${_param:nginx_proxy_openstack_heat_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8004
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/heat_cfn.yml b/nginx/server/proxy/openstack/heat_cfn.yml
new file mode 100644
index 0000000..99bb2d3
--- /dev/null
+++ b/nginx/server/proxy/openstack/heat_cfn.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_heat_host: ${_param:heat_service_host}
+ nginx_proxy_openstack_heat_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_heat_cfn:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_heat_cfn
+ proxy:
+ host: ${_param:nginx_proxy_openstack_heat_host}
+ port: 8000
+ protocol: ${_param:nginx_proxy_openstack_heat_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8000
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/heat_cloudwatch.yml b/nginx/server/proxy/openstack/heat_cloudwatch.yml
new file mode 100644
index 0000000..2c6a30a
--- /dev/null
+++ b/nginx/server/proxy/openstack/heat_cloudwatch.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_heat_host: ${_param:heat_service_host}
+ nginx_proxy_openstack_heat_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_heat_cloudwatch:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_heat_cloudwatch
+ proxy:
+ host: ${_param:nginx_proxy_openstack_heat_host}
+ port: 8003
+ protocol: ${_param:nginx_proxy_openstack_heat_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8003
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/ironic.yml b/nginx/server/proxy/openstack/ironic.yml
new file mode 100644
index 0000000..6ccedb3
--- /dev/null
+++ b/nginx/server/proxy/openstack/ironic.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_ironic_host: ${_param:ironic_service_host}
+ nginx_proxy_openstack_ironic_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_ironic:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_ironic
+ proxy:
+ host: ${_param:nginx_proxy_openstack_ironic_host}
+ port: 6385
+ protocol: ${_param:nginx_proxy_openstack_ironic_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 6385
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/keystone.yml b/nginx/server/proxy/openstack/keystone.yml
new file mode 100644
index 0000000..bf6646a
--- /dev/null
+++ b/nginx/server/proxy/openstack/keystone.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_keystone_host: ${_param:keystone_service_host}
+ nginx_proxy_openstack_keystone_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_keystone:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_keystone
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_keystone_host}
+ port: 5000
+ protocol: ${_param:nginx_proxy_openstack_keystone_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 5000
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/keystone_private.yml b/nginx/server/proxy/openstack/keystone_private.yml
new file mode 100644
index 0000000..bffae74
--- /dev/null
+++ b/nginx/server/proxy/openstack/keystone_private.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_keystone_host: ${_param:keystone_service_host}
+ nginx_proxy_openstack_keystone_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_keystone_private:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_keystone_private
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_keystone_host}
+ port: 35357
+ protocol: ${_param:nginx_proxy_openstack_keystone_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 35357
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/manila.yml b/nginx/server/proxy/openstack/manila.yml
new file mode 100644
index 0000000..8157dd8
--- /dev/null
+++ b/nginx/server/proxy/openstack/manila.yml
@@ -0,0 +1,23 @@
+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_proxy_openstack_manila_protocol: 'http'
+ 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: ${_param:nginx_proxy_openstack_manila_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8786
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/neutron.yml b/nginx/server/proxy/openstack/neutron.yml
new file mode 100644
index 0000000..9ee5796
--- /dev/null
+++ b/nginx/server/proxy/openstack/neutron.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_neutron_host: ${_param:neutron_service_host}
+ nginx_proxy_openstack_neutron_protocol: 'http'
+ nginx:
+ server:
+ site:
+ nginx_proxy_openstack_api_neutron:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_neutron
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_neutron_host}
+ port: 9696
+ protocol: ${_param:nginx_proxy_openstack_neutron_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 9696
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/nova.yml b/nginx/server/proxy/openstack/nova.yml
new file mode 100644
index 0000000..456e056
--- /dev/null
+++ b/nginx/server/proxy/openstack/nova.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_nova_host: ${_param:nova_service_host}
+ nginx_proxy_openstack_nova_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_nova:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_nova
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_nova_host}
+ port: 8774
+ protocol: ${_param:nginx_proxy_openstack_nova_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8774
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/nova_ec2.yml b/nginx/server/proxy/openstack/nova_ec2.yml
new file mode 100644
index 0000000..27b3f91
--- /dev/null
+++ b/nginx/server/proxy/openstack/nova_ec2.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_nova_host: ${_param:nova_service_host}
+ nginx_proxy_openstack_nova_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_nova_ec2:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_nova_ec2
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_nova_host}
+ port: 8773
+ protocol: ${_param:nginx_proxy_openstack_nova_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8773
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/panko.yml b/nginx/server/proxy/openstack/panko.yml
new file mode 100644
index 0000000..45d389b
--- /dev/null
+++ b/nginx/server/proxy/openstack/panko.yml
@@ -0,0 +1,24 @@
+parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx_proxy_openstack_api_address: 0.0.0.0
+ nginx_proxy_openstack_panko_host: ${_param:panko_service_host}
+ nginx_proxy_openstack_panko_protocol: 'http'
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_panko:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_panko
+ check: false
+ proxy:
+ host: ${_param:nginx_proxy_openstack_panko_host}
+ port: 8977
+ protocol: ${_param:nginx_proxy_openstack_panko_protocol}
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8977
+ address: ${_param:nginx_proxy_openstack_api_address}
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/placement.yml b/nginx/server/proxy/openstack/placement.yml
index eda272c..9e8b08c 100644
--- a/nginx/server/proxy/openstack/placement.yml
+++ b/nginx/server/proxy/openstack/placement.yml
@@ -3,6 +3,7 @@
nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
nginx_proxy_openstack_api_address: 0.0.0.0
nginx_proxy_openstack_placement_host: ${_param:placement_service_host}
+ nginx_proxy_openstack_placement_protocol: 'http'
nginx:
server:
enabled: true
@@ -14,7 +15,7 @@
proxy:
host: ${_param:nginx_proxy_openstack_placement_host}
port: 8778
- protocol: http
+ protocol: ${_param:nginx_proxy_openstack_placement_protocol}
host:
name: ${_param:nginx_proxy_openstack_api_host}
port: 8778
diff --git a/nginx/server/proxy/openstack_api.yml b/nginx/server/proxy/openstack_api.yml
index 4f6073d..f9f363d 100644
--- a/nginx/server/proxy/openstack_api.yml
+++ b/nginx/server/proxy/openstack_api.yml
@@ -1,154 +1,11 @@
-parameters:
- _param:
- nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
- nginx_proxy_openstack_api_address: 0.0.0.0
- nginx_proxy_openstack_keystone_host: ${_param:keystone_service_host}
- nginx_proxy_openstack_nova_host: ${_param:nova_service_host}
- nginx_proxy_openstack_cinder_host: ${_param:cinder_service_host}
- nginx_proxy_openstack_glance_host: ${_param:glance_service_host}
- nginx_proxy_openstack_neutron_host: ${_param:neutron_service_host}
- nginx_proxy_openstack_heat_host: ${_param:heat_service_host}
- nginx:
- server:
- enabled: true
- site:
- nginx_proxy_openstack_api_keystone:
- enabled: true
- type: nginx_proxy
- name: openstack_api_keystone
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_keystone_host}
- port: 5000
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 5000
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_keystone_private:
- enabled: true
- type: nginx_proxy
- name: openstack_api_keystone_private
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_keystone_host}
- port: 35357
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 35357
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_nova:
- enabled: true
- type: nginx_proxy
- name: openstack_api_nova
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_nova_host}
- port: 8774
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 8774
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_cinder:
- enabled: true
- type: nginx_proxy
- name: openstack_api_cinder
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_cinder_host}
- port: 8776
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 8776
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_glance:
- enabled: true
- type: nginx_proxy
- name: openstack_api_glance
- check: false
- underscores_in_headers: true
- proxy:
- host: ${_param:nginx_proxy_openstack_glance_host}
- port: 9292
- protocol: http
- size: 30000m
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 9292
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_neutron:
- enabled: true
- type: nginx_proxy
- name: openstack_api_neutron
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_neutron_host}
- port: 9696
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 9696
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_heat_cloudwatch:
- enabled: true
- type: nginx_proxy
- name: openstack_api_heat_cloudwatch
- proxy:
- host: ${_param:nginx_proxy_openstack_heat_host}
- port: 8003
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 8003
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_heat_cfn:
- enabled: true
- type: nginx_proxy
- name: openstack_api_heat_cfn
- proxy:
- host: ${_param:nginx_proxy_openstack_heat_host}
- port: 8000
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 8000
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_heat:
- enabled: true
- type: nginx_proxy
- name: openstack_api_heat
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_heat_host}
- port: 8004
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 8004
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
- nginx_proxy_openstack_api_nova_ec2:
- enabled: true
- type: nginx_proxy
- name: openstack_api_nova_ec2
- check: false
- proxy:
- host: ${_param:nginx_proxy_openstack_nova_host}
- port: 8773
- protocol: http
- host:
- name: ${_param:nginx_proxy_openstack_api_host}
- port: 8773
- address: ${_param:nginx_proxy_openstack_api_address}
- ssl: ${_param:nginx_proxy_ssl}
+classes:
+- system.nginx.server.proxy.openstack.cinder
+- system.nginx.server.proxy.openstack.glance
+- system.nginx.server.proxy.openstack.heat
+- system.nginx.server.proxy.openstack.heat_cfn
+- system.nginx.server.proxy.openstack.heat_cloudwatch
+- system.nginx.server.proxy.openstack.keystone
+- system.nginx.server.proxy.openstack.keystone_private
+- system.nginx.server.proxy.openstack.neutron
+- system.nginx.server.proxy.openstack.nova
+- system.nginx.server.proxy.openstack.nova_ec2
diff --git a/nova/compute/cluster.yml b/nova/compute/cluster.yml
index 5d0e6a1..f32fffd 100644
--- a/nova/compute/cluster.yml
+++ b/nova/compute/cluster.yml
@@ -35,6 +35,7 @@
7xDyBz85icFU0rceYQetwFH2p5tRL0GcUQhJmJFgIL0OXdCQvRNJrT3iS00N1aUo
SG9MrLHCd5l60aCUQg0UA5ed7Hd6SA314k+HwxJno9/wJ+voBeacMg==
-----END RSA PRIVATE KEY-----
+ cluster_internal_protocol: 'http'
openssh:
client:
enabled: True
@@ -68,6 +69,7 @@
user: nova
password: ${_param:keystone_nova_password}
tenant: service
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
port: 5672
@@ -82,6 +84,7 @@
engine: glance
host: ${_param:cluster_vip_address}
port: 9292
+ protocol: ${_param:cluster_internal_protocol}
network:
engine: neutron
region: ${_param:openstack_region}
@@ -90,6 +93,7 @@
user: neutron
tenant: service
password: ${_param:keystone_neutron_password}
+ protocol: ${_param:cluster_internal_protocol}
user:
public_key: ${_param:nova_compute_ssh_public}
private_key: ${_param:nova_compute_ssh_private}
diff --git a/nova/compute/single.yml b/nova/compute/single.yml
index b915145..483a1d3 100644
--- a/nova/compute/single.yml
+++ b/nova/compute/single.yml
@@ -35,6 +35,7 @@
7xDyBz85icFU0rceYQetwFH2p5tRL0GcUQhJmJFgIL0OXdCQvRNJrT3iS00N1aUo
SG9MrLHCd5l60aCUQg0UA5ed7Hd6SA314k+HwxJno9/wJ+voBeacMg==
-----END RSA PRIVATE KEY-----
+ cluster_internal_protocol: 'http'
openssh:
client:
enabled: True
@@ -66,6 +67,7 @@
user: nova
password: ${_param:keystone_nova_password}
tenant: service
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
host: ${_param:control_address}
@@ -77,10 +79,12 @@
engine: glance
host: ${_param:control_address}
port: 9292
+ protocol: ${_param:cluster_internal_protocol}
network:
engine: neutron
host: ${_param:control_address}
port: 9696
+ protocol: ${_param:cluster_internal_protocol}
cache:
engine: memcached
members:
diff --git a/nova/compute_ironic/cluster.yml b/nova/compute_ironic/cluster.yml
index 2526373..885a869 100644
--- a/nova/compute_ironic/cluster.yml
+++ b/nova/compute_ironic/cluster.yml
@@ -1,6 +1,8 @@
classes:
- service.nova.compute.ironic
parameters:
+ _param:
+ cluster_internal_protocol: 'http'
nova:
compute:
version: ${_param:nova_version}
@@ -23,6 +25,7 @@
user: nova
password: ${_param:keystone_nova_password}
tenant: service
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
port: 5672
@@ -41,6 +44,9 @@
user: neutron
tenant: service
password: ${_param:keystone_neutron_password}
+ protocol: ${_param:cluster_internal_protocol}
+ glance:
+ protocol: ${_param:cluster_internal_protocol}
ironic:
region: ${_param:openstack_region}
host: ${_param:ironic_service_host}
@@ -51,3 +57,4 @@
auth_type: password
project_domain_name: Default
user_domain_name: Default
+ protocol: ${_param:cluster_internal_protocol}
diff --git a/nova/compute_ironic/single.yml b/nova/compute_ironic/single.yml
index 5c19023..69025d3 100644
--- a/nova/compute_ironic/single.yml
+++ b/nova/compute_ironic/single.yml
@@ -1,6 +1,8 @@
classes:
- service.nova.compute.ironic
parameters:
+ _param:
+ cluster_internal_protocol: 'http'
nova:
compute:
version: ${_param:nova_version}
@@ -23,6 +25,7 @@
user: nova
password: ${_param:keystone_nova_password}
tenant: service
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
port: 5672
@@ -38,6 +41,9 @@
user: neutron
tenant: service
password: ${_param:keystone_neutron_password}
+ protocol: ${_param:cluster_internal_protocol}
+ glance:
+ protocol: ${_param:cluster_internal_protocol}
ironic:
region: ${_param:openstack_region}
host: ${_param:control_address}
@@ -45,3 +51,4 @@
user: ironic
tenant: service
password: ${_param:keystone_ironic_password}
+ protocol: ${_param:cluster_internal_protocol}
diff --git a/nova/control/cluster.yml b/nova/control/cluster.yml
index f583156..be5f775 100644
--- a/nova/control/cluster.yml
+++ b/nova/control/cluster.yml
@@ -11,6 +11,7 @@
nova_ram_allocation_ratio: 1.5
nova_disk_allocation_ratio: 1.0
metadata_password: metadataPass
+ cluster_internal_protocol: 'http'
linux:
system:
package:
@@ -50,6 +51,7 @@
user: nova
password: ${_param:keystone_nova_password}
tenant: service
+ protocol: ${_param:cluster_internal_protocol}
message_queue:
engine: rabbitmq
port: 5672
@@ -63,6 +65,7 @@
glance:
host: ${_param:cluster_vip_address}
port: 9292
+ protocol: ${_param:cluster_internal_protocol}
network:
engine: neutron
region: ${_param:openstack_region}
@@ -72,5 +75,6 @@
port: 9696
mtu: 1500
tenant: service
+ protocol: ${_param:cluster_internal_protocol}
metadata:
password: ${_param:metadata_password}
diff --git a/nova/control/single.yml b/nova/control/single.yml
index c2aef10..ca21d05 100644
--- a/nova/control/single.yml
+++ b/nova/control/single.yml
@@ -1,6 +1,8 @@
classes:
- service.nova.control.single
parameters:
+ _param:
+ cluster_internal_protocol: 'http'
linux:
system:
package:
@@ -11,3 +13,9 @@
controller:
database:
host: ${_param:single_address}
+ identity:
+ protocol: ${_param:cluster_internal_protocol}
+ network:
+ protocol: ${_param:cluster_internal_protocol}
+ glance:
+ protocol: ${_param:cluster_internal_protocol}
diff --git a/openssh/server/team/members/iudovichenko.yml b/openssh/server/team/members/iudovichenko.yml
new file mode 100644
index 0000000..d7e611d
--- /dev/null
+++ b/openssh/server/team/members/iudovichenko.yml
@@ -0,0 +1,20 @@
+parameters:
+ linux:
+ system:
+ user:
+ iudovichenko:
+ enabled: true
+ name: iudovichenko
+ sudo: ${_param:linux_system_user_sudo}
+ full_name: Ivan Udovichenko
+ home: /home/iudovichenko
+ email: iudovichenko@mirantis.com
+ openssh:
+ server:
+ enabled: true
+ user:
+ iudovichenko:
+ enabled: true
+ public_keys:
+ - key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1Dxt3m6w1jZjDxLJEWi2X5uXYZwpJVmfcOoXayofmxvdRyXe5OAEFZpdiPeCgwwcKZGvLjJ0/KXsoBuQw++XhdzZnE1+zaAjpB7fzkTQq4QRvEOMr3z16/AdJdYlqcZH4n3USUhahGdfhpCVDAo1YyYGDTzUH3r1DtYPAGbNiNgb7xu8H3iwp9UiI2t6kH3tx7db2wbVJ6HpnIlA1/Yj4W5j4Cz8f8MnG5oTnmZwT0hXwX/TCPyW56bHOGCAVpHINM+ZU4jUoHMUxjwd4mjMw4TIjID5b+ks91MdBhe/9IDRDrIUK2sK4h+S4ciuD6IAT637DD8/n8P6Vj8qDR0rP
+ user: ${linux:system:user:iudovichenko}
diff --git a/openssh/server/team/members/lmercl.yml b/openssh/server/team/members/lmercl.yml
index c735ed5..04be2f5 100644
--- a/openssh/server/team/members/lmercl.yml
+++ b/openssh/server/team/members/lmercl.yml
@@ -17,4 +17,5 @@
enabled: true
public_keys:
- key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCy6mFrr4oNdLjT5wBZj1+KXNpdawnGGWEevDBQ2SWFjxBFujkWVLiW1kxLTpLVSnuoE5FB7doRIsT/CDe9IU5OhsJ+z6TT56R/pfVKrVnSB1rgrwqdezjgmYEM6kTWiH2GKJE0yiQEPgagK8Rz5Zl420JkhbFWnL7EGPhxNtmYMGDTZwUTzP0KYmytyeH15OqNIiBGTrp1t2bTrVB8HRnUp0uDpfoWAUnsijVGNe1j1bNKtDO0Z9LAWx3eUyxIk4cdpX/EeWJg8jNrSMxtAZZ7Hhm/WInNSNqcHcZ1rEYCAjENxo1WVOuA/aqUqc5xaAipWNon4Rk0e0IUAaFOfLvN2lIuilUZ5XKHDe7a2crkGPnotheT9FgaEHOeFtpuhSaygeZHTMR197jeocgjWIkPqHjVAGSQqQf0TAdNuN73QPTigbbfHWWc1d8KlCM5BqJUXMHPG6BasE1sI/4ykYbxN/DAEvVJ4+rdIlqSdedd73ZAseVQjDtpzD8diScGrpdOhZnTm43q89F8dIFv7tt1TjIwvfcDQNSBjyyKcYpj+NTyW2Zk7qWDVz+lzH0ToYk/rOKkGlrsRy7OwOnmyKR8IcIOL7Bowj895ThCX8tBrdLu/m55ojBOcZiCpawCm7K55ri1Ar6i8cO+bHDh11kKRa/utRRSQTpsW0sbCsamzQ== lubos@lubos-ThinkPad-X1
- user: ${linux:system:user:lmercl}
\ No newline at end of file
+ - key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZFmRirw1DHtY8VQDfnZDEi1tWhW4lHWaCq3T14K2HtU17ulJB4KbonMWZLiqFsX44okKM7FOiR9L5ij417CRytlzuHSJebnDj6kppE+lslvfd8TdTTVmvQ7rLj+mdvsRmNVRnou1JPlhryJFshZSsfonn6s6AlAWW4RHx9a8kWuYplObGdUQN9pXReDso9UjeOOuPVmtpfvBXgljHEa/IyAAk47CTe7vVTggauWTVIB+F3zmL2KPFEKGBvd6Ac/wOdirHgV5YgR9LT81hZ9p6TZXkfbIGOl+K6dOIgGqGykn77qloTnKUTSPMWJz11xgwE3sv314ZZ6oZvhCVCcLX lmercl@Luboss-MacBook-Pro.local
+ user: ${linux:system:user:lmercl}
diff --git a/openssh/server/team/oscore_devops.yml b/openssh/server/team/oscore_devops.yml
index b5505a8..49207eb 100644
--- a/openssh/server/team/oscore_devops.yml
+++ b/openssh/server/team/oscore_devops.yml
@@ -3,6 +3,7 @@
- system.openssh.server.team.members.vsaienko
- system.openssh.server.team.members.vnogin
- system.openssh.server.team.members.mkarpin
+- system.openssh.server.team.members.iudovichenko
parameters:
_param:
linux_system_user_sudo: true
diff --git a/openssh/server/team/qa_scale.yml b/openssh/server/team/qa_scale.yml
index 98c5540..0414e35 100644
--- a/openssh/server/team/qa_scale.yml
+++ b/openssh/server/team/qa_scale.yml
@@ -2,6 +2,7 @@
- system.openssh.server.team.members.listomin
- system.openssh.server.team.members.sgalkin
- system.openssh.server.team.members.obasov
+- system.openssh.server.team.members.mikhailkraynov
parameters:
_param:
diff --git a/openssh/server/team/stacklight.yml b/openssh/server/team/stacklight.yml
index b46ac24..032466b 100644
--- a/openssh/server/team/stacklight.yml
+++ b/openssh/server/team/stacklight.yml
@@ -109,6 +109,20 @@
full_name: Christian Huebner
home: /home/crh
email: chuebner@mirantis.com
+ mmatuszkowiak:
+ enabled: true
+ name: mmatuszkowiak
+ sudo: true
+ full_name: Mateusz Matuszkowiak
+ home: /home/mmatuszkowiak
+ email: mmatuszkowiak@mirantis.com
+ mkobus:
+ enabled: true
+ name: mkobus
+ sudo: true
+ full_name: Michal Kobus
+ home: /home/mkobus
+ email: mkobus@mirantis.com
openssh:
client:
enabled: true
@@ -190,6 +204,16 @@
public_keys:
- ${public_keys:crh}
user: ${linux:system:user:crh}
+ mmatuszkowiak:
+ enabled: true
+ public_keys:
+ - ${public_keys:mmatuszkowiak}
+ user: ${linux:system:user:mmatuszkowiak}
+ mkobus:
+ enabled: true
+ public_keys:
+ - ${public_keys:mkobus}
+ user: ${linux:system:user:mkobus}
public_keys:
newt:
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3odU+3V2uDA2ptAFL9hrJRPNEEdAyztWOZFQ5Oyd9oerTGOU3p4xmrgWWjfKFKbYGhiiIUcYAol5PkTfKukGEkkjCHYA1t023soCaaAj85wCZCnw2zQNAziwxTYmAzTqgxiSvtZNMMrtJvFHRIRDzJ3M1lV0prWNWkMM1/3FAd4W49y6VT3fkMCo8uqG7CfGdgR2DgBCxf9KaNPfW5eDEPOgmE5lK8tVSEI6T+Cg7hbcTf4lFYnlFBnlQgp/0JstsM4Vbwb4B34LOpOsf2S8rrWk2xQMjwaMHXkc2s/E8iW3F5nVFuyEXYISFQIiAHw8dzC6CHgLcyHUVWwznKawZ newt@newt-dev1
@@ -221,3 +245,7 @@
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMdgjQ/jeWwQTaPyy7G5JJAkM+QPNPFkzMldPHJzOxEBzt/M5zAooj0XgbRIDIztolhXhmj8N5QSG5n3Wn9T9e2KpoxrLaVhMV5WGTgMrXMmyT8oXLV3gLxGNHMWFvplSbHLK78EsZQQ1/kBQMyPXB1+FpIuSHVOxaospOQObJ08lvQfvlO7AUUV4ecpFj3PpV5vkKPRS+KfiRm84BeGIu51BL1BClZcOyHZPBQT+DUBjm8y4Nd7pVZRjsiBzZBvUotCbn5+RqWJnu4kyoGoRNmk8pvCx7jGL1G9rE8NNsKlCUWedvyNkDeoWKvleJuzkj3ggfuCj/iTtDoXFR95e3
crh:
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDjW4PSMoILjoZWDM8RnbiW6HXHBFntnDd6jgAlokJhTpYIjzUHpoh/OqphraKbNFnPbzL2nkIbaKZqKj+uuvbsitHnApmdFgSpOmBRGeaSExA30GqweYrIMKN5JAQTbONZWLSm+LD689CXRv2s6Th/YMELYfoi2W0pkvwiBdr+/0NxpdRvJydCn36SE6wOigu4uJXIXeNqIjTD+x4sW6GB54Ugbg+SMmI9D5ONlmfEj8K/ZmG1THdPGOLlquy/VLiuOBuwNoJCBV9shsGEmdg8NiOu8NPupQlsbmClZDbBAklJ0AF6ElAwKSiqCOhbaa7hu4qJFrCKC+XAgYxS9t7r
+ mmatuszkowiak:
+ key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDC6TGCQAH3FGNSOhSbovhwODabOAsgVqG71rEDdXvDSShwyNB3RIICefas3mdSLsG7+1K9mZ1jicWzNbotvePwzrM/MESzntzp4QZ5J/9L3BMiqWWKL2u6BQ65LGe0YMzMmdSkqMAj0uxt3+OiFDPDrwqH6qN0hwxAJM+byeUlQW8uWQYm/pmWMD60GUrnjYUfKfEa/S3symaZBHQvjtp26De8D6u/jr4TWi5VJpKqVREqU7Z4IKwn8JvHMmUbRO4endW3cRiv35Qb7s66rO6TD0KlDFnnTxOtFvLhL51j58X4MrV9FHUI6czoqjAgEDe9CW7DzZ1xMj03d6IAipgL
+ mkobus:
+ key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDCBqe3X+LrneiuieWGjlw5wRtgixBu2Q8LZjH6W+8nsOkB7iN6qRdKom3jac1Cdd5wSJ0NFAhDNcTLK4Etz/3YACglsTxk09TzXlqs1V0Y7U5a2eqn3KTOgMNsJ1aOhFq/LnmUwTdN8NXac6TIkwZZBj5KhHSvIoO+mfsascct5FIVU/+p32d3o/4NqMDDdTg/qxIMKQsh5sw5Y9Tz9h28LGbDh+QF2lW+b5YJhnCG21Uw17xcyxf3/53EpJwTXfElonSR7HMVLxrq7oDzmqKFZ2z8i9do6EgODKlZpSkxiAFOBw5oA2hPtEeqtXqvddu2FcNGuSNhx/6O8ZHIKq3Xh/tTOYnoc+qYDMRCzDwzeyivfr5Ci3n64giUaZl+KUr6D1CKeL2s8j9+kod/1JJDEeoYR+V93MTiTD/39N8eQAGv+6r9HBapXIkvr3iNuTH1+5eN36Vc90jXXRmGMZkF5P9ivNGDZGcy2pBwwPg/bRn2xb0zx1fsxd4qOi+Cd7mBCF4+SfnVCqUd2H9R0O3S7WgfLr+wOXpFq6/WwgjzI9RVhLJ5cZmePJKvYZYYhkAxsVwWSE639zFFuU1zhFXr49wa0njK9DdYWiQEhOki0ki3huABmVbWKg/zP1Rlllmtk0S4mwggJ57JYbuhEV3a1x1KOtWMzODW5cb3HlPTQw==
diff --git a/panko/server/cluster.yml b/panko/server/cluster.yml
new file mode 100644
index 0000000..c258c9a
--- /dev/null
+++ b/panko/server/cluster.yml
@@ -0,0 +1,26 @@
+classes:
+- service.panko.server.cluster
+- service.haproxy.proxy.single
+- system.apache.server.site.panko
+- system.haproxy.proxy.listen.openstack.panko
+- system.keepalived.cluster.instance.openstack_telemetry_vip
+parameters:
+ _param:
+ panko_memcached_node01_address: ${_param:cluster_node01_address}
+ panko_memcached_node02_address: ${_param:cluster_node02_address}
+ panko_memcached_node03_address: ${_param:cluster_node03_address}
+ panko:
+ server:
+ identity:
+ host: ${_param:openstack_control_address}
+ database:
+ host: ${_param:openstack_database_address}
+ cache:
+ engine: memcached
+ members:
+ - host: ${_param:panko_memcached_node01_address}
+ port: 11211
+ - host: ${_param:panko_memcached_node02_address}
+ port: 11211
+ - host: ${_param:panko_memcached_node03_address}
+ port: 11211
\ No newline at end of file
diff --git a/prometheus/alertmanager/notification/pushkin.yml b/prometheus/alertmanager/notification/pushkin.yml
index dd4f760..a78b6fd 100644
--- a/prometheus/alertmanager/notification/pushkin.yml
+++ b/prometheus/alertmanager/notification/pushkin.yml
@@ -10,9 +10,7 @@
routes:
pushkin:
receiver: HTTP-pushkin
- match_re:
- - label: route
- value: .+?
+ continue: true
receiver:
HTTP-pushkin:
enabled: true
diff --git a/prometheus/alertmanager/notification/slack.yml b/prometheus/alertmanager/notification/slack.yml
index c33e013..2158adb 100644
--- a/prometheus/alertmanager/notification/slack.yml
+++ b/prometheus/alertmanager/notification/slack.yml
@@ -6,9 +6,6 @@
routes:
slack:
receiver: HTTP-slack
- match_re:
- - label: route
- value: slack
receiver:
HTTP-slack:
enabled: true
diff --git a/prometheus/relay/init.yml b/prometheus/relay/init.yml
new file mode 100644
index 0000000..a240458
--- /dev/null
+++ b/prometheus/relay/init.yml
@@ -0,0 +1,3 @@
+classes:
+ - service.prometheus.relay
+ - service.prometheus.relay.cluster
diff --git a/prometheus/server/alert/etcd.yml b/prometheus/server/alert/etcd.yml
new file mode 100644
index 0000000..9c456ab
--- /dev/null
+++ b/prometheus/server/alert/etcd.yml
@@ -0,0 +1,140 @@
+parameters:
+ prometheus:
+ server:
+ alert:
+ InsufficientMembers:
+ if: >-
+ count(up{job="etcd"} == 0) > (count(up{job="etcd"}) / 2 - 1)
+ for: 3m
+ labels:
+ severity: critical
+ annotations:
+ description: 'If one more etcd member goes down the cluster will be unavailable'
+ summary: 'etcd cluster insufficient members'
+ NoLeader:
+ if: >-
+ etcd_server_has_leader{job="etcd"} == 0
+ for: 1m
+ labels:
+ severity: critical
+ annotations:
+ description: 'etcd member {{ $labels.instance }} has no leader'
+ summary: 'etcd member has no leader'
+ HighNumberOfLeaderChanges:
+ if: >-
+ increase(etcd_server_leader_changes_seen_total{job="etcd"}[1h]) > 3
+ labels:
+ severity: warning
+ annotations:
+ description: 'etcd instance {{ $labels.instance }} has seen {{ $value }} leader changes within the last hour'
+ summary: 'a high number of leader changes within the etcd cluster are happening'
+ HighNumberOfFailedGRPCRequests:
+ if: >-
+ sum(rate(grpc_server_handled_total{grpc_code!="OK",job="etcd"}[5m])) BY (grpc_service, grpc_method) / sum(rate(grpc_server_handled_total{job="etcd"}[5m])) BY (grpc_service, grpc_method) > 0.01
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: '{{ $value }}% of requests for {{ $labels.grpc_method }} failed on etcd instance {{ $labels.instance }}'
+ summary: 'a high number of gRPC requests are failing'
+ HighNumberOfFailedGRPCRequests:
+ if: >-
+ sum(rate(grpc_server_handled_total{grpc_code!="OK",job="etcd"}[5m])) BY (grpc_service, grpc_method) / sum(rate(grpc_server_handled_total{job="etcd"}[5m])) BY (grpc_service, grpc_method) > 0.05
+ for: 5m
+ labels:
+ severity: critical
+ annotations:
+ description: '{{ $value }}% of requests for {{ $labels.grpc_method }} failed on etcd instance {{ $labels.instance }}'
+ summary: 'a high number of gRPC requests are failing'
+ GRPCRequestsSlow:
+ if: >-
+ histogram_quantile(0.99, sum(rate(grpc_server_handling_seconds_bucket{job="etcd",grpc_type="unary"}[5m])) by (grpc_service, grpc_method, le)) > 0.15
+ for: 10m
+ labels:
+ severity: critical
+ annotations:
+ description: 'on etcd instance {{ $labels.instance }} gRPC requests to {{ $labels.grpc_method }} are slow'
+ summary: 'slow gRPC requests'
+ HighNumberOfFailedHTTPRequests:
+ if: >-
+ sum(rate(etcd_http_failed_total{job="etcd"}[5m])) BY (method) / sum(rate(etcd_http_received_total{job="etcd"}[5m])) BY (method) > 0.01
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: '{{ $value }}% of requests for {{ $labels.method }} failed on etcd instance {{ $labels.instance }}'
+ summary: 'a high number of HTTP requests are failing'
+ HighNumberOfFailedHTTPRequests:
+ if: >-
+ sum(rate(etcd_http_failed_total{job="etcd"}[5m])) BY (method) / sum(rate(etcd_http_received_total{job="etcd"}[5m])) BY (method) > 0.05
+ for: 5m
+ labels:
+ severity: critical
+ annotations:
+ description: '{{ $value }}% of requests for {{ $labels.method }} failed on etcd instance {{ $labels.instance }}'
+ summary: 'a high number of HTTP requests are failing'
+ HTTPRequestsSlow:
+ if: >-
+ histogram_quantile(0.99, rate(etcd_http_successful_duration_seconds_bucket[5m])) > 0.15
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: 'on etcd instance {{ $labels.instance }} HTTP requests to {{ $labels.method }} are slow'
+ summary: 'slow HTTP requests'
+ record: instance:fd_utilization
+ if: >-
+ process_open_fds / process_max_fds
+ FdExhaustionClose:
+ if: >-
+ predict_linear(instance:fd_utilization[1h], 3600 * 4) > 1
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: '{{ $labels.job }} instance {{ $labels.instance }} will exhaust its file descriptors soon'
+ summary: 'file descriptors soon exhausted'
+ FdExhaustionClose:
+ if: >-
+ predict_linear(instance:fd_utilization[10m], 3600) > 1
+ for: 10m
+ labels:
+ severity: critical
+ annotations:
+ description: '{{ $labels.job }} instance {{ $labels.instance }} will exhaust its file descriptors soon'
+ summary: 'file descriptors soon exhausted'
+ EtcdMemberCommunicationSlow:
+ if: >-
+ histogram_quantile(0.99, rate(etcd_network_member_round_trip_time_seconds_bucket[5m])) > 0.15
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: 'etcd instance {{ $labels.instance }} member communication with {{ $labels.To }} is slow'
+ summary: 'etcd member communication is slow'
+ HighNumberOfFailedProposals:
+ if: >-
+ increase(etcd_server_proposals_failed_total{job="etcd"}[1h]) > 5
+ labels:
+ severity: warning
+ annotations:
+ description: 'etcd instance {{ $labels.instance }} has seen {{ $value }} proposal failures within the last hour'
+ summary: 'a high number of proposals within the etcd cluster are failing'
+ HighFsyncDurations:
+ if: >-
+ histogram_quantile(0.99, rate(etcd_disk_wal_fsync_duration_seconds_bucket[5m])) > 0.5
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: 'etcd instance {{ $labels.instance }} fync durations are high'
+ summary: 'high fsync durations'
+ HighCommitDurations:
+ if: >-
+ histogram_quantile(0.99, rate(etcd_disk_backend_commit_duration_seconds_bucket[5m])) > 0.25
+ for: 10m
+ labels:
+ severity: warning
+ annotations:
+ description: 'etcd instance {{ $labels.instance }} commit durations are high'
+ summary: 'high commit durations'
diff --git a/prometheus/server/standalone.yml b/prometheus/server/standalone.yml
new file mode 100644
index 0000000..cdddb9a
--- /dev/null
+++ b/prometheus/server/standalone.yml
@@ -0,0 +1,7 @@
+classes:
+- service.prometheus.server.standalone
+parameters:
+ prometheus:
+ server:
+ version: 2.0
+
diff --git a/prometheus/server/target/dns.yml b/prometheus/server/target/dns.yml
deleted file mode 100644
index e2745f1..0000000
--- a/prometheus/server/target/dns.yml
+++ /dev/null
@@ -1,32 +0,0 @@
-parameters:
- prometheus:
- server:
- target:
- dns:
- enabled: true
- endpoint:
- - name: 'pushgateway'
- domain:
- - 'tasks.monitoring_pushgateway'
- type: A
- port: ${prometheus:pushgateway:bind:port}
- - name: 'prometheus'
- domain:
- - 'tasks.monitoring_server'
- type: A
- port: ${prometheus:server:bind:port}
- - name: 'alertmanager'
- domain:
- - 'tasks.monitoring_alertmanager'
- type: A
- port: ${prometheus:alertmanager:bind:port}
- - name: 'remote_agent'
- domain:
- - 'tasks.monitoring_remote_agent'
- type: A
- port: ${telegraf:remote_agent:output:prometheus_client:bind:port}
- - name: 'remote_storage_adapter'
- domain:
- - 'tasks.monitoring_remote_storage_adapter'
- type: A
- port: ${prometheus:remote_storage_adapter:bind:port}
diff --git a/prometheus/server/target/dns/alertmanager.yml b/prometheus/server/target/dns/alertmanager.yml
new file mode 100644
index 0000000..78172d1
--- /dev/null
+++ b/prometheus/server/target/dns/alertmanager.yml
@@ -0,0 +1,12 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ dns:
+ enabled: true
+ endpoint:
+ - name: 'alertmanager'
+ domain:
+ - 'tasks.monitoring_alertmanager'
+ type: A
+ port: ${prometheus:alertmanager:bind:port}
diff --git a/prometheus/server/target/dns/init.yml b/prometheus/server/target/dns/init.yml
new file mode 100644
index 0000000..361d296
--- /dev/null
+++ b/prometheus/server/target/dns/init.yml
@@ -0,0 +1,6 @@
+classes:
+- system.prometheus.server.target.dns.alertmanager
+- system.prometheus.server.target.dns.prometheus
+- system.prometheus.server.target.dns.pushgateway
+- system.prometheus.server.target.dns.remote_agent
+- system.prometheus.server.target.dns.remote_storage_adapter
diff --git a/prometheus/server/target/dns/prometheus.yml b/prometheus/server/target/dns/prometheus.yml
new file mode 100644
index 0000000..abffe03
--- /dev/null
+++ b/prometheus/server/target/dns/prometheus.yml
@@ -0,0 +1,12 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ dns:
+ enabled: true
+ endpoint:
+ - name: 'prometheus'
+ domain:
+ - 'tasks.monitoring_server'
+ type: A
+ port: ${prometheus:server:bind:port}
diff --git a/prometheus/server/target/dns/pushgateway.yml b/prometheus/server/target/dns/pushgateway.yml
new file mode 100644
index 0000000..9022fa7
--- /dev/null
+++ b/prometheus/server/target/dns/pushgateway.yml
@@ -0,0 +1,12 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ dns:
+ enabled: true
+ endpoint:
+ - name: 'pushgateway'
+ domain:
+ - 'tasks.monitoring_pushgateway'
+ type: A
+ port: ${prometheus:pushgateway:bind:port}
\ No newline at end of file
diff --git a/prometheus/server/target/dns/remote_agent.yml b/prometheus/server/target/dns/remote_agent.yml
new file mode 100644
index 0000000..6801ffc
--- /dev/null
+++ b/prometheus/server/target/dns/remote_agent.yml
@@ -0,0 +1,12 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ dns:
+ enabled: true
+ endpoint:
+ - name: 'remote_agent'
+ domain:
+ - 'tasks.monitoring_remote_agent'
+ type: A
+ port: ${telegraf:remote_agent:output:prometheus_client:bind:port}
diff --git a/prometheus/server/target/dns/remote_storage_adapter.yml b/prometheus/server/target/dns/remote_storage_adapter.yml
new file mode 100644
index 0000000..618f438
--- /dev/null
+++ b/prometheus/server/target/dns/remote_storage_adapter.yml
@@ -0,0 +1,12 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ dns:
+ enabled: true
+ endpoint:
+ - name: 'remote_storage_adapter'
+ domain:
+ - 'tasks.monitoring_remote_storage_adapter'
+ type: A
+ port: ${prometheus:remote_storage_adapter:bind:port}
diff --git a/prometheus/server/target/federation/all_metrics.yml b/prometheus/server/target/federation/all_metrics.yml
new file mode 100644
index 0000000..f6a4ae3
--- /dev/null
+++ b/prometheus/server/target/federation/all_metrics.yml
@@ -0,0 +1,9 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ static:
+ prometheus_federation:
+ params:
+ match[]:
+ - '{__name__=~".+"}'
diff --git a/prometheus/server/target/federation/init.yml b/prometheus/server/target/federation/init.yml
new file mode 100644
index 0000000..564af82
--- /dev/null
+++ b/prometheus/server/target/federation/init.yml
@@ -0,0 +1,17 @@
+parameters:
+ prometheus:
+ server:
+ target:
+ static:
+ prometheus:
+ endpoint:
+ - address: 127.0.0.1
+ port: ${prometheus:server:bind:port}
+ prometheus_federation:
+ honor_labels: true
+ metrics_path: '/federate'
+ scrape_interval: 15s
+ scrape_timeout: 15s
+ endpoint:
+ - address: ${_param:stacklight_monitor_address}
+ port: 15010
diff --git a/prometheus/server/target/static/etcd.yml b/prometheus/server/target/static/etcd.yml
new file mode 100644
index 0000000..61488b5
--- /dev/null
+++ b/prometheus/server/target/static/etcd.yml
@@ -0,0 +1,13 @@
+parameters:
+ _param:
+ prometheus_etcd_host: ${_param:haproxy_bind_address}
+ prometheus_etcd_port: 4001
+ prometheus:
+ server:
+ target:
+ static:
+ etcd:
+ enabled: true
+ endpoint:
+ - address: ${_param:prometheus_etcd_host}
+ port: ${_param:prometheus_etcd_port}
diff --git a/prometheus/server/target/static/kqueen.yml b/prometheus/server/target/static/kqueen.yml
new file mode 100644
index 0000000..701f4cd
--- /dev/null
+++ b/prometheus/server/target/static/kqueen.yml
@@ -0,0 +1,13 @@
+parameters:
+ _param:
+ prometheus_kqueen_api_host: ${_param:haproxy_bind_address}
+ prometheus_kqueen_api_port: 5000
+ prometheus:
+ server:
+ target:
+ static:
+ kqueen:
+ enabled: true
+ endpoint:
+ - address: ${_param:prometheus_kqueen_api_host}
+ port: ${_param:prometheus_kqueen_api_port}
diff --git a/reclass/storage/system/opendaylight_control_single.yml b/reclass/storage/system/opendaylight_control_single.yml
new file mode 100644
index 0000000..ad809f5
--- /dev/null
+++ b/reclass/storage/system/opendaylight_control_single.yml
@@ -0,0 +1,13 @@
+parameters:
+ _param:
+ opendaylight_control_hostname: odl01
+ reclass:
+ storage:
+ node:
+ opendaylight_control_node01:
+ name: ${_param:opendaylight_control_hostname}
+ domain: ${_param:cluster_domain}
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:opendaylight_service_host}
diff --git a/reclass/storage/system/openstack_share_multi.yml b/reclass/storage/system/openstack_share_multi.yml
new file mode 100644
index 0000000..a70af28
--- /dev/null
+++ b/reclass/storage/system/openstack_share_multi.yml
@@ -0,0 +1,42 @@
+parameters:
+ _param:
+ openstack_share_node01_hostname: share01
+ openstack_share_node02_hostname: share02
+ openstack_share_node03_hostname: share03
+
+ openstack_share_node01_share_address: ${_param:single_address}
+ openstack_share_node02_share_address: ${_param:single_address}
+ openstack_share_node03_share_address: ${_param:single_address}
+ reclass:
+ storage:
+ node:
+ openstack_share_node01:
+ name: ${_param:openstack_share_node01_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.share
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_share_node01_address}
+ manila_share_address: ${_param:openstack_share_node01_share_address}
+ openstack_share_node02:
+ name: ${_param:openstack_share_node02_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.share
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_share_node02_address}
+ manila_share_address: ${_param:openstack_share_node02_share_address}
+ openstack_share_node03:
+ name: ${_param:openstack_share_node03_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.share
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_share_node03_address}
+ manila_share_address: ${_param:openstack_share_node03_share_address}
diff --git a/reclass/storage/system/openstack_share_single.yml b/reclass/storage/system/openstack_share_single.yml
new file mode 100644
index 0000000..fca56f2
--- /dev/null
+++ b/reclass/storage/system/openstack_share_single.yml
@@ -0,0 +1,16 @@
+parameters:
+ _param:
+ openstack_share_node01_hostname: share01
+ reclass:
+ storage:
+ node:
+ openstack_share_node01:
+ name: ${_param:openstack_share_node01_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.share
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_share_node01_address}
+ manila_share_address: ${_param:openstack_share_node01_share_address}
diff --git a/salt/control/sizes/ceph.yml b/salt/control/sizes/ceph.yml
new file mode 100644
index 0000000..a4be9c9
--- /dev/null
+++ b/salt/control/sizes/ceph.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ salt_control_size_cpu_ceph_mon: 8
+ salt_control_size_ram_ceph_mon: 16384
+ salt_control_size_disk_profile_ceph_mon: large
+ salt_control_size_net_profile_ceph_mon: default
+ salt_control_size_cpu_ceph_rgw: 8
+ salt_control_size_ram_ceph_rgw: 16384
+ salt_control_size_disk_profile_ceph_rgw: small
+ salt_control_size_net_profile_ceph_rgw: default
+ salt:
+ control:
+ size:
+ ceph.mon:
+ cpu: ${_param:salt_control_size_cpu_ceph_mon}
+ ram: ${_param:salt_control_size_ram_ceph_mon}
+ disk_profile: ${_param:salt_control_size_disk_profile_ceph_mon}
+ net_profile: ${_param:salt_control_size_net_profile_ceph_mon}
+ ceph.rgw:
+ cpu: ${_param:salt_control_size_cpu_ceph_rgw}
+ ram: ${_param:salt_control_size_ram_ceph_rgw}
+ disk_profile: ${_param:salt_control_size_disk_profile_ceph_rgw}
+ net_profile: ${_param:salt_control_size_net_profile_ceph_rgw}
diff --git a/salt/control/sizes/cicd.yml b/salt/control/sizes/cicd.yml
new file mode 100644
index 0000000..a2ada77
--- /dev/null
+++ b/salt/control/sizes/cicd.yml
@@ -0,0 +1,14 @@
+parameters:
+ _param:
+ salt_control_size_cpu_cicd_control: 8
+ salt_control_size_ram_cicd_control: 32768
+ salt_control_size_disk_profile_cicd_control: huge
+ salt_control_size_net_profile_cicd_control: default
+ salt:
+ control:
+ size:
+ cicd.control:
+ cpu: ${_param:salt_control_size_cpu_cicd_control}
+ ram: ${_param:salt_control_size_ram_cicd_control}
+ disk_profile: ${_param:salt_control_size_disk_profile_cicd_control}
+ net_profile: ${_param:salt_control_size_net_profile_cicd_control}
diff --git a/salt/control/sizes/opencontrail.yml b/salt/control/sizes/opencontrail.yml
new file mode 100644
index 0000000..41b858d
--- /dev/null
+++ b/salt/control/sizes/opencontrail.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ salt_control_size_cpu_opencontrail_control: 8
+ salt_control_size_ram_opencontrail_control: 65536
+ salt_control_size_disk_profile_opencontrail_control: large
+ salt_control_size_net_profile_opencontrail_control: default
+ salt_control_size_cpu_opencontrail_analytics: 16
+ salt_control_size_ram_opencontrail_analytics: 98304
+ salt_control_size_disk_profile_opencontrail_analytics: huge
+ salt_control_size_net_profile_opencontrail_analytics: default
+ salt:
+ control:
+ size:
+ opencontrail.control:
+ cpu: ${_param:salt_control_size_cpu_opencontrail_control}
+ ram: ${_param:salt_control_size_ram_opencontrail_control}
+ disk_profile: ${_param:salt_control_size_disk_profile_opencontrail_control}
+ net_profile: ${_param:salt_control_size_net_profile_opencontrail_control}
+ opencontrail.analytics:
+ cpu: ${_param:salt_control_size_cpu_opencontrail_analytics}
+ ram: ${_param:salt_control_size_ram_opencontrail_analytics}
+ disk_profile: ${_param:salt_control_size_disk_profile_opencontrail_analytics}
+ net_profile: ${_param:salt_control_size_net_profile_opencontrail_analytics}
diff --git a/salt/control/sizes/openstack.yml b/salt/control/sizes/openstack.yml
new file mode 100644
index 0000000..b75161b
--- /dev/null
+++ b/salt/control/sizes/openstack.yml
@@ -0,0 +1,50 @@
+parameters:
+ _param:
+ salt_control_size_cpu_openstack_control: 8
+ salt_control_size_ram_openstack_control: 65536
+ salt_control_size_disk_profile_openstack_control: large
+ salt_control_size_net_profile_openstack_control: default
+ salt_control_size_cpu_openstack_database: 8
+ salt_control_size_ram_openstack_database: 32768
+ salt_control_size_disk_profile_openstack_database: large
+ salt_control_size_net_profile_openstack_database: default
+ salt_control_size_cpu_openstack_message_queue: 16
+ salt_control_size_ram_openstack_message_queue: 65536
+ salt_control_size_disk_profile_openstack_message_queue: xxlarge
+ salt_control_size_net_profile_openstack_message_queue: default
+ salt_control_size_cpu_openstack_proxy: 4
+ salt_control_size_ram_openstack_proxy: 16384
+ salt_control_size_disk_profile_openstack_proxy: large
+ salt_control_size_net_profile_openstack_proxy: default
+ salt_control_size_cpu_openstack_upgrade: 8
+ salt_control_size_ram_openstack_upgrade: 16384
+ salt_control_size_disk_profile_openstack_upgrade: medium
+ salt_control_size_net_profile_openstack_upgrade: default
+ salt:
+ control:
+ size:
+ openstack.control:
+ cpu: ${_param:salt_control_size_cpu_openstack_control}
+ ram: ${_param:salt_control_size_ram_openstack_control}
+ disk_profile: ${_param:salt_control_size_disk_profile_openstack_control}
+ net_profile: ${_param:salt_control_size_net_profile_openstack_control}
+ openstack.database:
+ cpu: ${_param:salt_control_size_cpu_openstack_database}
+ ram: ${_param:salt_control_size_ram_openstack_database}
+ disk_profile: ${_param:salt_control_size_disk_profile_openstack_database}
+ net_profile: ${_param:salt_control_size_net_profile_openstack_database}
+ openstack.message_queue:
+ cpu: ${_param:salt_control_size_cpu_openstack_message_queue}
+ ram: ${_param:salt_control_size_ram_openstack_message_queue}
+ disk_profile: ${_param:salt_control_size_disk_profile_openstack_message_queue}
+ net_profile: ${_param:salt_control_size_net_profile_openstack_message_queue}
+ openstack.proxy:
+ cpu: ${_param:salt_control_size_cpu_openstack_proxy}
+ ram: ${_param:salt_control_size_ram_openstack_proxy}
+ disk_profile: ${_param:salt_control_size_disk_profile_openstack_proxy}
+ net_profile: ${_param:salt_control_size_net_profile_openstack_proxy}
+ openstack.upgrade:
+ cpu: ${_param:salt_control_size_cpu_openstack_upgrade}
+ ram: ${_param:salt_control_size_ram_openstack_upgrade}
+ disk_profile: ${_param:salt_control_size_disk_profile_openstack_upgrade}
+ net_profile: ${_param:salt_control_size_net_profile_openstack_upgrade}
diff --git a/salt/control/sizes/stacklight.yml b/salt/control/sizes/stacklight.yml
new file mode 100644
index 0000000..5b09c14
--- /dev/null
+++ b/salt/control/sizes/stacklight.yml
@@ -0,0 +1,32 @@
+parameters:
+ _param:
+ salt_control_size_cpu_stacklight_log: 16
+ salt_control_size_ram_stacklight_log: 49152
+ salt_control_size_disk_profile_stacklight_log: xxhuge
+ salt_control_size_net_profile_stacklight_log: default
+ salt_control_size_cpu_stacklight_server: 12
+ salt_control_size_ram_stacklight_server: 65536
+ salt_control_size_disk_profile_stacklight_server: xxlarge
+ salt_control_size_net_profile_stacklight_server: default
+ salt_control_size_cpu_stacklight_telemetry: 12
+ salt_control_size_ram_stacklight_telemetry: 98304
+ salt_control_size_disk_profile_stacklight_telemetryr: huge
+ salt_control_size_net_profile_stacklight_telemetry: default
+ salt:
+ control:
+ size:
+ stacklight.log:
+ cpu: ${_param:salt_control_size_cpu_stacklight_log}
+ ram: ${_param:salt_control_size_ram_stacklight_log}
+ disk_profile: ${_param:salt_control_size_disk_profile_stacklight_log}
+ net_profile: ${_param:salt_control_size_net_profile_stacklight_log}
+ stacklight.server:
+ cpu: ${_param:salt_control_size_cpu_stacklight_server}
+ ram: ${_param:salt_control_size_ram_stacklight_server}
+ disk_profile: ${_param:salt_control_size_disk_profile_stacklight_server}
+ net_profile: ${_param:salt_control_size_net_profile_stacklight_server}
+ stacklight.telemetry:
+ cpu: ${_param:salt_control_size_cpu_stacklight_telemetry}
+ ram: ${_param:salt_control_size_ram_stacklight_telemetry}
+ disk_profile: ${_param:salt_control_size_disk_profile_stacklight_telemetry}
+ net_profile: ${_param:salt_control_size_net_profile_stacklight_telemetry}
\ No newline at end of file
diff --git a/salt/master/formula/git/dogtag.yml b/salt/master/formula/git/dogtag.yml
new file mode 100644
index 0000000..d4cac8c
--- /dev/null
+++ b/salt/master/formula/git/dogtag.yml
@@ -0,0 +1,10 @@
+parameters:
+ salt:
+ master:
+ environment:
+ dev:
+ formula:
+ dogtag:
+ source: git
+ address: '${_param:salt_master_environment_repository}/salt-formula-dogtag.git'
+ revision: ${_param:salt_master_environment_revision}
diff --git a/salt/master/formula/git/gnocchi.yml b/salt/master/formula/git/gnocchi.yml
new file mode 100644
index 0000000..53d2f56
--- /dev/null
+++ b/salt/master/formula/git/gnocchi.yml
@@ -0,0 +1,10 @@
+parameters:
+ salt:
+ master:
+ environment:
+ dev:
+ formula:
+ gnocchi:
+ source: git
+ address: '${_param:salt_master_environment_repository}/salt-formula-gnocchi.git'
+ revision: ${_param:salt_master_environment_revision}
diff --git a/salt/master/formula/git/manila.yml b/salt/master/formula/git/manila.yml
new file mode 100644
index 0000000..b9cf3e0
--- /dev/null
+++ b/salt/master/formula/git/manila.yml
@@ -0,0 +1,10 @@
+parameters:
+ salt:
+ master:
+ environment:
+ dev:
+ formula:
+ manila:
+ source: git
+ address: '${_param:salt_master_environment_repository}/salt-formula-manila.git'
+ revision: ${_param:salt_master_environment_revision}
diff --git a/salt/master/formula/git/panko.yml b/salt/master/formula/git/panko.yml
new file mode 100644
index 0000000..045331b
--- /dev/null
+++ b/salt/master/formula/git/panko.yml
@@ -0,0 +1,10 @@
+parameters:
+ salt:
+ master:
+ environment:
+ dev:
+ formula:
+ panko:
+ source: git
+ address: '${_param:salt_master_environment_repository}/salt-formula-panko.git'
+ revision: ${_param:salt_master_environment_revision}
diff --git a/salt/master/formula/pkg/dogtag.yml b/salt/master/formula/pkg/dogtag.yml
new file mode 100644
index 0000000..5ae4b28
--- /dev/null
+++ b/salt/master/formula/pkg/dogtag.yml
@@ -0,0 +1,9 @@
+parameters:
+ salt:
+ master:
+ environment:
+ prd:
+ formula:
+ dogtag:
+ source: pkg
+ name: salt-formula-dogtag
diff --git a/salt/master/formula/pkg/gnocchi.yml b/salt/master/formula/pkg/gnocchi.yml
new file mode 100644
index 0000000..2f49b99
--- /dev/null
+++ b/salt/master/formula/pkg/gnocchi.yml
@@ -0,0 +1,9 @@
+parameters:
+ salt:
+ master:
+ environment:
+ prd:
+ formula:
+ gnocchi:
+ source: pkg
+ name: salt-formula-gnocchi
diff --git a/salt/master/formula/pkg/manila.yml b/salt/master/formula/pkg/manila.yml
new file mode 100644
index 0000000..4777a36
--- /dev/null
+++ b/salt/master/formula/pkg/manila.yml
@@ -0,0 +1,9 @@
+parameters:
+ salt:
+ master:
+ environment:
+ prd:
+ formula:
+ manila:
+ source: pkg
+ name: salt-formula-manila
diff --git a/salt/master/formula/pkg/panko.yml b/salt/master/formula/pkg/panko.yml
new file mode 100644
index 0000000..d4d8b8f
--- /dev/null
+++ b/salt/master/formula/pkg/panko.yml
@@ -0,0 +1,9 @@
+parameters:
+ salt:
+ master:
+ environment:
+ prd:
+ formula:
+ panko:
+ source: pkg
+ name: salt-formula-panko
diff --git a/salt/master/single.yml b/salt/master/single.yml
index 9764a97..fbb32f2 100644
--- a/salt/master/single.yml
+++ b/salt/master/single.yml
@@ -13,7 +13,8 @@
master:
accept_policy: auto_accept
worker_threads: 40
+ max_open_files: 15000
command_timeout: 10
peer:
'.*':
- - x509.sign_remote_certificate
+ - x509.sign_remote_certificate
\ No newline at end of file
diff --git a/salt/minion/single.yml b/salt/minion/single.yml
new file mode 100644
index 0000000..9d20aff
--- /dev/null
+++ b/salt/minion/single.yml
@@ -0,0 +1,10 @@
+parameters:
+ salt:
+ minion:
+ acceptance_wait_time_max: 60
+ acceptance_wait_time: 10
+ random_reauth_delay: 270
+ recon_default: 1000
+ recon_max: 60000
+ recon_randomize: True
+ auth_timeout: 60
\ No newline at end of file
diff --git a/watchdog/server/init.yml b/watchdog/server/init.yml
new file mode 100644
index 0000000..28435d6
--- /dev/null
+++ b/watchdog/server/init.yml
@@ -0,0 +1,7 @@
+classes:
+- service.watchdog.server
+parameters:
+ watchdog:
+ server:
+ enabled: true
+
diff --git a/zookeeper/backup/client/single.yml b/zookeeper/backup/client/single.yml
index 0085b79..d8eaaac 100644
--- a/zookeeper/backup/client/single.yml
+++ b/zookeeper/backup/client/single.yml
@@ -1,4 +1,5 @@
classes:
+- service.zookeeper.backup.client
- system.openssh.client.root
parameters:
_param:
diff --git a/zookeeper/backup/server/single.yml b/zookeeper/backup/server/single.yml
index aaa877b..6796d8a 100644
--- a/zookeeper/backup/server/single.yml
+++ b/zookeeper/backup/server/single.yml
@@ -1,3 +1,5 @@
+classes:
+- service.zookeeper.backup.server
parameters:
_param:
zookeeper_backup_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzLUiHKAjfFXiZ3fsgx35uXF6VivfC5WFafu4QMalxmj6W+s277oCfdWA8Du5f1wtQXM73VQ5nHkXhM2UIfUMarsyhXK+BxKVrcgEBNHdKlDytaecUPyuOxTDdGWhN/DPv5/vL8NYWweEYBbNbLgU0Td7Rvm52TUXKThIDjeF7XDxX4ShXWipBSwU4boOUBtR8KWfga8fsqeBN+eacuAQFR3MrrOfVvAuWW6Bsf047cmd+V6Qv0raoW73Nu4M/ZAdTsaR5k62a0cHsSRoi3hCmNRqw+CZaQi8prQU6t26eWPEtznjp5EkPF+LLh8LxUoCfWqWT+Lxe8QQwT1nx/LCN