Merge pull request #199 from simonpasquier/fix-region-neutron-ovs
Add missing OpenStack region for OpenvSwitch
diff --git a/README.rst b/README.rst
index 99e9d5b..539b6d2 100644
--- a/README.rst
+++ b/README.rst
@@ -14,11 +14,67 @@
Include class at `cluster.<name>.openstack.compute`
-- system.nova.compute.sriov
+.. code-block:: yaml
-and parameters:
+ - system.nova.compute.nfv.sriov
-- sriov_nic01: Name of the interface
-- sriov_nic01_numvfs: Number of Virtual Functions
-- sriov_nic01_physical_network: Default "physnet1", label for physical network interface belongs to.
-- sriov_unsafe_interrupts: Default False, needs to be set True if your hw platform does not support interrupt remapping
+For single SR-IOV interface setup you can set parameters:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+`sriov_nic01_device_name`
+ Name of the Physical Function interface (pF)
+
+`sriov_nic01_numvfs`
+ 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
+ support interrupt remapping.
+
+
+Multiple SR-IOV interface setup:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+By default, the metadata model contains configuration for 1 NIC
+dedicated for SR-IOV, so we need to setup network interfaces like in the
+following example.
+
+.. code-block:: yaml
+
+ ...
+ nova:
+ compute:
+ sriov:
+ sriov_nic01:
+ devname: eth1
+ physical_network: physnet3
+ sriov_nic02:
+ devname: eth2
+ physical_network: physnet4
+ sriov_nic03:
+ devname: eth3
+ physical_network: physnet3
+ sriov_nic04:
+ devname: eth4
+ physical_network: physnet6
+ linux:
+ system:
+ kernel:
+ sriov: True
+ unsafe_interrupts: False
+ rc:
+ local: |
+ #!/bin/sh -e
+ # Enabling 7 VFs on eth1 PF
+ echo 7 > /sys/class/net/eth1/device/sriov_numvfs; sleep 2; ip link set eth1 up
+ # Enabling 15 VFs on eth2 PF
+ echo 15 > /sys/class/net/eth2/device/sriov_numvfs; sleep 2; ip link set eth2 up
+ # Enabling 15 VFs on eth3 PF
+ echo 15 > /sys/class/net/eth3/device/sriov_numvfs; sleep 2; ip link set eth3 up
+ # Enabling 7 VFs on eth4 PF
+ echo 7 > /sys/class/net/eth4/device/sriov_numvfs; sleep 2; ip link set eth4 up
+ exit 0
diff --git a/aptly/server/mirror/ubuntu/trusty/glusterfs.yml b/aptly/server/mirror/ubuntu/trusty/glusterfs.yml
new file mode 100644
index 0000000..2d3fbaf
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/glusterfs.yml
@@ -0,0 +1,17 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ aptly:
+ server:
+ mirror:
+ glusterfs_upstream_trusty:
+ source: http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu
+ distribution: trusty
+ components: main
+ architectures: amd64
+ gpgkeys:
+ - 3FE869A9
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk.yml
new file mode 100644
index 0000000..553e6dd
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk.yml
@@ -0,0 +1,79 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ aptly:
+ server:
+ mirror:
+ # required for opencontrail formulas
+ mcp_opencontrail_trusty_oc311:
+ source: http://apt-mk.mirantis.com/trusty/
+ distribution: ${_param:apt_mk_version}
+ components: oc311
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc311
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
+ mcp_opencontrail_trusty_oc31:
+ source: http://apt-mk.mirantis.com/trusty/
+ distribution: ${_param:apt_mk_version}
+ components: oc31
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc31
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
+ mcp_opencontrail_trusty_oc32:
+ source: http://apt-mk.mirantis.com/trusty/
+ distribution: ${_param:apt_mk_version}
+ components: oc32
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc32
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
+ mcp_opencontrail_trusty_oc303:
+ source: http://apt-mk.mirantis.com/trusty/
+ distribution: ${_param:apt_mk_version}
+ components: oc303
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc303
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
+ mirantis_openstack_trusty_extra:
+ source: http://apt-mk.mirantis.com/trusty/
+ distribution: ${_param:apt_mk_version}
+ components: extra
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: extra
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
+ mirantis_openstack_trusty_salt:
+ source: http://apt-mk.mirantis.com/trusty/
+ distribution: ${_param:apt_mk_version}
+ components: salt
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: salt
+ distributions:
+ - ubuntu-trusty/${_param:apt_mk_version}
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/openstack.yml b/aptly/server/mirror/ubuntu/trusty/mcp/openstack.yml
new file mode 100644
index 0000000..32e3b90
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/openstack.yml
@@ -0,0 +1,73 @@
+parameters:
+ _param:
+ mcp_repo_version: 1.0
+ aptly:
+ server:
+ mirror:
+ mirantis_openstack_trusty:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty
+ distribution: mitaka
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-trusty/mitaka
+
+ mirantis_openstack_hotfix_trusty:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty
+ distribution: mitaka-hotfix
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-trusty/mitaka-hotfix
+
+ mirantis_openstack_security_trusty:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty
+ distribution: mitaka-security
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-trusty/mitaka-security
+
+ # required for alternative horizon plugins/etc..
+ mirantis_openstack_updates_trusty:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty
+ distribution: mitaka-updates
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-trusty/mitaka-updates
+
+ # required for salt formulas
+ mirantis_openstack_holdback_trusty:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty
+ distribution: mitaka-holdback
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/trusty/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-trusty/mitaka-holdback
+
diff --git a/aptly/server/mirror/ubuntu/trusty/mos8.yml b/aptly/server/mirror/ubuntu/trusty/mos8.yml
index e6e6707..c85363f 100644
--- a/aptly/server/mirror/ubuntu/trusty/mos8.yml
+++ b/aptly/server/mirror/ubuntu/trusty/mos8.yml
@@ -13,6 +13,7 @@
component: main
distributions:
- mos8/mos8.0
+ # FIXME, enable hotfix once contain packages, otherwise broke aptly publish
#mirantis-openstack-8.0-hotfix-trusty:
# source: http://mirror.fuel-infra.org/mos-repos/ubuntu/8.0-mu-3/
# distribution: mos8.0-hotfix
@@ -37,6 +38,7 @@
component: main
distributions:
- mos8/mos8.0-proposed
+ # FIXME, enable security once contain packages, otherwise broke aptly publish
#mirantis-openstack-8.0-security-trusty:
# source: http://mirror.fuel-infra.org/mos-repos/ubuntu/8.0-mu-3/
# distribution: mos8.0-security
diff --git a/aptly/server/mirror/ubuntu/trusty/mos9.yml b/aptly/server/mirror/ubuntu/trusty/mos9.yml
index 20f87b2..29415ab 100644
--- a/aptly/server/mirror/ubuntu/trusty/mos9.yml
+++ b/aptly/server/mirror/ubuntu/trusty/mos9.yml
@@ -37,6 +37,7 @@
component: main
distributions:
- mos9/mos9.0-proposed
+ # FIXME, enable security once contain packages, otherwise broke aptly publish
#mirantis-openstack-9.0-security-trusty:
# source: http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/
# distribution: mos9.0-security
@@ -62,7 +63,7 @@
distributions:
- mos9/mos9.0-updates
mirantis-openstack-9.0-extras-murano:
- source: http://mirror.fuel-infra.org/extras/murano-plugin-repos/release/1.1.0/ubuntu/9.0/
+ source: http://mirror.fuel-infra.org/extras/murano-plugin-repos/release/1.2.0/ubuntu/9.0/
distribution: mos9.0
components: main restricted
architectures: amd64
diff --git a/aptly/server/mirror/ubuntu/trusty/ubuntu.yml b/aptly/server/mirror/ubuntu/trusty/ubuntu.yml
index 22e83df..3cd7c7b 100644
--- a/aptly/server/mirror/ubuntu/trusty/ubuntu.yml
+++ b/aptly/server/mirror/ubuntu/trusty/ubuntu.yml
@@ -1,10 +1,12 @@
parameters:
+ _param:
+ linux_system_country_code: cz
aptly:
server:
mirror:
# trusty
trusty-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty
components: main
architectures: amd64
@@ -17,7 +19,7 @@
distributions:
- ubuntu/trusty
trusty-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty
components: multiverse
architectures: amd64
@@ -30,7 +32,7 @@
distributions:
- ubuntu/trusty
trusty-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty
components: restricted
architectures: amd64
@@ -43,7 +45,7 @@
distributions:
- ubuntu/trusty
trusty-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty
components: universe
architectures: amd64
@@ -58,7 +60,7 @@
# trusty-updates
trusty-updates-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-updates
components: main
architectures: amd64
@@ -71,7 +73,7 @@
distributions:
- ubuntu/trusty-updates
trusty-updates-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-updates
components: multiverse
architectures: amd64
@@ -84,7 +86,7 @@
distributions:
- ubuntu/trusty-updates
trusty-updates-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-updates
components: restricted
architectures: amd64
@@ -97,7 +99,7 @@
distributions:
- ubuntu/trusty-updates
trusty-updates-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-updates
components: universe
architectures: amd64
@@ -112,7 +114,7 @@
#trusty-security:
trusty-security-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-security
components: main
architectures: amd64
@@ -125,7 +127,7 @@
distributions:
- ubuntu/trusty-security
trusty-security-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-security
components: multiverse
architectures: amd64
@@ -138,7 +140,7 @@
distributions:
- ubuntu/trusty-security
trusty-security-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-security
components: restricted
architectures: amd64
@@ -151,7 +153,7 @@
distributions:
- ubuntu/trusty-security
trusty-security-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-security
components: universe
architectures: amd64
@@ -166,7 +168,7 @@
#trusty-proposed:
trusty-proposed-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-proposed
components: main
architectures: amd64
@@ -179,7 +181,7 @@
distributions:
- ubuntu/trusty-proposed
trusty-proposed-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-proposed
components: multiverse
architectures: amd64
@@ -192,7 +194,7 @@
distributions:
- ubuntu/trusty-proposed
trusty-proposed-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-proposed
components: restricted
architectures: amd64
@@ -205,7 +207,7 @@
distributions:
- ubuntu/trusty-proposed
trusty-proposed-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-proposed
components: universe
architectures: amd64
@@ -220,7 +222,7 @@
#trusty-backports:
trusty-backports-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-backports
components: main
architectures: amd64
@@ -233,7 +235,7 @@
distributions:
- ubuntu/trusty-backports
trusty-backports-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-backports
components: multiverse
architectures: amd64
@@ -246,7 +248,7 @@
distributions:
- ubuntu/trusty-backports
trusty-backports-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-backports
components: restricted
architectures: amd64
@@ -259,7 +261,7 @@
distributions:
- ubuntu/trusty-backports
trusty-backports-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: trusty-backports
components: universe
architectures: amd64
diff --git a/aptly/server/mirror/ubuntu/xenial/ceph_mirantis.yml b/aptly/server/mirror/ubuntu/xenial/ceph_mirantis.yml
index 1bc4341..3401a4e 100644
--- a/aptly/server/mirror/ubuntu/xenial/ceph_mirantis.yml
+++ b/aptly/server/mirror/ubuntu/xenial/ceph_mirantis.yml
@@ -2,7 +2,7 @@
aptly:
server:
mirror:
- ceph-mirantis-xenial:
+ ubuntu-xenial-ceph-mirantis:
source: http://eu.mirror.fuel-infra.org/decapod/ceph/apt
distribution: jewel-xenial
components: main
@@ -12,8 +12,8 @@
publisher:
component: ceph-mirantis
distributions:
- - xenial/nightly
- decapod-ceph-mirantis-xenial:
+ - ubuntu-xenial/nightly
+ ubuntu-xenial-decapod-ceph-mirantis:
source: http://eu.mirror.fuel-infra.org/decapod/ceph/apt
distribution: jewel-xenial
components: main
diff --git a/aptly/server/mirror/ubuntu/xenial/glusterfs.yml b/aptly/server/mirror/ubuntu/xenial/glusterfs.yml
new file mode 100644
index 0000000..79a618a
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/glusterfs.yml
@@ -0,0 +1,17 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ aptly:
+ server:
+ mirror:
+ glusterfs_upstream_xenial:
+ source: http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu
+ distribution: xenial
+ components: main
+ architectures: amd64
+ gpgkeys:
+ - 3FE869A9
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk.yml b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk.yml
new file mode 100644
index 0000000..6272b69
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/apt_mk.yml
@@ -0,0 +1,79 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ aptly:
+ server:
+ mirror:
+ # required for opencontrail formulas
+ mcp_opencontrail_xenial_oc311:
+ source: http://apt-mk.mirantis.com/xenial/
+ distribution: ${_param:apt_mk_version}
+ components: oc311
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc311
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
+ mcp_opencontrail_xenial_oc31:
+ source: http://apt-mk.mirantis.com/xenial/
+ distribution: ${_param:apt_mk_version}
+ components: oc31
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc31
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
+ mcp_opencontrail_xenial_oc32:
+ source: http://apt-mk.mirantis.com/xenial/
+ distribution: ${_param:apt_mk_version}
+ components: oc32
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc32
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
+ mcp_opencontrail_xenial_oc303:
+ source: http://apt-mk.mirantis.com/xenial/
+ distribution: ${_param:apt_mk_version}
+ components: oc303
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: oc303
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
+ mirantis_openstack_xenial_extra:
+ source: http://apt-mk.mirantis.com/xenial/
+ distribution: ${_param:apt_mk_version}
+ components: extra
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: extra
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
+ mirantis_openstack_xenial_salt:
+ source: http://apt-mk.mirantis.com/xenial/
+ distribution: ${_param:apt_mk_version}
+ components: salt
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+ gpgkeys:
+ - A76882D3
+ publisher:
+ component: salt
+ distributions:
+ - ubuntu-xenial/${_param:apt_mk_version}
diff --git a/aptly/server/mirror/ubuntu/xenial/mcp/openstack.yml b/aptly/server/mirror/ubuntu/xenial/mcp/openstack.yml
new file mode 100644
index 0000000..a23ece8
--- /dev/null
+++ b/aptly/server/mirror/ubuntu/xenial/mcp/openstack.yml
@@ -0,0 +1,73 @@
+parameters:
+ _param:
+ mcp_repo_version: 1.0
+ aptly:
+ server:
+ mirror:
+ mirantis_openstack_xenial:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial
+ distribution: mitaka
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-xenial/mitaka
+
+ mirantis_openstack_hotfix_xenial:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial
+ distribution: mitaka-hotfix
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-xenial/mitaka-hotfix
+
+ mirantis_openstack_security_xenial:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial
+ distribution: mitaka-security
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-xenial/mitaka-security
+
+ # required for alternative horizon plugins/etc..
+ mirantis_openstack_updates_xenial:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial
+ distribution: mitaka-updates
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-xenial/mitaka-updates
+
+ # required for salt formulas
+ mirantis_openstack_holdback_xenial:
+ source: http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial
+ distribution: mitaka-holdback
+ components: main restricted
+ architectures: amd64
+ key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/xenial/archive-mcp${_param:mcp_repo_version}.key"
+ gpgkeys:
+ - 1FA22B08
+ publisher:
+ component: main
+ distributions:
+ - ubuntu-xenial/mitaka-holdback
+
diff --git a/aptly/server/mirror/ubuntu/xenial/ubuntu.yml b/aptly/server/mirror/ubuntu/xenial/ubuntu.yml
index 10c54a5..4675063 100644
--- a/aptly/server/mirror/ubuntu/xenial/ubuntu.yml
+++ b/aptly/server/mirror/ubuntu/xenial/ubuntu.yml
@@ -1,10 +1,14 @@
parameters:
+ _param:
+ linux_system_country_code_default: cz
+ linux_system_country_code: ${_param:linux_system_country_code_default}
aptly:
server:
mirror:
# xenial
xenial-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial
components: main
architectures: amd64
@@ -17,7 +21,8 @@
distributions:
- ubuntu/xenial
xenial-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial
components: multiverse
architectures: amd64
@@ -30,7 +35,8 @@
distributions:
- ubuntu/xenial
xenial-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial
components: restricted
architectures: amd64
@@ -43,7 +49,8 @@
distributions:
- ubuntu/xenial
xenial-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial
components: universe
architectures: amd64
@@ -58,7 +65,8 @@
# xenial-updates
xenial-updates-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-updates
components: main
architectures: amd64
@@ -71,7 +79,8 @@
distributions:
- ubuntu/xenial-updates
xenial-updates-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-updates
components: multiverse
architectures: amd64
@@ -84,7 +93,8 @@
distributions:
- ubuntu/xenial-updates
xenial-updates-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-updates
components: restricted
architectures: amd64
@@ -97,7 +107,8 @@
distributions:
- ubuntu/xenial-updates
xenial-updates-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-updates
components: universe
architectures: amd64
@@ -112,7 +123,8 @@
#xenial-security:
xenial-security-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-security
components: main
architectures: amd64
@@ -125,7 +137,8 @@
distributions:
- ubuntu/xenial-security
xenial-security-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-security
components: multiverse
architectures: amd64
@@ -138,7 +151,8 @@
distributions:
- ubuntu/xenial-security
xenial-security-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-security
components: restricted
architectures: amd64
@@ -151,7 +165,8 @@
distributions:
- ubuntu/xenial-security
xenial-security-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-security
components: universe
architectures: amd64
@@ -166,7 +181,8 @@
#xenial-proposed:
xenial-proposed-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-proposed
components: main
architectures: amd64
@@ -179,7 +195,8 @@
distributions:
- ubuntu/xenial-proposed
xenial-proposed-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-proposed
components: multiverse
architectures: amd64
@@ -192,7 +209,7 @@
distributions:
- ubuntu/xenial-proposed
xenial-proposed-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-proposed
components: restricted
architectures: amd64
@@ -205,7 +222,7 @@
distributions:
- ubuntu/xenial-proposed
xenial-proposed-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-proposed
components: universe
architectures: amd64
@@ -220,7 +237,7 @@
#xenial-backports:
xenial-backports-main:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-backports
components: main
architectures: amd64
@@ -233,7 +250,7 @@
distributions:
- ubuntu/xenial-backports
xenial-backports-multiverse:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-backports
components: multiverse
architectures: amd64
@@ -246,7 +263,8 @@
distributions:
- ubuntu/xenial-backports
xenial-backports-restricted:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-backports
components: restricted
architectures: amd64
@@ -259,7 +277,8 @@
distributions:
- ubuntu/xenial-backports
xenial-backports-universe:
- source: http://cz.archive.ubuntu.com/ubuntu/
+ sources: true
+ source: http://${_param:linux_system_country_code}.archive.ubuntu.com/ubuntu/
distribution: xenial-backports
components: universe
architectures: amd64
diff --git a/aptly/server/single.yml b/aptly/server/single.yml
index 095c396..8b71974 100644
--- a/aptly/server/single.yml
+++ b/aptly/server/single.yml
@@ -73,6 +73,7 @@
server:
enabled: true
secure: ${_param:aptly_server_secure}
- gpg_keypair_id: ${_param:aptly_gpg_keypair_id}
- gpg_public_key: ${_param:aptly_gpg_public_key}
- gpg_private_key: ${_param:aptly_gpg_private_key}
+ gpg:
+ keypair_id: ${_param:aptly_gpg_keypair_id}
+ public_key: ${_param:aptly_gpg_public_key}
+ private_key: ${_param:aptly_gpg_private_key}
diff --git a/devops_portal/service/gerrit.yml b/devops_portal/service/gerrit.yml
new file mode 100644
index 0000000..6dcad9c
--- /dev/null
+++ b/devops_portal/service/gerrit.yml
@@ -0,0 +1,9 @@
+parameters:
+ devops_portal:
+ config:
+ service:
+ gerrit:
+ endpoint:
+ address: ${_param:haproxy_gerrit_bind_host}
+ port: ${_param:haproxy_gerrit_bind_port}
+ https: ${_param:haproxy_gerrit_ssl:enabled}
diff --git a/devops_portal/service/jenkins.yml b/devops_portal/service/jenkins.yml
new file mode 100644
index 0000000..349a707
--- /dev/null
+++ b/devops_portal/service/jenkins.yml
@@ -0,0 +1,9 @@
+parameters:
+ devops_portal:
+ config:
+ service:
+ jenkins:
+ endpoint:
+ address: ${_param:haproxy_jenkins_bind_host}
+ port: ${_param:haproxy_jenkins_bind_port}
+ https: ${_param:haproxy_jenkins_ssl:enabled}
diff --git a/devops_portal/service/rundeck.yml b/devops_portal/service/rundeck.yml
new file mode 100644
index 0000000..1a15473
--- /dev/null
+++ b/devops_portal/service/rundeck.yml
@@ -0,0 +1,13 @@
+parameters:
+ devops_portal:
+ config:
+ service:
+ rundeck:
+ configure_proxy: true
+ credentials:
+ username: admin
+ password: ${_param:rundeck_admin_password}
+ endpoint:
+ address: ${_param:haproxy_rundeck_bind_host}
+ port: ${_param:haproxy_rundeck_bind_port}
+ https: ${_param:haproxy_rundeck_ssl:enabled}
diff --git a/docker/host.yml b/docker/host.yml
index cf19bfd..f7649b5 100644
--- a/docker/host.yml
+++ b/docker/host.yml
@@ -4,6 +4,7 @@
parameters:
docker:
host:
+ experimental: true
insecure_registries:
- ${_param:cluster_vip_address}:5000
- ${_param:cluster_public_host}:5000
diff --git a/docker/swarm/manager.yml b/docker/swarm/manager.yml
index 36f5bcb..25a7fbe 100644
--- a/docker/swarm/manager.yml
+++ b/docker/swarm/manager.yml
@@ -1,4 +1,8 @@
+classes:
+ - system.docker.swarm.network.gwbridge
parameters:
+ _param:
+ docker_gwbridge_subnet: 10.20.0.0/16
docker:
swarm:
role: manager
diff --git a/docker/swarm/master.yml b/docker/swarm/master.yml
index bb2d83b..fba9af3 100644
--- a/docker/swarm/master.yml
+++ b/docker/swarm/master.yml
@@ -1,4 +1,8 @@
+classes:
+ - system.docker.swarm.network.gwbridge
parameters:
+ _param:
+ docker_gwbridge_subnet: 10.20.0.0/16
docker:
swarm:
role: master
diff --git a/docker/swarm/network/gwbridge.yml b/docker/swarm/network/gwbridge.yml
new file mode 100644
index 0000000..8208d3d
--- /dev/null
+++ b/docker/swarm/network/gwbridge.yml
@@ -0,0 +1,10 @@
+parameters:
+ docker:
+ swarm:
+ network:
+ docker_gwbridge:
+ subnet: ${_param:docker_gwbridge_subnet}
+ opt:
+ com.docker.network.bridge.name: docker_gwbridge
+ com.docker.network.bridge.enable_icc: false
+ com.docker.network.bridge.enable_ip_masquerade: true
diff --git a/docker/swarm/service/devops_portal.yml b/docker/swarm/service/devops_portal.yml
new file mode 100644
index 0000000..6a82aa5
--- /dev/null
+++ b/docker/swarm/service/devops_portal.yml
@@ -0,0 +1,23 @@
+parameters:
+ _param:
+ docker_devops_portal_replicas: 1
+ docker_image_devops_portal: docker-sandbox.sandbox.mirantis.net/ikharin/oss/devops-portal:latest
+ docker:
+ client:
+ service:
+ devops-portal:
+ replicas: ${_param:docker_devops_portal_replicas}
+ image: ${_param:docker_image_devops_portal}
+ restart:
+ condition: any
+ ports:
+ - 18800:8000
+ volume:
+ nginx:
+ type: bind
+ source: /srv/volumes/devops_portal/nginx/
+ destination: /etc/nginx/config
+ config:
+ type: bind
+ source: /srv/volumes/devops_portal/config/
+ destination: /opt/devops-portal/config
diff --git a/docker/swarm/service/gerrit.yml b/docker/swarm/service/gerrit.yml
index d33bdbb..10e0629 100644
--- a/docker/swarm/service/gerrit.yml
+++ b/docker/swarm/service/gerrit.yml
@@ -1,6 +1,12 @@
parameters:
_param:
- docker_image_gerrit: tcpcloud/gerrit:2.12.7
+ docker_image_gerrit: tcpcloud/gerrit:2.13.6
+ gerrit_ldap_server: ""
+ gerrit_ldap_bind_user: ""
+ gerrit_ldap_bind_password: ""
+ gerrit_ldap_account_base: ""
+ gerrit_ldap_group_base: ""
+
docker:
client:
service:
@@ -13,10 +19,17 @@
DB_ENV_MYSQL_PASSWORD: ${_param:mysql_gerrit_password}
DB_ENV_MYSQL_DB: gerrit
AUTH_TYPE: ${_param:gerrit_auth_type}
+ LDAP_SERVER: ${_param:gerrit_ldap_server}
+ LDAP_ACCOUNTPATTERN: 'uid={username}'
+ LDAP_ACCOUNTBASE: ${_param:gerrit_ldap_account_base}
+ LDAP_GROUPBASE: ${_param:gerrit_ldap_group_base}
+ LDAP_USERNAME: ${_param:gerrit_ldap_bind_user}
+ LDAP_PASSWORD: ${_param:gerrit_ldap_bind_password}
WEBURL: ${_param:gerrit_public_host}
GERRIT_ADMIN_SSH_PUBLIC: ${_param:gerrit_admin_public_key}
GERRIT_ADMIN_PWD: ${_param:gerrit_admin_password}
GERRIT_ADMIN_EMAIL: ${_param:gerrit_admin_email}
+ CANLOADINIFRAME: "true"
restart:
condition: any
image: ${_param:docker_image_gerrit}
diff --git a/docker/swarm/service/jenkins.yml b/docker/swarm/service/jenkins.yml
index 3069dc6..b2fdeb6 100644
--- a/docker/swarm/service/jenkins.yml
+++ b/docker/swarm/service/jenkins.yml
@@ -1,12 +1,12 @@
parameters:
_param:
- docker_image_jenkins: tcpcloud/jenkins:2.50
+ docker_image_jenkins: tcpcloud/jenkins:2.52
docker:
client:
service:
jenkins:
environment:
- JAVA_OPTS: "-Djenkins.install.runSetupWizard=false -Dhudson.footerURL=https://www.mirantis.com"
+ JAVA_OPTS: "-Djenkins.install.runSetupWizard=false -Dhudson.DNSMultiCast.disabled=true -Dhudson.udp=-1 -Dhudson.footerURL=https://www.mirantis.com"
JENKINS_NUM_EXECUTORS: 4
restart:
condition: any
diff --git a/docker/swarm/service/monitoring/prometheus_alertmanager.yml b/docker/swarm/service/monitoring/prometheus_alertmanager.yml
index 74b20f5..5d5f237 100644
--- a/docker/swarm/service/monitoring/prometheus_alertmanager.yml
+++ b/docker/swarm/service/monitoring/prometheus_alertmanager.yml
@@ -6,11 +6,12 @@
service:
prometheus_alertmanager:
network: monitoring
- replica: 2
+ replicas: 2
environment:
config_dir: /opt/alertmanager/config
bind_port: ${prometheus:alertmanager:bind:port}
bind_address: ${prometheus:alertmanager:bind:address}
+ discovery_domain: 'prometheus_alertmanager'
restart:
condition: any
image: ${_param:docker_image_alertmanager}
@@ -19,5 +20,5 @@
volume:
site:
type: bind
- source: /srv/volumes/prometheus-config
+ source: /srv/volumes/prometheus
destination: /opt/alertmanager/config
diff --git a/docker/swarm/service/monitoring/prometheus_pushgateway.yml b/docker/swarm/service/monitoring/prometheus_pushgateway.yml
index 7ba37af..ad159b6 100644
--- a/docker/swarm/service/monitoring/prometheus_pushgateway.yml
+++ b/docker/swarm/service/monitoring/prometheus_pushgateway.yml
@@ -4,7 +4,7 @@
service:
prometheus_pushgateway:
network: monitoring
- replica: 2
+ replicas: 2
restart:
condition: any
image: ${_param:docker_image_pushgateway}
diff --git a/docker/swarm/service/monitoring/prometheus_server.yml b/docker/swarm/service/monitoring/prometheus_server.yml
index 24a9193..37bb6d3 100644
--- a/docker/swarm/service/monitoring/prometheus_server.yml
+++ b/docker/swarm/service/monitoring/prometheus_server.yml
@@ -6,7 +6,7 @@
service:
prometheus_server:
network: monitoring
- replica: 1
+ replicas: 1
environment:
config_dir: /opt/prometheus/config
bind_port: ${prometheus:server:bind:port}
@@ -17,6 +17,7 @@
storage_local_memory_chunks: ${prometheus:server:storage:local:memory_chunks}
storage_local_max_chunks_to_persist: ${prometheus:server:storage:local:max_chunks_to_persist}
storage_local_num_fingerprint_mutexes: ${prometheus:server:storage:local:num_fingerprint_mutexes}
+ discovery_domain: 'prometheus_alertmanager'
restart:
condition: any
image: ${_param:docker_image_prometheus}
@@ -25,5 +26,5 @@
volume:
site:
type: bind
- source: /srv/volumes/prometheus-config
+ source: /srv/volumes/prometheus
destination: /opt/prometheus/config
diff --git a/docker/swarm/service/openldap.yml b/docker/swarm/service/openldap.yml
index e390772..f7f12e2 100644
--- a/docker/swarm/service/openldap.yml
+++ b/docker/swarm/service/openldap.yml
@@ -1,28 +1,28 @@
parameters:
_param:
- docker_image_openldap: osixia/openldap:1.1.7
+ docker_image_openldap: osixia/openldap:1.1.8
docker:
client:
service:
openldap:
- # XXX: docker service is not able to set hostname
- # https://github.com/docker/docker/issues/24877
restart:
condition: any
image: ${_param:docker_image_openldap}
+ hostname: ldap01.${_param:openldap_domain}
+ hosts:
+ ldap01:
+ name: ldap01.${_param:openldap_domain}
+ address: 127.0.0.1
environment:
- HOSTNAME: ldap01.${_param:cluster_public_host}
+ HOSTNAME: ldap01.${_param:openldap_domain}
LDAP_ORGANISATION: "${_param:openldap_organisation}"
LDAP_DOMAIN: "${_param:openldap_domain}"
LDAP_ADMIN_PASSWORD: ${_param:openldap_admin_password}
LDAP_CONFIG_PASSWORD: ${_param:openldap_config_password}
- LDAP_READONLY_USER: true
- LDAP_READONLY_USER_USERNAME: readonly
- LDAP_READONLY_USER_PASSWORD: ${_param:openldap_readonly_password}
- LDAP_TLS: false
+ LDAP_TLS: "false"
ports:
- - 389:389
- - 636:636
+ - 1389:389
+ - 1636:636
volume:
database:
type: bind
diff --git a/docker/swarm/service/phpldapadmin.yml b/docker/swarm/service/phpldapadmin.yml
new file mode 100644
index 0000000..25332c7
--- /dev/null
+++ b/docker/swarm/service/phpldapadmin.yml
@@ -0,0 +1,22 @@
+parameters:
+ _param:
+ docker_image_phpldapadmin: tcpcloud/phpldapadmin:0.6.12
+ docker:
+ client:
+ service:
+ phpldapadmin:
+ restart:
+ condition: any
+ image: ${_param:docker_image_phpldapadmin}
+ hosts:
+ ldap:
+ name: ldap.${_param:openldap_domain}
+ address: ${_param:cluster_vip_address}
+ environment:
+ PHPLDAPADMIN_LDAP_HOSTS: "#PYTHON2BASH:[{'ldap.${_param:openldap_domain}': [{'server': [{'tls': False}]},{'login': [{'bind_id': 'cn=admin,${_param:openldap_dn}'},{'bind_pass': '${_param:openldap_admin_password}'}]}]}]"
+ PHPLDAPADMIN_HTTPS: false
+ PHPLDAPADMIN_TRUST_PROXY_SSL: true
+ PHPLDAPADMIN_SERVER_ADMIN: ${_param:admin_email}
+ PHPLDAPADMIN_THEME: mirantis
+ ports:
+ - 18089:80
diff --git a/docker/swarm/service/rundeck.yml b/docker/swarm/service/rundeck.yml
new file mode 100644
index 0000000..baad94a
--- /dev/null
+++ b/docker/swarm/service/rundeck.yml
@@ -0,0 +1,47 @@
+parameters:
+ _param:
+ docker_rundeck_replicas: 1
+ docker_image_rundeck: docker-sandbox.sandbox.mirantis.net/ikharin/oss/rundeck:latest
+ rundeck_admin_password: password
+ docker:
+ client:
+ service:
+ rundeck:
+ environment:
+ SERVER_URL: "http://${_param:haproxy_rundeck_bind_host}:${_param:haproxy_rundeck_bind_port}"
+ RUNDECK_ADMIN_PASSWORD: ${_param:rundeck_admin_password}
+ replicas: ${_param:docker_rundeck_replicas}
+ image: ${_param:docker_image_rundeck}
+ restart:
+ condition: any
+ ports:
+ - 14440:4440
+ volume:
+ etc:
+ type: bind
+ source: /srv/volumes/rundeck/etc
+ destination: /etc/rundeck
+ rundeck:
+ type: bind
+ source: /srv/volumes/rundeck/rundeck
+ destination: /var/rundeck
+ mysql:
+ type: bind
+ source: /srv/volumes/rundeck/mysql
+ destination: /var/lib/mysql
+ log:
+ type: bind
+ source: /srv/volumes/rundeck/log
+ destination: /var/log/rundeck
+ logs:
+ type: bind
+ source: /srv/volumes/rundeck/logs
+ destination: /var/lib/rundeck/logs
+ plugins:
+ type: bind
+ source: /srv/volumes/rundeck/plugins
+ destination: /opt/rundeck-plugins
+ storage:
+ type: bind
+ source: /srv/volumes/rundeck/storage
+ destination: /var/lib/rundeck/var/storage
diff --git a/docker/swarm/worker.yml b/docker/swarm/worker.yml
index acdb0cf..643b207 100644
--- a/docker/swarm/worker.yml
+++ b/docker/swarm/worker.yml
@@ -1,4 +1,8 @@
+classes:
+ - system.docker.swarm.network.gwbridge
parameters:
+ _param:
+ docker_gwbridge_subnet: 10.20.0.0/16
docker:
swarm:
role: worker
diff --git a/gerrit/client/init.yml b/gerrit/client/init.yml
index a9bb4de..25c0b94 100644
--- a/gerrit/client/init.yml
+++ b/gerrit/client/init.yml
@@ -1,9 +1,12 @@
classes:
- service.gerrit.client
parameters:
+ _param:
+ gerrit_try_login: true
gerrit:
client:
enabled: True
+ try_login: ${_param:gerrit_try_login}
source:
engine: pip
dir:
@@ -14,11 +17,15 @@
host: ${_param:cluster_vip_address}
user: admin
email: ${_param:gerrit_admin_email}
+ auth_method: basic
http_port: 8080
ssh_port: 29418
protocol: http
password: ${_param:gerrit_admin_password}
key: ${_param:gerrit_admin_private_key}
+ user:
+ admin:
+ ssh_key: ${_param:gerrit_admin_public_key}
group:
Event Streaming Users:
description: Event Streaming Users
diff --git a/glance/control/storage/ceph.yml b/glance/control/storage/ceph.yml
index ef3c033..d48fb6d 100644
--- a/glance/control/storage/ceph.yml
+++ b/glance/control/storage/ceph.yml
@@ -2,7 +2,7 @@
glance:
server:
storage:
- engine: rbd
+ engine: rbd,http
user: ${_param:glance_storage_user}
pool: ${_param:glance_storage_pool}
chunk_size: 8
\ No newline at end of file
diff --git a/glusterfs/client/volume/devops_portal.yml b/glusterfs/client/volume/devops_portal.yml
new file mode 100644
index 0000000..9a3c291
--- /dev/null
+++ b/glusterfs/client/volume/devops_portal.yml
@@ -0,0 +1,10 @@
+parameters:
+ _param:
+ devops_portal_glusterfs_service_host: ${_param:glusterfs_service_host}
+ glusterfs:
+ client:
+ volumes:
+ devops_portal:
+ path: /srv/volumes/devops_portal
+ server: ${_param:devops_portal_glusterfs_service_host}
+ opts: 'defaults'
diff --git a/glusterfs/client/volume/prometheus.yml b/glusterfs/client/volume/prometheus.yml
index f8b2f3d..2b2b7db 100644
--- a/glusterfs/client/volume/prometheus.yml
+++ b/glusterfs/client/volume/prometheus.yml
@@ -4,7 +4,7 @@
glusterfs:
client:
volumes:
- prometheus-config:
- path: /srv/volumes/prometheus-config
+ prometheus:
+ path: /srv/volumes/prometheus
server: ${_param:prometheus_glusterfs_service_host}
opts: 'defaults'
diff --git a/glusterfs/client/volume/rundeck.yml b/glusterfs/client/volume/rundeck.yml
new file mode 100644
index 0000000..b226aeb
--- /dev/null
+++ b/glusterfs/client/volume/rundeck.yml
@@ -0,0 +1,10 @@
+parameters:
+ _param:
+ rundeck_glusterfs_service_host: ${_param:glusterfs_service_host}
+ glusterfs:
+ client:
+ volumes:
+ rundeck:
+ path: /srv/volumes/rundeck
+ server: ${_param:rundeck_glusterfs_service_host}
+ opts: 'defaults'
diff --git a/glusterfs/server/volume/devops_portal.yml b/glusterfs/server/volume/devops_portal.yml
new file mode 100644
index 0000000..0b71b62
--- /dev/null
+++ b/glusterfs/server/volume/devops_portal.yml
@@ -0,0 +1,17 @@
+parameters:
+ glusterfs:
+ server:
+ volumes:
+ devops_portal:
+ storage: /srv/glusterfs/devops_portal
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/devops_portal
+ - ${_param:cluster_node02_address}:/srv/glusterfs/devops_portal
+ - ${_param:cluster_node03_address}:/srv/glusterfs/devops_portal
+ options:
+ cluster.readdir-optimize: On
+ nfs.disable: On
+ network.remote-dio: On
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
diff --git a/glusterfs/server/volume/prometheus.yml b/glusterfs/server/volume/prometheus.yml
index 2c4ca31..144847a 100644
--- a/glusterfs/server/volume/prometheus.yml
+++ b/glusterfs/server/volume/prometheus.yml
@@ -2,13 +2,13 @@
glusterfs:
server:
volumes:
- prometheus-config:
- storage: /srv/glusterfs/prometheus-config
+ prometheus:
+ storage: /srv/glusterfs/prometheus
replica: 3
bricks:
- - ${_param:cluster_node01_address}:/srv/glusterfs/prometheus-config
- - ${_param:cluster_node02_address}:/srv/glusterfs/prometheus-config
- - ${_param:cluster_node03_address}:/srv/glusterfs/prometheus-config
+ - ${_param:cluster_node01_address}:/srv/glusterfs/prometheus
+ - ${_param:cluster_node02_address}:/srv/glusterfs/prometheus
+ - ${_param:cluster_node03_address}:/srv/glusterfs/prometheus
options:
cluster.readdir-optimize: On
nfs.disable: On
diff --git a/glusterfs/server/volume/rundeck.yml b/glusterfs/server/volume/rundeck.yml
new file mode 100644
index 0000000..22e5563
--- /dev/null
+++ b/glusterfs/server/volume/rundeck.yml
@@ -0,0 +1,17 @@
+parameters:
+ glusterfs:
+ server:
+ volumes:
+ rundeck:
+ storage: /srv/glusterfs/rundeck
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/rundeck
+ - ${_param:cluster_node02_address}:/srv/glusterfs/rundeck
+ - ${_param:cluster_node03_address}:/srv/glusterfs/rundeck
+ options:
+ cluster.readdir-optimize: On
+ nfs.disable: On
+ network.remote-dio: On
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
diff --git a/haproxy/proxy/listen/openldap.yml b/haproxy/proxy/listen/openldap.yml
new file mode 100644
index 0000000..b6f79a0
--- /dev/null
+++ b/haproxy/proxy/listen/openldap.yml
@@ -0,0 +1,46 @@
+parameters:
+ _param:
+ haproxy_openldap_bind_host: ${_param:haproxy_bind_address}
+ haproxy_openldap_bind_port: 389
+ haproxy_openldap_ssl_bind_port: 636
+ haproxy:
+ proxy:
+ listen:
+ openldap:
+ mode: tcp
+ balance: source
+ binds:
+ - address: ${_param:haproxy_openldap_bind_host}
+ port: ${_param:haproxy_openldap_bind_port}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: 1389
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: 1389
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: 1389
+ params: backup check
+ openldap_ssl:
+ mode: tcp
+ balance: source
+ binds:
+ - address: ${_param:haproxy_openldap_bind_host}
+ port: ${_param:haproxy_openldap_ssl_bind_port}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: 1636
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: 1636
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: 1636
+ params: backup check
diff --git a/haproxy/proxy/listen/openstack/murano.yml b/haproxy/proxy/listen/openstack/murano.yml
new file mode 100644
index 0000000..0427820
--- /dev/null
+++ b/haproxy/proxy/listen/openstack/murano.yml
@@ -0,0 +1,18 @@
+parameters:
+ haproxy:
+ proxy:
+ listen:
+ murano_api:
+ type: openstack-service
+ check: false
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: 8082
+ servers:
+ - name: ${_param:cluster_node01_hostname}
+ host: ${_param:cluster_node01_address}
+ port: 8082
+ params: check
+ - name: ${_param:cluster_node02_hostname}
+ host: ${_param:cluster_node02_address}
+ port: 8082
\ No newline at end of file
diff --git a/haproxy/proxy/listen/openstack/novnc.yml b/haproxy/proxy/listen/openstack/novnc.yml
index 9646651..78b7d98 100644
--- a/haproxy/proxy/listen/openstack/novnc.yml
+++ b/haproxy/proxy/listen/openstack/novnc.yml
@@ -5,7 +5,7 @@
nova_novnc:
type: general-service
service_name: http
- check: false
+ check: true
binds:
- address: ${_param:cluster_vip_address}
port: 6080
diff --git a/haproxy/proxy/listen/openstack/sahara.yml b/haproxy/proxy/listen/openstack/sahara.yml
new file mode 100644
index 0000000..3bbf809
--- /dev/null
+++ b/haproxy/proxy/listen/openstack/sahara.yml
@@ -0,0 +1,24 @@
+parameters:
+ haproxy:
+ proxy:
+ listen:
+ sahara_api:
+ type: openstack-service
+ options:
+ - httplog
+ binds:
+ - address: ${_param:cluster_vip_address}
+ port: 8386
+ servers:
+ - name: ctl01
+ host: ${_param:cluster_node01_address}
+ port: 8386
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+ - name: ctl02
+ host: ${_param:cluster_node02_address}
+ port: 8386
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
+ - name: ctl03
+ host: ${_param:cluster_node03_address}
+ port: 8386
+ params: check inter 10s fastinter 2s downinter 3s rise 3 fall 3
diff --git a/haproxy/proxy/listen/oss/devops_portal.yml b/haproxy/proxy/listen/oss/devops_portal.yml
new file mode 100644
index 0000000..e5c25cf
--- /dev/null
+++ b/haproxy/proxy/listen/oss/devops_portal.yml
@@ -0,0 +1,37 @@
+parameters:
+ _param:
+ haproxy_devops_portal_bind_host: ${_param:haproxy_bind_address}
+ haproxy_devops_portal_bind_port: 8800
+ haproxy_devops_portal_ssl:
+ enabled: false
+ haproxy:
+ proxy:
+ listen:
+ devops_portal:
+ mode: http
+ options:
+ - forwardfor
+ - httpchk
+ - httpclose
+ - httplog
+ balance: source
+ http_request:
+ - action: "add-header X-Forwarded-Proto https"
+ condition: "if { ssl_fc }"
+ binds:
+ - address: ${_param:haproxy_devops_portal_bind_host}
+ port: ${_param:haproxy_devops_portal_bind_port}
+ ssl: ${_param:haproxy_devops_portal_ssl}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: 18800
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: 18800
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: 18800
+ params: backup check
diff --git a/haproxy/proxy/listen/oss/rundeck.yml b/haproxy/proxy/listen/oss/rundeck.yml
new file mode 100644
index 0000000..fbabb38
--- /dev/null
+++ b/haproxy/proxy/listen/oss/rundeck.yml
@@ -0,0 +1,37 @@
+parameters:
+ _param:
+ haproxy_rundeck_bind_host: ${_param:haproxy_bind_address}
+ haproxy_rundeck_bind_port: 4440
+ haproxy_rundeck_ssl:
+ enabled: false
+ haproxy:
+ proxy:
+ listen:
+ rundeck:
+ mode: http
+ options:
+ - forwardfor
+ - httpchk
+ - httpclose
+ - httplog
+ balance: source
+ http_request:
+ - action: "add-header X-Forwarded-Proto https"
+ condition: "if { ssl_fc }"
+ binds:
+ - address: ${_param:haproxy_rundeck_bind_host}
+ port: ${_param:haproxy_rundeck_bind_port}
+ ssl: ${_param:haproxy_rundeck_ssl}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: 14440
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: 14440
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: 14440
+ params: backup check
diff --git a/haproxy/proxy/listen/phpldapadmin.yml b/haproxy/proxy/listen/phpldapadmin.yml
new file mode 100644
index 0000000..b2b7f93
--- /dev/null
+++ b/haproxy/proxy/listen/phpldapadmin.yml
@@ -0,0 +1,30 @@
+parameters:
+ _param:
+ haproxy_phpldapadmin_bind_host: ${_param:haproxy_bind_address}
+ haproxy_phpldapadmin_bind_port: 8089
+ haproxy:
+ proxy:
+ listen:
+ phpldapadmin:
+ mode: http
+ options:
+ - forwardfor
+ - httpclose
+ - httplog
+ balance: source
+ binds:
+ - address: ${_param:haproxy_phpldapadmin_bind_host}
+ port: ${_param:haproxy_phpldapadmin_bind_port}
+ servers:
+ - name: ${_param:cluster_node01_name}
+ host: ${_param:cluster_node01_address}
+ port: 18089
+ params: check
+ - name: ${_param:cluster_node02_name}
+ host: ${_param:cluster_node02_address}
+ port: 18089
+ params: backup check
+ - name: ${_param:cluster_node03_name}
+ host: ${_param:cluster_node03_address}
+ port: 18089
+ params: backup check
diff --git a/heka/aggregator/cluster.yml b/heka/aggregator/cluster.yml
index 2913211..1d1e5c7 100644
--- a/heka/aggregator/cluster.yml
+++ b/heka/aggregator/cluster.yml
@@ -2,9 +2,6 @@
- service.heka.aggregator.cluster
- system.heka.server
parameters:
- _param:
- nagios_default_host_alarm_clusters: 00-clusters
- nagios_host_dimension_key: nagios_host
heka:
aggregator:
influxdb_host: ${_param:heka_influxdb_host}
@@ -12,12 +9,6 @@
influxdb_database: lma
influxdb_username: lma
influxdb_password: ${_param:influxdb_stacklight_password}
- nagios_host: ${_param:nagios_host}
- nagios_username: ${_param:nagios_username}
- nagios_password: ${_param:nagios_password}
- nagios_port: ${_param:nagios_status_port}
- nagios_default_host_alarm_clusters: ${_param:nagios_default_host_alarm_clusters}
- nagios_host_dimension_key: ${_param:nagios_host_dimension_key}
poolsize: 200
keepalived:
cluster:
diff --git a/heka/aggregator/single.yml b/heka/aggregator/single.yml
index c5ad6ab..5ee3605 100644
--- a/heka/aggregator/single.yml
+++ b/heka/aggregator/single.yml
@@ -2,9 +2,6 @@
- service.heka.aggregator.single
- system.heka.server
parameters:
- _param:
- nagios_default_host_alarm_clusters: 00-clusters
- nagios_host_dimension_key: nagios_host
heka:
aggregator:
influxdb_host: ${_param:heka_influxdb_host}
@@ -12,10 +9,4 @@
influxdb_database: lma
influxdb_username: lma
influxdb_password: ${_param:influxdb_stacklight_password}
- nagios_host: ${_param:nagios_host}
- nagios_username: ${_param:nagios_username}
- nagios_password: ${_param:nagios_password}
- nagios_port: ${_param:nagios_status_port}
- nagios_default_host_alarm_clusters: ${_param:nagios_default_host_alarm_clusters}
- nagios_host_dimension_key: ${_param:nagios_host_dimension_key}
poolsize: 200
diff --git a/heka/metric_collector/output/nagios.yml b/heka/metric_collector/output/nagios.yml
new file mode 100644
index 0000000..89d981f
--- /dev/null
+++ b/heka/metric_collector/output/nagios.yml
@@ -0,0 +1,2 @@
+classes:
+- service.heka.metric_collector.output.nagios
diff --git a/heka/metric_collector/output/sensu.yml b/heka/metric_collector/output/sensu.yml
index 3143fd9..a68a2ab 100644
--- a/heka/metric_collector/output/sensu.yml
+++ b/heka/metric_collector/output/sensu.yml
@@ -1,3 +1,2 @@
classes:
- service.heka.metric_collector.output.sensu
-
diff --git a/heka/metric_collector/single.yml b/heka/metric_collector/single.yml
index 443a4e9..b4167f0 100644
--- a/heka/metric_collector/single.yml
+++ b/heka/metric_collector/single.yml
@@ -12,7 +12,3 @@
influxdb_port: 8086
influxdb_time_precision: ms
influxdb_username: lma
- nagios_host: ${_param:nagios_host}
- nagios_username: ${_param:nagios_username}
- nagios_password: ${_param:nagios_password}
- nagios_port: ${_param:nagios_status_port}
diff --git a/horizon/server/single.yml b/horizon/server/single.yml
index 5a83b2a..c20de5a 100644
--- a/horizon/server/single.yml
+++ b/horizon/server/single.yml
@@ -1,6 +1,5 @@
classes:
- service.horizon.server.single
-- system.horizon.server.plugin.theme
parameters:
_param:
horizon_site_branding: OpenStack Dashboard
diff --git a/jenkins/client/approved_scripts.yml b/jenkins/client/approved_scripts.yml
new file mode 100644
index 0000000..bf46803
--- /dev/null
+++ b/jenkins/client/approved_scripts.yml
@@ -0,0 +1,94 @@
+parameters:
+ jenkins:
+ client:
+ approved_scripts:
+ - field java.lang.String value
+ - field java.util.ArrayList size
+ - method com.cloudbees.jenkins.plugins.sshcredentials.SSHUserPrivateKey getPrivateKey
+ - method com.cloudbees.plugins.credentials.common.IdCredentials getId
+ - method com.cloudbees.plugins.credentials.common.PasswordCredentials getPassword
+ - method com.cloudbees.plugins.credentials.common.UsernameCredentials getUsername
+ - method groovy.json.JsonBuilder toPrettyString
+ - method groovy.json.JsonSlurperClassic parseText java.lang.String
+ - method groovy.lang.GString getBytes
+ - method groovy.lang.GroovyObject getProperty java.lang.String
+ - method hudson.PluginManager getPlugins
+ - method hudson.PluginWrapper getShortName
+ - method hudson.model.Item getName
+ - method hudson.model.ItemGroup getItem java.lang.String
+ - method hudson.model.ItemGroup getItems
+ - method hudson.model.Job getBuilds
+ - method hudson.model.Job getLastBuild
+ - method hudson.model.Run getEnvironment
+ - method hudson.model.Run getResult
+ - method hudson.model.Run getTimeInMillis
+ - method hudson.model.Run isBuilding
+ - method java.io.File getAbsolutePath
+ - method java.io.File getName
+ - method java.io.File getParent
+ - method java.io.Writer write java.lang.String
+ - method java.lang.AutoCloseable close
+ - method java.lang.Class isInstance java.lang.Object
+ - method java.lang.Iterable iterator
+ - method java.net.HttpURLConnection getResponseCode
+ - method java.net.HttpURLConnection setRequestMethod java.lang.String
+ - method java.net.URI getHost
+ - method java.net.URI getPort
+ - method java.net.URL openConnection
+ - method java.net.URLConnection getHeaderField java.lang.String
+ - method java.net.URLConnection getInputStream
+ - method java.net.URLConnection getOutputStream
+ - method java.net.URLConnection setDoOutput boolean
+ - method java.net.URLConnection setRequestProperty java.lang.String java.lang.String
+ - method java.util.Collection remove java.lang.Object
+ - method java.util.LinkedHashMap$LinkedHashIterator hasNext
+ - method java.util.List subList int int
+ - method java.util.Map remove java.lang.Object
+ - method java.util.Map size
+ - method java.util.regex.MatchResult group int
+ - method java.util.regex.Matcher matches
+ - method java.util.regex.Pattern matcher java.lang.CharSequence
+ - method jenkins.model.Jenkins getPluginManager
+ - method org.jenkinsci.plugins.workflow.job.WorkflowRun doStop
+ - method org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper build
+ - new groovy.json.JsonBuilder java.lang.Object
+ - new groovy.json.JsonSlurperClassic
+ - new java.io.File java.lang.String
+ - new java.io.OutputStreamWriter java.io.OutputStream
+ - new java.lang.Exception java.lang.String
+ - new java.lang.InterruptedException
+ - new java.net.URI java.lang.String
+ - new java.util.Date
+ - staticField groovy.io.FileType FILES
+ - staticMethod com.cloudbees.plugins.credentials.CredentialsProvider lookupCredentials java.lang.Class hudson.model.ItemGroup
+ - staticMethod java.lang.Integer valueOf java.lang.String
+ - staticMethod java.lang.String format java.lang.String java.lang.Object[]
+ - staticMethod java.lang.System exit int
+ - staticMethod java.lang.System getProperty java.lang.String
+ - staticMethod java.lang.System getenv java.lang.String
+ - staticMethod java.util.regex.Pattern quote java.lang.String
+ - staticMethod jenkins.model.Jenkins getInstance
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods collect java.util.Map groovy.lang.Closure
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods eachFile java.io.File groovy.io.FileType groovy.lang.Closure
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods find java.util.Collection groovy.lang.Closure
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods findAll java.util.List groovy.lang.Closure
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods get java.util.Map java.lang.Object java.lang.Object
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.Iterable int
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.String int
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getBytes java.io.File
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getText java.io.InputStream
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods hasProperty java.lang.Object java.lang.String
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object[]
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Iterable
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Object
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.util.Collection
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods println java.lang.Object java.lang.Object
+ - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods putAt java.lang.Object java.lang.String java.lang.Object
+ - staticMethod org.codehaus.groovy.runtime.EncodingGroovyMethods encodeBase64 byte[]
+ - staticMethod org.codehaus.groovy.runtime.ScriptBytecodeAdapter bitwiseNegate java.lang.Object
+ - method java.util.Collection stream
+ - staticMethod java.util.stream.Collectors joining java.lang.CharSequence
+ - method java.util.stream.Stream collect java.util.stream.Collector
+ - staticMethod java.util.regex.Pattern compile java.lang.String
+ - method java.util.regex.Matcher find
diff --git a/jenkins/client/init.yml b/jenkins/client/init.yml
index aac50e9..e7c56ec 100644
--- a/jenkins/client/init.yml
+++ b/jenkins/client/init.yml
@@ -1,6 +1,7 @@
classes:
- service.jenkins.support
- service.jenkins.client
+ - system.jenkins.client.approved_scripts
parameters:
_param:
jenkins_client_user: none
@@ -27,6 +28,7 @@
gerrit-trigger: {}
git: {}
heavy-job: {}
+ ldap: {}
matrix-auth: {}
monitoring: {}
pipeline-utility-steps: {}
@@ -44,88 +46,3 @@
enabled: true
url: ${_param:jenkins_gerrit_url}/mcp-ci/pipeline-library
credential_id: gerrit
- approved_scripts:
- - field java.lang.String value
- - field java.util.ArrayList size
- - method com.cloudbees.jenkins.plugins.sshcredentials.SSHUserPrivateKey getPrivateKey
- - method com.cloudbees.plugins.credentials.common.IdCredentials getId
- - method com.cloudbees.plugins.credentials.common.PasswordCredentials getPassword
- - method com.cloudbees.plugins.credentials.common.UsernameCredentials getUsername
- - method groovy.json.JsonBuilder toPrettyString
- - method groovy.json.JsonSlurperClassic parseText java.lang.String
- - method groovy.lang.GString getBytes
- - method groovy.lang.GroovyObject getProperty java.lang.String
- - method hudson.model.Run getEnvironment
- - method java.io.File getAbsolutePath
- - method java.io.File getName
- - method java.io.File getParent
- - method java.io.Writer write java.lang.String
- - method java.lang.AutoCloseable close
- - method java.lang.Class isInstance java.lang.Object
- - method java.lang.Iterable iterator
- - method java.net.HttpURLConnection getResponseCode
- - method java.net.HttpURLConnection setRequestMethod java.lang.String
- - method java.net.URI getHost
- - method java.net.URI getPort
- - method java.net.URL openConnection
- - method java.net.URLConnection getHeaderField java.lang.String
- - method java.net.URLConnection getInputStream
- - method java.net.URLConnection getOutputStream
- - method java.net.URLConnection setDoOutput boolean
- - method java.net.URLConnection setRequestProperty java.lang.String java.lang.String
- - method java.util.LinkedHashMap$LinkedHashIterator hasNext
- - method java.util.Map size
- - method java.util.regex.MatchResult group int
- - method java.util.regex.Matcher matches
- - method java.util.regex.Pattern matcher java.lang.CharSequence
- - method org.jenkinsci.plugins.workflow.job.WorkflowRun doStop
- - method org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper build
- - new groovy.json.JsonBuilder java.lang.Object
- - new groovy.json.JsonSlurperClassic
- - new java.io.File java.lang.String
- - new java.io.OutputStreamWriter java.io.OutputStream
- - new java.lang.Exception java.lang.String
- - new java.lang.InterruptedException
- - new java.net.URI java.lang.String
- - new java.util.Date
- - staticField groovy.io.FileType FILES
- - staticMethod com.cloudbees.plugins.credentials.CredentialsProvider lookupCredentials java.lang.Class hudson.model.ItemGroup
- - staticMethod java.lang.System getenv java.lang.String
- - staticMethod jenkins.model.Jenkins getInstance
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods collect java.util.Map groovy.lang.Closure
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods eachFile java.io.File groovy.io.FileType groovy.lang.Closure
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods get java.util.Map java.lang.Object java.lang.Object
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.Iterable int
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.String int
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getBytes java.io.File
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getText java.io.InputStream
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods hasProperty java.lang.Object java.lang.String
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object[]
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Iterable
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Object
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.util.Collection
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods putAt java.lang.Object java.lang.String java.lang.Object
- - staticMethod org.codehaus.groovy.runtime.EncodingGroovyMethods encodeBase64 byte[]
- - staticMethod org.codehaus.groovy.runtime.ScriptBytecodeAdapter bitwiseNegate java.lang.Object
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods println java.lang.Object java.lang.Object
- - method hudson.PluginWrapper getShortName
- - method hudson.PluginManager getPlugins
- - method jenkins.model.Jenkins getPluginManager
- - method hudson.model.ItemGroup getItem java.lang.String
- - method hudson.model.Job getLastBuild
- - method hudson.model.Run getResult
- - method hudson.model.Job getBuilds
- - staticMethod java.lang.String format java.lang.String java.lang.Object[]
- - staticMethod java.util.regex.Pattern quote java.lang.String
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods findAll java.util.List groovy.lang.Closure
- - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods find java.util.Collection groovy.lang.Closure
- - method java.util.Collection remove java.lang.Object
- - staticMethod java.lang.System exit int
- - method hudson.model.ItemGroup getItems
- - method hudson.model.Item getName
- - method java.util.Map remove java.lang.Object
- - staticMethod java.lang.System getProperty java.lang.String
- - staticMethod java.lang.Integer valueOf java.lang.String
- - method java.util.List subList int int
-
diff --git a/jenkins/client/job/aptly.yml b/jenkins/client/job/aptly.yml
index d5d8fcd..c6a5755 100644
--- a/jenkins/client/job/aptly.yml
+++ b/jenkins/client/job/aptly.yml
@@ -1,6 +1,16 @@
parameters:
jenkins:
client:
+ view:
+ Aptly:
+ enabled: true
+ type: CategorizedJobsView
+ include_regex: "aptly-.*"
+ categories:
+ - group_regex: "aptly-.*-nightly-testing"
+ naming_rule: "Nightly -> Testing"
+ - group_regex: "aptly-.*-testing-stable"
+ naming_rule: "Testing -> Stable"
job_template:
aptly:
name: aptly-{{operation}}-{{dist}}-{{source}}-{{target}}
diff --git a/jenkins/client/job/debian/init.yml b/jenkins/client/job/debian/init.yml
index d0b40a0..f24cccc 100644
--- a/jenkins/client/job/debian/init.yml
+++ b/jenkins/client/job/debian/init.yml
@@ -1,2 +1,15 @@
classes:
- system.jenkins.client.job.debian.packages
+parameters:
+ jenkins:
+ client:
+ view:
+ Debian:
+ enabled: true
+ type: CategorizedJobsView
+ include_regex: "build-debian-(?!salt-formula-).*"
+ categories:
+ - group_regex: ".*-ubuntu-trusty"
+ naming_rule: "Ubuntu Trusty"
+ - group_regex: ".*-ubuntu-xenial"
+ naming_rule: "Ubuntu Xenial"
diff --git a/jenkins/client/job/debian/packages/horizon/modules.yml b/jenkins/client/job/debian/packages/horizon/modules.yml
index 30d7c64..2b6477b 100644
--- a/jenkins/client/job/debian/packages/horizon/modules.yml
+++ b/jenkins/client/job/debian/packages/horizon/modules.yml
@@ -17,6 +17,18 @@
dist: xenial
os_version: mitaka
branch: master
+ # Trusty
+ - name: horizon-contrail-panels
+ os: ubuntu
+ dist: trusty
+ os_version: mitaka
+ branch: stable/mitaka
+ # Xenial
+ - name: horizon-contrail-panels
+ os: ubuntu
+ dist: xenial
+ os_version: mitaka
+ branch: stable/mitaka
template:
discard:
build:
diff --git a/jenkins/client/job/debian/packages/salt.yml b/jenkins/client/job/debian/packages/salt.yml
index 5375d60..68d361e 100644
--- a/jenkins/client/job/debian/packages/salt.yml
+++ b/jenkins/client/job/debian/packages/salt.yml
@@ -9,6 +9,8 @@
dist: trusty
- name: apache
dist: trusty
+ - name: aptcacher
+ dist: trusty
- name: aptly
dist: trusty
- name: artifactory
@@ -39,6 +41,8 @@
dist: trusty
- name: dekapod
dist: trusty
+ - name: devops-portal
+ dist: trusty
- name: docker
dist: trusty
- name: dovecot
@@ -123,6 +127,8 @@
dist: trusty
- name: opencontrail
dist: trusty
+ - name: openldap
+ dist: trusty
- name: openssh
dist: trusty
- name: openvpn
@@ -179,6 +185,8 @@
dist: xenial
- name: apache
dist: xenial
+ - name: aptcacher
+ dist: xenial
- name: aptly
dist: xenial
- name: artifactory
@@ -209,6 +217,8 @@
dist: xenial
- name: dekapod
dist: xenial
+ - name: devops-portal
+ dist: xenial
- name: docker
dist: xenial
- name: dovecot
@@ -293,6 +303,8 @@
dist: xenial
- name: opencontrail
dist: xenial
+ - name: openldap
+ dist: xenial
- name: openssh
dist: xenial
- name: openvpn
diff --git a/jenkins/client/job/deploy/init.yml b/jenkins/client/job/deploy/init.yml
index 102fe73..f25086d 100644
--- a/jenkins/client/job/deploy/init.yml
+++ b/jenkins/client/job/deploy/init.yml
@@ -2,3 +2,20 @@
- system.jenkins.client.job.deploy.lab
- system.jenkins.client.job.deploy.update
- system.jenkins.client.job.deploy.openstack
+parameters:
+ jenkins:
+ client:
+ view:
+ Deploy:
+ enabled: true
+ type: CategorizedJobsView
+ include_regex: "deploy-.*"
+ categories:
+ - group_regex: "deploy-(heat|physical)-"
+ naming_rule: ""
+ - group_regex: "deploy-update-*"
+ naming_rule: "support"
+ - group_regex: "(mcp)[0-9]+"
+ naming_rule: ""
+ - group_regex: "(mk)[0-9]+"
+ naming_rule: ""
diff --git a/jenkins/client/job/deploy/lab/mk/init.yml b/jenkins/client/job/deploy/lab/mk/init.yml
index 7da9149..0bcfbc0 100644
--- a/jenkins/client/job/deploy/lab/mk/init.yml
+++ b/jenkins/client/job/deploy/lab/mk/init.yml
@@ -1,7 +1,6 @@
parameters:
_param:
jenkins_deploy_lab_mk_jobs: []
- jenkins_salt_api_url: "http://${_param:salt_master_host}:6969"
jenkins:
client:
job_template:
@@ -30,7 +29,7 @@
default: "{{install}}"
TEST:
type: string
- default: ""
+ default: "{{test}}"
# heat
HEAT_TEMPLATE_URL:
@@ -41,7 +40,7 @@
default: "gerrit"
HEAT_TEMPLATE_BRANCH:
type: string
- default: "composite"
+ default: "master"
HEAT_STACK_NAME:
type: string
description: Heat stack name. Will be generated if missing.
@@ -70,7 +69,7 @@
default: "salt-qa-credentials"
SALT_MASTER_URL:
type: string
- default: "${_param:jenkins_salt_api_url}"
+ default: ""
# openstack api
OPENSTACK_API_URL:
@@ -102,3 +101,7 @@
type: string
default: "sandbox-docker-prod-local.docker.mirantis.net/mirantis/rally_tempest:0.1"
+ ASK_ON_ERROR:
+ type: boolean
+ default: 'false'
+
diff --git a/jenkins/client/job/deploy/lab/mk/physical.yml b/jenkins/client/job/deploy/lab/mk/physical.yml
index a66909d..0767359 100644
--- a/jenkins/client/job/deploy/lab/mk/physical.yml
+++ b/jenkins/client/job/deploy/lab/mk/physical.yml
@@ -6,12 +6,16 @@
- lab: mcp10_contrail
install: core,kvm,openstack,contrail
stack_type: physical
+ test: openstack
- lab: mcp10_opencontrail_nfv
install: core,kvm,openstack,nfv
stack_type: physical
+ test: openstack
- lab: mcp10_dvr
install: core,kvm,openstack,dvr
stack_type: physical
+ test: openstack
- lab: mcp10_non_dvr
install: core,kvm,openstack
stack_type: physical
+ test: openstack
diff --git a/jenkins/client/job/deploy/lab/mk/virtual.yml b/jenkins/client/job/deploy/lab/mk/virtual.yml
index af65a4d..a97a22a 100644
--- a/jenkins/client/job/deploy/lab/mk/virtual.yml
+++ b/jenkins/client/job/deploy/lab/mk/virtual.yml
@@ -6,27 +6,40 @@
- lab: virtual_mcp05_dvr
install: core,openstack,dvr
stack_type: heat
+ test: openstack
- lab: virtual_mcp05_ovs
install: core,openstack,ovs
stack_type: heat
+ test: openstack
- lab: virtual_mcp10_contrail
install: core,openstack,contrail
stack_type: heat
+ test: openstack
- lab: virtual_mcp10_dvr
install: core,openstack,dvr
stack_type: heat
+ test: openstack
- lab: virtual_mcp10_ovs
install: core,openstack,ovs
stack_type: heat
+ test: openstack
+ - lab: virtual_mcp10_k8s
+ install: core,k8s
+ stack_type: heat
+ test: k8s
- lab: virtual_mk20_advanced
install: core,openstack
stack_type: heat
+ test: openstack
- lab: virtual_mk20_basic
install: core,openstack
stack_type: heat
+ test: openstack
- lab: virtual_mk22_advanced
install: core,openstack
stack_type: heat
+ test: openstack
- lab: virtual_mk22_basic
install: core,openstack
stack_type: heat
+ test: openstack
diff --git a/jenkins/client/job/deploy/openstack.yml b/jenkins/client/job/deploy/openstack.yml
index 48de021..644b16b 100644
--- a/jenkins/client/job/deploy/openstack.yml
+++ b/jenkins/client/job/deploy/openstack.yml
@@ -31,3 +31,6 @@
SALT_MASTER_URL:
type: string
default: ""
+ ASK_ON_ERROR:
+ type: boolean
+ default: 'false'
diff --git a/jenkins/client/job/opencontrail/build/generic.yml b/jenkins/client/job/opencontrail/build/generic.yml
index e994323..7516354 100644
--- a/jenkins/client/job/opencontrail/build/generic.yml
+++ b/jenkins/client/job/opencontrail/build/generic.yml
@@ -64,67 +64,6 @@
credentials: "gerrit"
github:
url: https://github.com/Mirantis/ccp-contrail-pipeline
- trigger:
- gerrit:
- project:
- contrail/contrail-pipeline:
- branches:
- - "{{branch}}"
- contrail/contrail-build:
- branches:
- - "{{branch}}"
- contrail/contrail-controller:
- branches:
- - "{{branch}}"
- contrail/contrail-vrouter:
- branches:
- - "{{branch}}"
- contrail/contrail-third-party:
- branches:
- - "{{branch}}"
- contrail/contrail-generateDS:
- branches:
- - "{{branch}}"
- contrail/contrail-sandesh:
- branches:
- - "{{branch}}"
- contrail/contrail-packages:
- branches:
- - "{{branch}}"
- contrail/contrail-nova-vif-driver:
- branches:
- - "{{branch}}"
- contrail/contrail-neutron-plugin:
- branches:
- - "{{branch}}"
- contrail/contrail-nova-extensions:
- branches:
- - "{{branch}}"
- contrail/contrail-heat:
- branches:
- - "{{branch}}"
- contrail/contrail-web-storage:
- branches:
- - "{{branch}}"
- contrail/contrail-web-server-manager:
- branches:
- - "{{branch}}"
- contrail/contrail-web-controller:
- branches:
- - "{{branch}}"
- contrail/contrail-web-core:
- branches:
- - "{{branch}}"
- contrail/contrail-webui-third-party:
- branches:
- - "{{branch}}"
- message:
- build_successful: "Build successful"
- build_unstable: "Build unstable"
- build_failure: "Build failed"
- event:
- ref:
- - updated
param:
APTLY_URL:
type: string
diff --git a/jenkins/client/job/opencontrail/build/test.yml b/jenkins/client/job/opencontrail/build/test.yml
index 7b39b97..5a4666a 100644
--- a/jenkins/client/job/opencontrail/build/test.yml
+++ b/jenkins/client/job/opencontrail/build/test.yml
@@ -9,26 +9,14 @@
os: ubuntu
dist: trusty
branch: R3.1
- - buildname: oc31
- os: ubuntu
- dist: xenial
- branch: R3.1
- buildname: oc311
os: ubuntu
dist: trusty
branch: R3.1.1.x
- - buildname: oc311
- os: ubuntu
- dist: xenial
- branch: R3.1.1.x
- buildname: oc32
os: ubuntu
dist: trusty
branch: R3.2
- - buildname: oc32
- os: ubuntu
- dist: xenial
- branch: R3.2
template:
discard:
build:
@@ -36,72 +24,11 @@
artifact:
keep_num: 5
type: workflow-scm
- concurrent: false
+ concurrent: true
quiet_period: 120
scm:
type: git
url: "https://github.com/chnyda/contrail-unittest"
- trigger:
- gerrit:
- project:
- contrail/contrail-pipeline:
- branches:
- - "{{branch}}"
- contrail/contrail-build:
- branches:
- - "{{branch}}"
- contrail/contrail-controller:
- branches:
- - "{{branch}}"
- contrail/contrail-vrouter:
- branches:
- - "{{branch}}"
- contrail/contrail-third-party:
- branches:
- - "{{branch}}"
- contrail/contrail-generateDS:
- branches:
- - "{{branch}}"
- contrail/contrail-sandesh:
- branches:
- - "{{branch}}"
- contrail/contrail-packages:
- branches:
- - "{{branch}}"
- contrail/contrail-nova-vif-driver:
- branches:
- - "{{branch}}"
- contrail/contrail-neutron-plugin:
- branches:
- - "{{branch}}"
- contrail/contrail-nova-extensions:
- branches:
- - "{{branch}}"
- contrail/contrail-heat:
- branches:
- - "{{branch}}"
- contrail/contrail-web-storage:
- branches:
- - "{{branch}}"
- contrail/contrail-web-server-manager:
- branches:
- - "{{branch}}"
- contrail/contrail-web-controller:
- branches:
- - "{{branch}}"
- contrail/contrail-web-core:
- branches:
- - "{{branch}}"
- contrail/contrail-webui-third-party:
- branches:
- - "{{branch}}"
- message:
- build_successful: "Build successful"
- build_unstable: "Build unstable"
- build_failure: "Build failed"
- event:
- ref:
- - updated
param:
SOURCE_URL:
type: string
@@ -125,3 +52,25 @@
ARCH:
type: string
default: "amd64"
+ trigger:
+ gerrit:
+ project:
+ contrail/contrail-controller:
+ branches:
+ - "{{branch}}"
+ contrail/contrail-vrouter:
+ branches:
+ - "{{branch}}"
+ event:
+ patchset:
+ - created:
+ excludeDrafts: false
+ excludeTrivialRebase: false
+ excludeNoCodeChange: false
+ comment:
+ - addedContains:
+ commentAddedCommentContains: '(recheck|reverify)'
+ param:
+ TEST_MODELS:
+ type: string
+ default: "{{clusters}}"
\ No newline at end of file
diff --git a/jenkins/client/job/opencontrail/init.yml b/jenkins/client/job/opencontrail/init.yml
index 72ee4fe..b41a357 100644
--- a/jenkins/client/job/opencontrail/init.yml
+++ b/jenkins/client/job/opencontrail/init.yml
@@ -7,3 +7,21 @@
contrail_kubernetes_branches: "master,release-1.2"
contrail_dpdk_extra_branches: "mitaka,kilo,liberty-multiqueue"
contrail_ceilometer_plugin_branches: "master"
+ jenkins:
+ client:
+ view:
+ Opencontrail:
+ enabled: true
+ type: CategorizedJobsView
+ include_regex: "build-opencontrail-.*"
+ categories:
+ - group_regex: "build-opencontrail-dpdk-extra-.*"
+ naming_rule: "DPDK Extras"
+ - group_regex: "build-opencontrail-oc303-.*"
+ naming_rule: "R3.0.3.x"
+ - group_regex: "build-opencontrail-oc31-.*"
+ naming_rule: "R3.1"
+ - group_regex: "build-opencontrail-oc311-.*"
+ naming_rule: "R3.1.1.x"
+ - group_regex: "build-opencontrail-oc32-.*"
+ naming_rule: "R3.2"
diff --git a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
index 207ae6b..e5771a2 100644
--- a/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
+++ b/jenkins/client/job/salt-formulas/git-mirrors/2way.yml
@@ -9,6 +9,7 @@
jobs:
- name: aodh
- name: apache
+ - name: aptcacher
- name: aptly
- name: artifactory
- name: backupninja
@@ -26,6 +27,7 @@
- name: cinder
- name: collectd
- name: dekapod
+ - name: devops-portal
- name: docker
- name: dovecot
- name: elasticsearch
@@ -75,6 +77,7 @@
- name: nova
- name: ntp
- name: opencontrail
+ - name: openldap
- name: openssh
- name: openvpn
- name: openvstorage
diff --git a/jenkins/client/job/salt-formulas/init.yml b/jenkins/client/job/salt-formulas/init.yml
index c498032..8c8c2e2 100644
--- a/jenkins/client/job/salt-formulas/init.yml
+++ b/jenkins/client/job/salt-formulas/init.yml
@@ -2,3 +2,16 @@
- system.jenkins.client.job.salt-formulas.git-mirrors
- system.jenkins.client.job.salt-formulas.tests
- system.jenkins.client.job.salt-formulas.release
+parameters:
+ jenkins:
+ client:
+ view:
+ "Salt formulas":
+ enabled: true
+ type: CategorizedJobsView
+ include_regex: "build-debian-salt-formula-.*"
+ categories:
+ - group_regex: ".*-ubuntu-trusty"
+ naming_rule: "Ubuntu Trusty"
+ - group_regex: ".*-ubuntu-xenial"
+ naming_rule: "Ubuntu Xenial"
diff --git a/jenkins/client/job/salt-formulas/tests.yml b/jenkins/client/job/salt-formulas/tests.yml
index 6988392..0dd7102 100644
--- a/jenkins/client/job/salt-formulas/tests.yml
+++ b/jenkins/client/job/salt-formulas/tests.yml
@@ -7,6 +7,7 @@
jobs:
- name: aodh
- name: apache
+ - name: aptcacher
- name: aptly
- name: artifactory
- name: backupninja
@@ -24,6 +25,7 @@
- name: cinder
- name: collectd
- name: dekapod
+ - name: devops-portal
- name: docker
- name: dovecot
- name: elasticsearch
@@ -73,6 +75,7 @@
- name: nova
- name: ntp
- name: opencontrail
+ - name: openldap
- name: openssh
- name: openvpn
- name: openvstorage
@@ -138,3 +141,10 @@
CREDENTIALS_ID:
type: string
default: "gerrit"
+ DEFAULT_GIT_URL:
+ type: string
+ description: "Run against alternate system reclass"
+ default: "${_param:jenkins_gerrit_url}/salt-formulas/{{name}}"
+ DEFAULT_GIT_REF:
+ type: string
+ default: master
diff --git a/jenkins/client/job/salt-models/generate.yml b/jenkins/client/job/salt-models/generate.yml
new file mode 100644
index 0000000..a943b3b
--- /dev/null
+++ b/jenkins/client/job/salt-models/generate.yml
@@ -0,0 +1,57 @@
+parameters:
+ jenkins:
+ client:
+ job_template:
+ generate-salt-model:
+ name: generate-salt-model-{{cookiecutter_template}}
+ param:
+ cookiecutter_template:
+ - separated-products
+ template:
+ type: workflow-scm
+ concurrent: true
+ display_name: "Generate reclass cluster {{cookiecutter_template}}"
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ credentials: "jenkins-mk"
+ script: generate-cookiecutter-products.groovy
+ param:
+ COOKIECUTTER_TEMPLATE_URL:
+ type: string
+ default: "git@github.com:Mirantis/mk2x-cookiecutter-reclass-model.git"
+ COOKIECUTTER_TEMPLATE_CREDENTIALS:
+ type: string
+ default: github-credentials
+ COOKIECUTTER_TEMPLATE_BRANCH:
+ type: string
+ default: master
+ COOKIECUTTER_TEMPLATE_PATH:
+ type: string
+ default: "./"
+ COOKIECUTTER_INSTALL_CICD:
+ type: boolean
+ default: false
+ COOKIECUTTER_INSTALL_CONTRAIL:
+ type: boolean
+ default: false
+ COOKIECUTTER_INSTALL_KUBERNETES:
+ type: boolean
+ default: false
+ COOKIECUTTER_INSTALL_OPENSTACK:
+ type: boolean
+ default: false
+ COOKIECUTTER_INSTALL_STACKLIGHT:
+ type: boolean
+ default: false
+ COOKIECUTTER_TEMPLATE_CONTEXT:
+ type: string
+ RECLASS_MODEL_URL:
+ type: string
+ default: "${_param:jenkins_gerrit_url}/salt-models/training.git"
+ RECLASS_MODEL_CREDENTIALS:
+ type: string
+ default: gerrit
+ RECLASS_MODEL_BRANCH:
+ type: string
+ default: master
diff --git a/jenkins/client/job/salt-models/init.yml b/jenkins/client/job/salt-models/init.yml
index 9a98130..15690ea 100644
--- a/jenkins/client/job/salt-models/init.yml
+++ b/jenkins/client/job/salt-models/init.yml
@@ -1,6 +1,7 @@
classes:
- system.jenkins.client.job.salt-models.git-mirrors
- system.jenkins.client.job.salt-models.tests
+ - system.jenkins.client.job.salt-models.generate
parameters:
_param:
salt_formulas_branches: master
diff --git a/jenkins/client/job/salt-models/tests.yml b/jenkins/client/job/salt-models/tests.yml
index e451daf..72feaa1 100644
--- a/jenkins/client/job/salt-models/tests.yml
+++ b/jenkins/client/job/salt-models/tests.yml
@@ -40,14 +40,13 @@
SALT_OPTS:
type: string
default: "--force-color"
- GIT_URL:
- type: string
- default: "${_param:jenkins_gerrit_url}/salt-models/{{name}}"
- RECLASS_SYSTEM_GIT_URL:
+ DEFAULT_GIT_URL:
type: string
description: "Run against alternate system reclass"
- RECLASS_SYSTEM_GIT_REF:
+ default: "${_param:jenkins_gerrit_url}/salt-models/{{name}}"
+ DEFAULT_GIT_REF:
type: string
+ default: master
CREDENTIALS_ID:
type: string
default: "gerrit"
diff --git a/jenkins/client/job/test_devops_portal.yml b/jenkins/client/job/test_devops_portal.yml
new file mode 100644
index 0000000..20f936b
--- /dev/null
+++ b/jenkins/client/job/test_devops_portal.yml
@@ -0,0 +1,43 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ test-devops-portal-unittests:
+ name: test-devops-portal-unittests
+ discard:
+ build:
+ keep_num: 10
+ artifact:
+ keep_num: 10
+ type: workflow-scm
+ concurrent: true
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ credentials: "gerrit"
+ script: test-nodejs-pipeline.groovy
+ trigger:
+ gerrit:
+ project:
+ "oss/devops-portal":
+ branches:
+ - master
+ event:
+ patchset:
+ - created:
+ excludeDrafts: false
+ excludeTrivialRebase: false
+ excludeNoCodeChange: false
+ comment:
+ - addedContains:
+ commentAddedCommentContains: '(recheck|reverify)'
+ param:
+ CREDENTIALS_ID:
+ type: string
+ default: "gerrit"
+ NODE_IMAGE:
+ type: string
+ default: "docker-sandbox.sandbox.mirantis.net/ikharin/ci/node-firefox:6.10"
+ COMMANDS:
+ type: string
+ default: "npm install\nnpm run test"
diff --git a/jenkins/client/security/ldap.yml b/jenkins/client/security/ldap.yml
index 8b7b97b..ba53570 100644
--- a/jenkins/client/security/ldap.yml
+++ b/jenkins/client/security/ldap.yml
@@ -1,7 +1,18 @@
parameters:
+ _param:
+ jenkins_security_ldap_manager_dn: ''
+ jenkins_security_ldap_manager_password: ''
+ jenkins_security_ldap_user_search_filter: 'uid={0}'
+ jenkins_security_ldap_user_search_base: ''
+ jenkins_security_ldap_group_search_base: ''
jenkins:
client:
security:
ldap:
server: ${_param:jenkins_security_ldap_server}
- root_dn: ${_param:jenkins_security_root_dn}
+ root_dn: ${_param:jenkins_security_ldap_root_dn}
+ manager_dn: ${_param:jenkins_security_ldap_manager_dn}
+ manager_password: ${_param:jenkins_security_ldap_manager_password}
+ user_search: ${_param:jenkins_security_ldap_user_search_filter}
+ user_search_base: ${_param:jenkins_security_ldap_user_search_base}
+ group_search_base: ${_param:jenkins_security_ldap_group_search_base}
diff --git a/jenkins/client/security/matrix.yml b/jenkins/client/security/matrix.yml
new file mode 100644
index 0000000..b08aefd
--- /dev/null
+++ b/jenkins/client/security/matrix.yml
@@ -0,0 +1,49 @@
+parameters:
+ _param:
+ # Full admin access
+ jenkins_security_matrix_admins:
+ - ${_param:jenkins_client_user}
+ - admins
+ # Read only access
+ jenkins_security_matrix_read: []
+ # Read + permissions to build jobs
+ jenkins_security_matrix_build: []
+ # Build permissions + create/delete, whatever.
+ jenkins_security_matrix_write:
+ - ${_param:jenkins_client_user}
+
+ jenkins:
+ client:
+ security:
+ matrix:
+ permissions:
+ Jenkins:
+ ADMINISTER: ${_param:jenkins_security_matrix_admins}
+ READ: ${_param:jenkins_security_matrix_read}
+ hudson:
+ model:
+ Item:
+ BUILD: ${_param:jenkins_security_matrix_build}
+ CANCEL: ${_param:jenkins_security_matrix_build}
+ CONFIGURE: ${_param:jenkins_security_matrix_write}
+ CREATE: ${_param:jenkins_security_matrix_write}
+ DELETE: ${_param:jenkins_security_matrix_write}
+ DISCOVER: ${_param:jenkins_security_matrix_build}
+ EXTENDED_READ: ${_param:jenkins_security_matrix_build}
+ WIPEOUT: ${_param:jenkins_security_matrix_write}
+ WORKSPACE: ${_param:jenkins_security_matrix_write}
+ READ: ${_param:jenkins_security_matrix_read}
+ Run:
+ DELETE: ${_param:jenkins_security_matrix_write}
+ ARTIFACTS: ${_param:jenkins_security_matrix_write}
+ UPDATE: ${_param:jenkins_security_matrix_write}
+ View:
+ READ: ${_param:jenkins_security_matrix_read}
+ com:
+ sonyericsson:
+ hudson:
+ plugins:
+ gerrit:
+ trigger:
+ PluginImpl:
+ RETRIGGER: ${_param:jenkins_security_matrix_build}
diff --git a/linux/system/repo/elasticsearch.yml b/linux/system/repo/elasticsearch.yml
index 6758f6d..60f6fd0 100644
--- a/linux/system/repo/elasticsearch.yml
+++ b/linux/system/repo/elasticsearch.yml
@@ -2,7 +2,7 @@
linux:
system:
repo:
- tcpcloud_elasticsearch:
- source: "deb [arch=amd64] http://apt.tcpcloud.eu/nightly/ xenial elastic"
+ elasticsearch:
+ source: "deb http://packages.elastic.co/elasticsearch/2.x/debian stable main"
architectures: amd64
- key_url: "http://apt.tcpcloud.eu/public.gpg"
\ No newline at end of file
+ key_url: "https://packages.elastic.co/GPG-KEY-elasticsearch"
\ No newline at end of file
diff --git a/linux/system/repo/glusterfs.yml b/linux/system/repo/glusterfs.yml
index da4cddf..3dfa9f9 100644
--- a/linux/system/repo/glusterfs.yml
+++ b/linux/system/repo/glusterfs.yml
@@ -3,7 +3,7 @@
system:
repo:
glusterfs-ppa:
- source: "deb http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu trusty main"
+ source: "deb http://ppa.launchpad.net/gluster/glusterfs-3.7/ubuntu ${_param:linux_system_codename} main"
architectures: amd64
key_id: 3FE869A9
key_server: keyserver.ubuntu.com
\ No newline at end of file
diff --git a/linux/system/repo/mcp/openstack.yml b/linux/system/repo/mcp/openstack.yml
index 372caf0..67c9cad 100644
--- a/linux/system/repo/mcp/openstack.yml
+++ b/linux/system/repo/mcp/openstack.yml
@@ -1,6 +1,7 @@
parameters:
_param:
mcp_repo_version: 1.0
+ apt_mk_version: stable
linux:
system:
repo:
@@ -24,3 +25,8 @@
source: "deb http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/${_param:linux_system_codename} ${_param:openstack_version}-holdback main"
architectures: amd64
key_url: "http://mirror.fuel-infra.org/mcp-repos/${_param:mcp_repo_version}/${_param:linux_system_codename}/archive-mcp${_param:mcp_repo_version}.key"
+ mk_openstack:
+ source: "deb [arch=amd64] http://apt-mk.mirantis.com/${_param:linux_system_codename}/ ${_param:apt_mk_version} ${_param:openstack_version}"
+ architectures: amd64
+ key_url: "http://apt-mk.mirantis.com/public.gpg"
+
diff --git a/linux/system/repo/mos9.yml b/linux/system/repo/mos9.yml
index 9bc7c8c..3a3abe1 100644
--- a/linux/system/repo/mos9.yml
+++ b/linux/system/repo/mos9.yml
@@ -6,15 +6,27 @@
source: "deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/ mos9.0 main restricted"
architectures: amd64
key_url: "http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/archive-mos9.0.key"
+# - pin: 'release a=mos9.0'
+# priority: 1100
+# package: '*'
mirantis_openstack_hotfix:
source: "deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/ mos9.0-hotfix main restricted"
architectures: amd64
key_url: "http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/archive-mos9.0.key"
+# - pin: 'release a=mos9.0-hotfix'
+# priority: 1100
+# package: '*'
mirantis_openstack_security:
source: "deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/ mos9.0-security main restricted"
architectures: amd64
key_url: "http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/archive-mos9.0.key"
+# - pin: 'release a=mos9.0-security'
+# priority: 1100
+# package: '*'
mirantis_openstack_updates:
source: "deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/ mos9.0-updates main restricted"
architectures: amd64
key_url: "http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/archive-mos9.0.key"
+# - pin: 'release a=mos9.0-updates'
+# priority: 1100
+# package: '*'
diff --git a/linux/system/repo_local/contrail.yml b/linux/system/repo_local/contrail.yml
index c78e68c..902c4d5 100644
--- a/linux/system/repo_local/contrail.yml
+++ b/linux/system/repo_local/contrail.yml
@@ -8,6 +8,6 @@
refresh_db: ${_param:linux_repo_refresh_db}
source: "deb [arch=amd64] http://${_param:local_repo_url}/contrail trusty main"
pin:
- - pin: 'release l=Local Contrail APT repository'
+ - pin: 'release l=contrail ubuntu-trusty'
priority: ${_param:contrail_repo_pin_priority}
package: '*'
diff --git a/linux/system/repo_local/glusterfs.yml b/linux/system/repo_local/glusterfs.yml
new file mode 100644
index 0000000..c34a6f2
--- /dev/null
+++ b/linux/system/repo_local/glusterfs.yml
@@ -0,0 +1,11 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ linux:
+ system:
+ repo:
+ glusterfs:
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:apt_mk_version} main"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
\ No newline at end of file
diff --git a/linux/system/repo_local/maas.yml b/linux/system/repo_local/maas.yml
new file mode 100644
index 0000000..ca65a79
--- /dev/null
+++ b/linux/system/repo_local/maas.yml
@@ -0,0 +1,11 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ linux:
+ system:
+ repo:
+ maas:
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/${_param:linux_system_codename}/ ${_param:apt_mk_version} maas"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
\ No newline at end of file
diff --git a/linux/system/repo_local/mcp/contrail.yml b/linux/system/repo_local/mcp/contrail.yml
new file mode 100644
index 0000000..158fda5
--- /dev/null
+++ b/linux/system/repo_local/mcp/contrail.yml
@@ -0,0 +1,13 @@
+parameters:
+ _param:
+ linux_repo_contrail_component: oc311
+ contrail_repo_pin_priority: 200
+ apt_mk_version: stable
+ linux:
+ system:
+ repo:
+ mcp_opencontrail_${_param:linux_repo_contrail_component}:
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:apt_mk_version} ${_param:linux_repo_contrail_component}"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
diff --git a/linux/system/repo_local/mcp/extra.yml b/linux/system/repo_local/mcp/extra.yml
new file mode 100644
index 0000000..67d85a5
--- /dev/null
+++ b/linux/system/repo_local/mcp/extra.yml
@@ -0,0 +1,12 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ linux:
+ system:
+ repo:
+ mcp_extra:
+ default: true
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:apt_mk_version} extra"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
\ No newline at end of file
diff --git a/linux/system/repo_local/mcp/openstack.yml b/linux/system/repo_local/mcp/openstack.yml
new file mode 100644
index 0000000..29329d1
--- /dev/null
+++ b/linux/system/repo_local/mcp/openstack.yml
@@ -0,0 +1,45 @@
+parameters:
+ linux:
+ system:
+ repo:
+ mirantis_openstack:
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:openstack_version} main"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
+ pin:
+ - pin: 'release a=${_param:openstack_version}'
+ priority: 1100
+ package: '*'
+ mirantis_openstack_hotfix:
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:openstack_version}-hotfix main"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
+ pin:
+ - pin: 'release a=m${_param:openstack_version}-hotfix'
+ priority: 1100
+ package: '*'
+ mirantis_openstack_security:
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:openstack_version}-security main"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
+ pin:
+ - pin: 'release a=${_param:openstack_version}-security'
+ priority: 1100
+ package: '*'
+ mirantis_openstack_updates:
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:openstack_version}-updates main"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
+ pin:
+ - pin: 'release a=${_param:openstack_version}-updates'
+ priority: 1100
+ package: '*'
+ mirantis_openstack_holdback:
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:openstack_version}-holdback main"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
+ pin:
+ - pin: 'release a=${_param:openstack_version}-holdback'
+ priority: 1100
+ package: '*'
diff --git a/linux/system/repo_local/mcp/salt.yml b/linux/system/repo_local/mcp/salt.yml
new file mode 100644
index 0000000..3abbf92
--- /dev/null
+++ b/linux/system/repo_local/mcp/salt.yml
@@ -0,0 +1,11 @@
+parameters:
+ _param:
+ apt_mk_version: stable
+ linux:
+ system:
+ repo:
+ mcp_salt:
+ refresh_db: ${_param:linux_repo_refresh_db}
+ source: "deb [arch=amd64] http://${_param:local_repo_url}/ubuntu-${_param:linux_system_codename}/ ${_param:apt_mk_version} salt"
+ architectures: amd64
+ key_url: "http://${_param:local_repo_url}/public.gpg"
\ No newline at end of file
diff --git a/linux/system/repo_local/mos8.yml b/linux/system/repo_local/mos8.yml
index 29c6636..ddefdb7 100644
--- a/linux/system/repo_local/mos8.yml
+++ b/linux/system/repo_local/mos8.yml
@@ -7,7 +7,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0'
+ - pin: 'release a=mos8.0'
priority: 1100
package: '*'
#mos8_openstack_hotfix:
@@ -15,7 +15,7 @@
# architectures: amd64
# key_url: "http://${_param:local_repo_url}/public.gpg"
# pin:
- # - pin: 'release s=mos8.0-hotfix'
+ # - pin: 'release a=mos8.0-hotfix'
# priority: 1100
# package: '*'
mos8_openstack_proposed:
@@ -23,7 +23,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-proposed'
+ - pin: 'release a=mos8.0-proposed'
priority: 1100
package: '*'
#mos8_openstack_security:
@@ -31,7 +31,7 @@
# architectures: amd64
# key_url: "http://${_param:local_repo_url}/public.gpg"
# pin:
- # - pin: 'release s=mos8.0-security'
+ # - pin: 'release a=mos8.0-security'
# priority: 1100
# package: '*'
mos8_openstack_updates:
@@ -39,7 +39,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-updates'
+ - pin: 'release a=mos8.0-updates'
priority: 1100
package: '*'
#mos8_murano:
@@ -48,6 +48,6 @@
# architectures: amd64
# key_url: "http://${_param:local_repo_url}/public.gpg"
# pin:
- # - pin: 'release s=mos8.0-proposed'
+ # - pin: 'release a=mos8.0-proposed'
# priority: 1100
- # package: '*'
\ No newline at end of file
+ # package: '*'
diff --git a/linux/system/repo_local/mos9.yml b/linux/system/repo_local/mos9.yml
index 6886185..5b6cdac 100644
--- a/linux/system/repo_local/mos9.yml
+++ b/linux/system/repo_local/mos9.yml
@@ -7,7 +7,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos9.0'
+ - pin: 'release a=mos9.0'
priority: 1100
package: '*'
mos9_openstack_hotfix:
@@ -15,7 +15,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos9.0-hotfix'
+ - pin: 'release a=mos9.0-hotfix'
priority: 1100
package: '*'
mos9_openstack_proposed:
@@ -23,7 +23,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos9.0-proposed'
+ - pin: 'release a=mos9.0-proposed'
priority: 1100
package: '*'
mos9_openstack_security:
@@ -31,7 +31,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos9.0-security'
+ - pin: 'release a=mos9.0-security'
priority: 1100
package: '*'
mos9_openstack_updates:
@@ -39,7 +39,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos9.0-updates'
+ - pin: 'release a=mos9.0-updates'
priority: 1100
package: '*'
mos9_murano:
@@ -48,6 +48,6 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-proposed'
+ - pin: 'release a=mos8.0-proposed'
priority: 1100
package: '*'
diff --git a/linux/system/repo_local/openstack.yml b/linux/system/repo_local/openstack.yml
index 4754d12..a873afb 100644
--- a/linux/system/repo_local/openstack.yml
+++ b/linux/system/repo_local/openstack.yml
@@ -10,7 +10,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0'
+ - pin: 'release a=mos8.0'
priority: 1000
package: '*'
mirantis_openstack_hotfix:
@@ -19,7 +19,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-hotfix'
+ - pin: 'release a=mos8.0-hotfix'
priority: 1000
package: '*'
mirantis_openstack_proposed:
@@ -28,7 +28,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-proposed'
+ - pin: 'release a=mos8.0-proposed'
priority: 1000
package: '*'
mirantis_openstack_security:
@@ -37,7 +37,7 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-security'
+ - pin: 'release a=mos8.0-security'
priority: 1000
package: '*'
mirantis_openstack_updates:
@@ -46,6 +46,6 @@
architectures: amd64
key_url: "http://${_param:local_repo_url}/public.gpg"
pin:
- - pin: 'release s=mos8.0-updates'
+ - pin: 'release a=mos8.0-updates'
priority: 1000
package: '*'
diff --git a/murano/server/cluster.yml b/murano/server/cluster.yml
new file mode 100644
index 0000000..d698e7c
--- /dev/null
+++ b/murano/server/cluster.yml
@@ -0,0 +1,46 @@
+classes:
+- service.murano.server.cluster
+- service.keepalived.cluster.single
+- system.haproxy.proxy.listen.openstack.murano
+- service.rabbitmq.server.single
+parameters:
+ murano:
+ server:
+ enabled: true
+ version: ${_param:murano_version}
+ bind:
+ address: ${_param:single_address}
+ port: 8082
+ network:
+ external: ${_param:murano_external_network}
+ database:
+ engine: mysql
+ host: ${_param:openstack_database_address}
+ port: 3306
+ name: murano
+ user: murano
+ password: ${_param:mysql_murano_password}
+ identity:
+ engine: keystone
+ host: ${_param:openstack_control_address}
+ port: 35357
+ tenant: service
+ user: murano
+ password: ${_param:keystone_murano_password}
+ message_queue:
+ engine: rabbitmq
+ port: 5672
+ members:
+ - host: ${_param:openstack_messaging_queue_node01_address}
+ - host: ${_param:openstack_messaging_queue_node02_address}
+ - host: ${_param:openstack_messaging_queue_node03_address}
+ user: openstack
+ password: ${_param:rabbitmq_openstack_password}
+ virtual_host: '/openstack'
+ murano_agent_queue:
+ engine: rabbitmq
+ host: ${_param:openstack_proxy_address}
+ port: 5673
+ user: openstack
+ password: ${_param:rabbitmq_murano_agent_password}
+ virtual_host: '/catalog'
diff --git a/murano/server/single.yml b/murano/server/single.yml
new file mode 100644
index 0000000..c3da9f8
--- /dev/null
+++ b/murano/server/single.yml
@@ -0,0 +1,41 @@
+classes:
+- service.murano.server.single
+- service.rabbitmq.server.single
+parameters:
+ murano:
+ server:
+ enabled: true
+ version: ${_param:murano_version}
+ bind:
+ address: ${_param:single_address}
+ port: 8082
+ network:
+ external: ${_param:murano_external_network}
+ database:
+ engine: mysql
+ host: ${_param:openstack_database_address}
+ port: 3306
+ name: murano
+ user: murano
+ password: ${_param:mysql_murano_password}
+ identity:
+ engine: keystone
+ host: ${_param:openstack_control_address}
+ port: 35357
+ tenant: service
+ user: murano
+ password: ${_param:keystone_murano_password}
+ message_queue:
+ engine: rabbitmq
+ port: 5672
+ host: ${_param:cluster_vip_address}
+ user: openstack
+ password: ${_param:rabbitmq_openstack_password}
+ virtual_host: '/openstack'
+ murano_agent_queue:
+ engine: rabbitmq
+ host: ${_param:openstack_proxy_address}
+ port: 5673
+ user: openstack
+ password: ${_param:rabbitmq_murano_agent_password}
+ virtual_host: '/catalog'
diff --git a/mysql/client/database/murano.yml b/mysql/client/database/murano.yml
new file mode 100644
index 0000000..561ea3d
--- /dev/null
+++ b/mysql/client/database/murano.yml
@@ -0,0 +1,17 @@
+parameters:
+ mysql:
+ client:
+ server:
+ database:
+ database:
+ murano:
+ encoding: utf8
+ users:
+ - name: murano
+ password: ${_param:mysql_murano_password}
+ host: '%'
+ rights: all
+ - name: murano
+ password: ${_param:mysql_murano_password}
+ host: ${_param:single_address}
+ rights: all
\ No newline at end of file
diff --git a/mysql/client/database/sahara.yml b/mysql/client/database/sahara.yml
new file mode 100644
index 0000000..86497d8
--- /dev/null
+++ b/mysql/client/database/sahara.yml
@@ -0,0 +1,17 @@
+parameters:
+ mysql:
+ client:
+ server:
+ database:
+ database:
+ sahara:
+ encoding: utf8
+ users:
+ - name: sahara
+ password: ${_param:mysql_sahara_password}
+ host: '%'
+ rights: all
+ - name: sahara
+ password: ${_param:mysql_sahara_password}
+ host: ${_param:single_address}
+ rights: all
diff --git a/nginx/server/proxy/grafana_web.yml b/nginx/server/proxy/grafana_web.yml
index a1c7c49..66fa46b 100644
--- a/nginx/server/proxy/grafana_web.yml
+++ b/nginx/server/proxy/grafana_web.yml
@@ -1,18 +1,2 @@
-parameters:
- nginx:
- server:
- enabled: true
- site:
- nginx_proxy_grafana:
- enabled: true
- type: nginx_proxy
- name: grafana
- proxy:
- host: ${_param:stacklight_monitor_address}
- port: 3000
- protocol: http
- host:
- name: ${_param:cluster_public_host}
- port: 8084
- protocol: https
- ssl: ${_param:nginx_proxy_ssl}
+classes:
+- system.nginx.server.proxy.stacklight.grafana
diff --git a/nginx/server/proxy/kibana_web.yml b/nginx/server/proxy/kibana_web.yml
index 1120c9c..0f3f41e 100644
--- a/nginx/server/proxy/kibana_web.yml
+++ b/nginx/server/proxy/kibana_web.yml
@@ -1,18 +1,2 @@
-parameters:
- nginx:
- server:
- enabled: true
- site:
- nginx_proxy_kibana:
- enabled: true
- type: nginx_proxy
- name: kibana
- proxy:
- host: ${_param:stacklight_monitor_address}
- port: 5601
- protocol: http
- host:
- name: ${_param:cluster_public_host}
- port: 5601
- protocol: https
- ssl: ${_param:nginx_proxy_ssl}
+classes:
+- system.nginx.server.proxy.stacklight.kibana
diff --git a/nginx/server/proxy/nagios_web.yml b/nginx/server/proxy/nagios_web.yml
index 8b57929..919c74a 100644
--- a/nginx/server/proxy/nagios_web.yml
+++ b/nginx/server/proxy/nagios_web.yml
@@ -1,18 +1,2 @@
-parameters:
- nginx:
- server:
- enabled: true
- site:
- nginx_proxy_nagios:
- enabled: true
- type: nginx_proxy
- name: nagios
- proxy:
- host: ${_param:stacklight_monitor_address}
- port: 80
- protocol: http
- host:
- name: ${_param:cluster_public_host}
- port: 8001
- protocol: https
- ssl: ${_param:nginx_proxy_ssl}
+classes:
+- system.nginx.server.proxy.stacklight.nagios
diff --git a/nginx/server/proxy/openstack/murano.yml b/nginx/server/proxy/openstack/murano.yml
new file mode 100644
index 0000000..a93b07e
--- /dev/null
+++ b/nginx/server/proxy/openstack/murano.yml
@@ -0,0 +1,19 @@
+ parameters:
+ _param:
+ nginx_proxy_openstack_api_host: ${_param:cluster_public_host}
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_murano:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_murano
+ proxy:
+ host: ${_param:nginx_proxy_openstack_api_proxy_host}
+ port: 8082
+ protocol: http
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8082
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nginx/server/proxy/openstack/sahara.yml b/nginx/server/proxy/openstack/sahara.yml
new file mode 100644
index 0000000..17ae236
--- /dev/null
+++ b/nginx/server/proxy/openstack/sahara.yml
@@ -0,0 +1,17 @@
+parameters:
+ nginx:
+ server:
+ enabled: true
+ site:
+ nginx_proxy_openstack_api_sahara:
+ enabled: true
+ type: nginx_proxy
+ name: openstack_api_sahara
+ proxy:
+ host: ${_param:nginx_proxy_openstack_api_proxy_host}
+ port: 8386
+ protocol: http
+ host:
+ name: ${_param:nginx_proxy_openstack_api_host}
+ port: 8386
+ ssl: ${_param:nginx_proxy_ssl}
diff --git a/nova/compute/cluster.yml b/nova/compute/cluster.yml
index 7cb866b..f7b2ee5 100644
--- a/nova/compute/cluster.yml
+++ b/nova/compute/cluster.yml
@@ -2,7 +2,7 @@
- service.nova.compute.kvm
parameters:
_param:
- nova_vncproxy_url: http://${_param:cluster_vip_address}:6080
+ nova_vncproxy_url: https://${_param:cluster_public_host}:6080
nova_compute_virtualization: kvm
nova_compute_avail_zone:
nova_compute_ssh_public: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCltIn93BcTMzNK/n2eBze6PyTkmIgdDkeXNR9X4DqE48Va80ojv2pq8xuaBxiNITJzyl+4p4UvTTXo+HmuX8qbHvqgMGXvuPUCpndEfb2r67f6vpMqPwMgBrUg2ZKgN4OsSDHU+H0dia0cEaTjz5pvbUy9lIsSyhrqOUVF9reJq+boAvVEedm8fUqiZuiejAw2D27+rRtdEPgsKMnh3626YEsr963q4rjU/JssV/iKMNu7mk2a+koOrJ+aHvcVU8zJjfA0YghoeVT/I3GLU/MB/4tD/RyR8GM+UYbI4sgAC7ZOCdQyHdJgnEzx3SJIwcS65U0T2XYvn2qXHXqJ9iGZ root@mirantis.com
diff --git a/nova/compute/single.yml b/nova/compute/single.yml
index 130f2e4..f50b937 100644
--- a/nova/compute/single.yml
+++ b/nova/compute/single.yml
@@ -4,6 +4,7 @@
- service.nova.compute.kvm
parameters:
_param:
+ nova_vncproxy_url: https://${_param:cluster_public_host}:6080
nova_compute_ssh_public: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCltIn93BcTMzNK/n2eBze6PyTkmIgdDkeXNR9X4DqE48Va80ojv2pq8xuaBxiNITJzyl+4p4UvTTXo+HmuX8qbHvqgMGXvuPUCpndEfb2r67f6vpMqPwMgBrUg2ZKgN4OsSDHU+H0dia0cEaTjz5pvbUy9lIsSyhrqOUVF9reJq+boAvVEedm8fUqiZuiejAw2D27+rRtdEPgsKMnh3626YEsr963q4rjU/JssV/iKMNu7mk2a+koOrJ+aHvcVU8zJjfA0YghoeVT/I3GLU/MB/4tD/RyR8GM+UYbI4sgAC7ZOCdQyHdJgnEzx3SJIwcS65U0T2XYvn2qXHXqJ9iGZ root@mirantis.com
nova_compute_avail_zone:
nova_compute_ssh_private: |
@@ -46,7 +47,7 @@
enabled: true
virtualization: kvm
availability_zone: ${_param:nova_compute_avail_zone}
- vncproxy_url: http://${_param:control_address}:6080
+ vncproxy_url: ${_param:nova_vncproxy_url}
bind:
vnc_address: ${_param:control_address}
vnc_port: 6080
diff --git a/nova/compute/storage/ceph.yml b/nova/compute/storage/ceph.yml
index c271952..7cb24cb 100644
--- a/nova/compute/storage/ceph.yml
+++ b/nova/compute/storage/ceph.yml
@@ -6,5 +6,5 @@
ephemeral: yes
rbd_pool: ${_param:nova_storage_pool}
secret_uuid: ${_param:nova_storage_secret_uuid}
- client_cinder_key: ${_param:nova_storage_secret_uuid}
+ client_cinder_key: ${_param:nova_storage_client_key}
rbd_user: ${_param:nova_storage_user}
\ No newline at end of file
diff --git a/opencontrail/control/cluster.yml b/opencontrail/control/cluster.yml
index a7015d5..4ffe081 100644
--- a/opencontrail/control/cluster.yml
+++ b/opencontrail/control/cluster.yml
@@ -3,6 +3,7 @@
- service.keepalived.cluster.single
- service.opencontrail.control.cluster
- system.haproxy.proxy.listen.opencontrail.control
+- system.haproxy.proxy.listen.opencontrail.analytics
parameters:
# Temprorary fix for MOS9 packages to pin old version of kafka
linux:
diff --git a/openldap/client/groups/admins.yml b/openldap/client/groups/admins.yml
new file mode 100644
index 0000000..36eac5f
--- /dev/null
+++ b/openldap/client/groups/admins.yml
@@ -0,0 +1,20 @@
+classes:
+ - system.openldap.client.groups
+parameters:
+ openldap:
+ client:
+ entry:
+ groups:
+ entry:
+ admins:
+ attr:
+ description: Administrators
+ gidNumber: 20001
+ memberUid:
+ - admin
+ classes:
+ - posixGroup
+ - top
+ # TODO: Cannot set memberOf attributes in our LDAP yet
+ # member:
+ # - cn=admin,ou=people
diff --git a/openldap/client/groups/init.yml b/openldap/client/groups/init.yml
new file mode 100644
index 0000000..a419001
--- /dev/null
+++ b/openldap/client/groups/init.yml
@@ -0,0 +1,9 @@
+parameters:
+ openldap:
+ client:
+ entry:
+ groups:
+ type: ou
+ classes:
+ - top
+ - organizationalUnit
diff --git a/openldap/client/init.yml b/openldap/client/init.yml
new file mode 100644
index 0000000..25812f6
--- /dev/null
+++ b/openldap/client/init.yml
@@ -0,0 +1,15 @@
+classes:
+ - service.openldap.client
+parameters:
+ _param:
+ openldap_server: ${_param:cluster_vip_address}
+ openldap_tls: false
+ openldap:
+ client:
+ server:
+ basedn: ${_param:openldap_dn}
+ host: ${_param:openldap_server}
+ tls: ${_param:openldap_tls}
+ auth:
+ user: cn=admin,${_param:openldap_dn}
+ password: ${_param:openldap_admin_password}
diff --git a/openldap/client/people/admin.yml b/openldap/client/people/admin.yml
new file mode 100644
index 0000000..fa1a2c8
--- /dev/null
+++ b/openldap/client/people/admin.yml
@@ -0,0 +1,26 @@
+classes:
+ - system.openldap.client.people
+ - system.openldap.client.groups.admins
+parameters:
+ openldap:
+ client:
+ entry:
+ people:
+ entry:
+ admin:
+ attr:
+ uid: admin
+ userPassword: ${_param:openldap_admin_password}
+ uidNumber: 20001
+ gidNumber: ${openldap:client:entry:groups:entry:admins:attr:gidNumber}
+ gecos: Administrator
+ givenName: Charlie
+ sn: Root
+ homeDirectory: /home/admin
+ loginShell: /bin/bash
+ mail: ${_param:admin_email}
+ classes:
+ - posixAccount
+ - inetOrgPerson
+ - top
+ - shadowAccount
diff --git a/openldap/client/people/init.yml b/openldap/client/people/init.yml
new file mode 100644
index 0000000..a4ae94d
--- /dev/null
+++ b/openldap/client/people/init.yml
@@ -0,0 +1,9 @@
+parameters:
+ openldap:
+ client:
+ entry:
+ people:
+ type: ou
+ classes:
+ - top
+ - organizationalUnit
diff --git a/openssh/server/team/tcpcloud.yml b/openssh/server/team/tcpcloud.yml
index 8b7073d..bdf29be 100644
--- a/openssh/server/team/tcpcloud.yml
+++ b/openssh/server/team/tcpcloud.yml
@@ -141,6 +141,12 @@
sudo: true
full_name: Sergey Matov
home: /home/smatov
+ dcech:
+ enabled: true
+ name: dcech
+ sudo: true
+ full_name: Daniel Cech
+ home: /home/dcech
group:
libvirtd:
enabled: true
@@ -259,6 +265,11 @@
public_keys:
- ${public_keys:smatov}
user: ${linux:system:user:smatov}
+ dcech:
+ enabled: true
+ public_keys:
+ - ${public_keys:dcech}
+ user: ${linux:system:user:dcech}
public_keys:
askotnicky:
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDO6EnDYaGdF/Nn6lntxDNnKanCsheZRdh8kA/6ImyeRSjT2cgepm1Fsgv7wXBYoy0OxhB5wgCp5Az/Pj4oLkG3g+G05sUPUxxGCGRiwjcnyQ/FTz4TzHglAVqgbdgWoQYf9Hg6EKZovvPcH3STbEwcl+MhLqvxz0wm5+StE+wvp6I9dEfRV+2/e1uepauOTZ1+Ui1DMNXiMefTlbiIBHzUk7RiwJWgqzQXBndgunmbJWSed8zC0Ug97waDOFIX/oKZmAmsv0NLJ2e/kC3oUTuziGT74F9sh7Pqiw/9HZxvP45hJwEvytfUjfuiikIBbmYdF7Je93czaG/qjXGN8YvP== a.skotnicky@tcpisek.cz
@@ -304,3 +315,5 @@
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCy6mFrr4oNdLjT5wBZj1+KXNpdawnGGWEevDBQ2SWFjxBFujkWVLiW1kxLTpLVSnuoE5FB7doRIsT/CDe9IU5OhsJ+z6TT56R/pfVKrVnSB1rgrwqdezjgmYEM6kTWiH2GKJE0yiQEPgagK8Rz5Zl420JkhbFWnL7EGPhxNtmYMGDTZwUTzP0KYmytyeH15OqNIiBGTrp1t2bTrVB8HRnUp0uDpfoWAUnsijVGNe1j1bNKtDO0Z9LAWx3eUyxIk4cdpX/EeWJg8jNrSMxtAZZ7Hhm/WInNSNqcHcZ1rEYCAjENxo1WVOuA/aqUqc5xaAipWNon4Rk0e0IUAaFOfLvN2lIuilUZ5XKHDe7a2crkGPnotheT9FgaEHOeFtpuhSaygeZHTMR197jeocgjWIkPqHjVAGSQqQf0TAdNuN73QPTigbbfHWWc1d8KlCM5BqJUXMHPG6BasE1sI/4ykYbxN/DAEvVJ4+rdIlqSdedd73ZAseVQjDtpzD8diScGrpdOhZnTm43q89F8dIFv7tt1TjIwvfcDQNSBjyyKcYpj+NTyW2Zk7qWDVz+lzH0ToYk/rOKkGlrsRy7OwOnmyKR8IcIOL7Bowj895ThCX8tBrdLu/m55ojBOcZiCpawCm7K55ri1Ar6i8cO+bHDh11kKRa/utRRSQTpsW0sbCsamzQ== lubos@lubos-ThinkPad-X1
smatov:
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDgBHACRnY/VEEDFE63xDp4bx0zgWY4h1aB9/c2f962HtTNaQ6R/Cz6DLISaB5th8qzrzbvjn9WcpHdxyTm9BqkLLzB4qe7fnebPtn6zGczZ9Btrjk9R8Fuw6DZhSucSk572r/gVIY0O3Z1LajHkNr0ZTQS8AY3fgn8rXMD2vMOruOzyTOmfWKmEw7e+JYUqoFXHhE3Dd7hGQ99d6kH2N3zXfM2rzfjshGAq0kOi5dN4Hx6QIXZapt0t9TzpYTkK5SaVzuEVyVaKRLYSa/rdPjHkKqDFa99RcQ+OI93uvT9CFNWDFIC/TDJ2M+7PQbm836EICXXVWKjQ2NUnQJeOU5v smatov@ubuntu
+ dcech:
+ key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC8A26XMLUnXkxv4e/vByD4W4PQ0ZdgGZz5Tg6G/fQKuSa+9zRucG6IlOchJPikwrDyTrojHTGAClHPuyr2bPIRrjFy4oUTZNdjiDptV99Zv/kHRStYzPyZ4KabnFLJVKNtyKKagk6Z3wpzEjFjRHWJK7A5bIzHfd7Amx/frdLKRo9YZjGbLnZRw6mWGqZYyp2/5a/5rKqH1BhMQggDGkAwFGWYQByZzk2F81nDnkt3CY3bi24gX90w4mgFjP8B0m0QCEhcGqpfOKsQTnIyBCtztEHBiUplzBN+RHS4dDOIEs9SWrXLiMFakWu1Vr6bUa7v5xGaNN8XAWjd3xdsy4hvJjJHU5HPaMY9MGH+N6W0UUZxIF0MuxDNP03MDM1uA5mRWTdwffARaDySYaEUrUEYJmzFAtk700Jv/Aav7QixLoIeKU9SAKYvVb7XNlMWgiswQdRPoiMpXPXPw+bMhjpimHJa4n0KFGAUO/cRD1dpJKybqxDe2ip57JzpFkm5PxuNht5qmEreKcS5dWQqm0fDE9wv8cCUMnWQv36f0IDeVpftmeDREatqXSeUjES7NFQOgIQW5C5Pl+8ZHTXw46c/uh89gUILJT2tS/mOXaU4mELox1Qv8vc/laoGAec+TGD0flf75LfiuLOK6JOYX0QVW13ko1wc3CyJzHOi1sFEAw== daniel.cech@tcpcloud.eu
\ No newline at end of file
diff --git a/prometheus/server/target/dns.yml b/prometheus/server/target/dns.yml
new file mode 100644
index 0000000..1dd3afb
--- /dev/null
+++ b/prometheus/server/target/dns.yml
@@ -0,0 +1,14 @@
+parameters:
+ server:
+ target:
+ dns:
+ - name: 'pushgateway'
+ domain:
+ - 'tasks.prometheus_pushgateway'
+ type: A
+ port: 9091
+ - name: 'prometheus'
+ domain:
+ - 'tasks.prometheus_server'
+ type: A
+ port: 9090
diff --git a/prometheus/server/target/etcd.yml b/prometheus/server/target/etcd.yml
index e343bda..41204b5 100644
--- a/prometheus/server/target/etcd.yml
+++ b/prometheus/server/target/etcd.yml
@@ -1,6 +1,10 @@
-classes:
-- service.etcd.server.cluster
parameters:
server:
target:
- etcd: ${etcd:server:members}
+ etcd:
+ - host: ${_param:cluster_node01_address}
+ port: ${_param:cluster_node01_port}
+ - host: ${_param:cluster_node02_address}
+ port: ${_param:cluster_node02_port}
+ - host: ${_param:cluster_node03_address}
+ port: ${_param:cluster_node03_port}
diff --git a/prometheus/server/target/kubernetes.yml b/prometheus/server/target/kubernetes.yml
index 293895b..d77ab3f 100644
--- a/prometheus/server/target/kubernetes.yml
+++ b/prometheus/server/target/kubernetes.yml
@@ -1,10 +1,8 @@
-classes:
-- service.kubernetes.master.cluster
parameters:
server:
target:
kubernetes:
- api_ip: ${kubernetes:master:apiserver:address}
+ api_ip: ${_param:kubernetes_control_address}
ssl_dir: /opt/prometheus/config
cert_name: kubelet-client.crt
key_name: kubelet-client.key
diff --git a/rabbitmq/server/vhost/catalog.yml b/rabbitmq/server/vhost/catalog.yml
new file mode 100644
index 0000000..23cb0f2
--- /dev/null
+++ b/rabbitmq/server/vhost/catalog.yml
@@ -0,0 +1,20 @@
+parameters:
+ rabbitmq:
+ server:
+ host:
+ '/murano':
+ enabled: true
+ user: openstack
+ password: ${_param:rabbitmq_murano_agent_password}
+ policies:
+ - name: HA
+ pattern: '^(?!amq\.).*'
+ definition: '{"ha-mode": "all", "message-ttl": 120000}'
+ admin:
+ name: admin
+ password: zeQuooQu47eed8esahpie2Lai8En9ohp
+ bind:
+ address: ${_param:single_address}
+ management:
+ bind:
+ address: ${_param:single_address}
diff --git a/reclass/storage/system/cicd_control_cluster.yml b/reclass/storage/system/cicd_control_cluster.yml
index 35a8d15..547ba61 100644
--- a/reclass/storage/system/cicd_control_cluster.yml
+++ b/reclass/storage/system/cicd_control_cluster.yml
@@ -10,7 +10,7 @@
name: ${_param:cicd_control_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- - cluster.${_param:cluster_name}.cicd.master
+ - cluster.${_param:cluster_name}.cicd.control.leader
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: xenial
@@ -21,7 +21,7 @@
name: ${_param:cicd_control_node02_hostname}
domain: ${_param:cluster_domain}
classes:
- - cluster.${_param:cluster_name}.cicd.slave
+ - cluster.${_param:cluster_name}.cicd.control.manager
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: xenial
@@ -32,7 +32,7 @@
name: ${_param:cicd_control_node03_hostname}
domain: ${_param:cluster_domain}
classes:
- - cluster.${_param:cluster_name}.cicd.slave
+ - cluster.${_param:cluster_name}.cicd.control.manager
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: xenial
diff --git a/reclass/storage/system/openstack_catalog_cluster.yml b/reclass/storage/system/openstack_catalog_cluster.yml
new file mode 100644
index 0000000..332e5d6
--- /dev/null
+++ b/reclass/storage/system/openstack_catalog_cluster.yml
@@ -0,0 +1,27 @@
+parameters:
+ _param:
+ openstack_catalog_node01_hostname: asc01
+ openstack_catalog_node02_hostname: asc02
+ reclass:
+ storage:
+ node:
+ openstack_catalog_node01:
+ name: ${_param:openstack_catalog_node01_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.catalog
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_catalog_node01_address}
+ keepalived_vip_priority: 102
+ openstack_catalog_node02:
+ name: ${_param:openstack_catalog_node02_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.catalog
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_catalog_node02_address}
+ keepalived_vip_priority: 101
diff --git a/reclass/storage/system/openstack_catalog_single.yml b/reclass/storage/system/openstack_catalog_single.yml
new file mode 100644
index 0000000..b48ab27
--- /dev/null
+++ b/reclass/storage/system/openstack_catalog_single.yml
@@ -0,0 +1,15 @@
+parameters:
+ _param:
+ openstack_catalog_node01_hostname: asc01
+ reclass:
+ storage:
+ node:
+ openstack_catalog_node01:
+ name: ${_param:openstack_catalog_node01_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.catalog
+ params:
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:openstack_catalog_node01_address}
diff --git a/reclass/storage/system/physical_control_cluster.yml b/reclass/storage/system/physical_control_cluster.yml
index 12b83c9..4622e09 100644
--- a/reclass/storage/system/physical_control_cluster.yml
+++ b/reclass/storage/system/physical_control_cluster.yml
@@ -1,57 +1,57 @@
parameters:
_param:
- infra_compute_node01_hostname: kvm01
- infra_compute_node02_hostname: kvm02
- infra_compute_node03_hostname: kvm03
+ infra_kvm_node01_hostname: kvm01
+ infra_kvm_node02_hostname: kvm02
+ infra_kvm_node03_hostname: kvm03
- infra_compute_node01_deploy_address: ${_param:infra_compute_node01_address}
- infra_compute_node02_deploy_address: ${_param:infra_compute_node02_address}
- infra_compute_node03_deploy_address: ${_param:infra_compute_node03_address}
+ infra_kvm_node01_deploy_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node02_deploy_address: ${_param:infra_kvm_node02_address}
+ infra_kvm_node03_deploy_address: ${_param:infra_kvm_node03_address}
- infra_compute_node01_storage_address: ${_param:infra_compute_node01_address}
- infra_compute_node02_storage_address: ${_param:infra_compute_node02_address}
- infra_compute_node03_storage_address: ${_param:infra_compute_node03_address}
+ infra_kvm_node01_storage_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node02_storage_address: ${_param:infra_kvm_node02_address}
+ infra_kvm_node03_storage_address: ${_param:infra_kvm_node03_address}
- infra_compute_node01_public_address: ${_param:infra_compute_node01_address}
- infra_compute_node02_public_address: ${_param:infra_compute_node02_address}
- infra_compute_node03_public_address: ${_param:infra_compute_node03_address}
+ infra_kvm_node01_public_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node02_public_address: ${_param:infra_kvm_node02_address}
+ infra_kvm_node03_public_address: ${_param:infra_kvm_node03_address}
reclass:
storage:
node:
- infra_compute_node01:
- name: ${_param:infra_compute_node01_hostname}
+ infra_kvm_node01:
+ name: ${_param:infra_kvm_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node01_address}
- deploy_address: ${_param:infra_compute_node01_deploy_address}
- public_address: ${_param:infra_compute_node01_public_address}
- storage_address: ${_param:infra_compute_node01_storage_address}
- infra_compute_node02:
- name: ${_param:infra_compute_node02_hostname}
+ single_address: ${_param:infra_kvm_node01_address}
+ deploy_address: ${_param:infra_kvm_node01_deploy_address}
+ public_address: ${_param:infra_kvm_node01_public_address}
+ storage_address: ${_param:infra_kvm_node01_storage_address}
+ infra_kvm_node02:
+ name: ${_param:infra_kvm_node02_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node02_address}
- deploy_address: ${_param:infra_compute_node02_deploy_address}
- public_address: ${_param:infra_compute_node02_public_address}
- storage_address: ${_param:infra_compute_node02_storage_address}
- infra_compute_node03:
- name: ${_param:infra_compute_node03_hostname}
+ single_address: ${_param:infra_kvm_node02_address}
+ deploy_address: ${_param:infra_kvm_node02_deploy_address}
+ public_address: ${_param:infra_kvm_node02_public_address}
+ storage_address: ${_param:infra_kvm_node02_storage_address}
+ infra_kvm_node03:
+ name: ${_param:infra_kvm_node03_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node03_address}
- deploy_address: ${_param:infra_compute_node03_deploy_address}
- public_address: ${_param:infra_compute_node03_public_address}
- storage_address: ${_param:infra_compute_node03_storage_address}
+ single_address: ${_param:infra_kvm_node03_address}
+ deploy_address: ${_param:infra_kvm_node03_deploy_address}
+ public_address: ${_param:infra_kvm_node03_public_address}
+ storage_address: ${_param:infra_kvm_node03_storage_address}
diff --git a/reclass/storage/system/physical_control_full.yml b/reclass/storage/system/physical_control_full.yml
index 7591113..0f510a4 100644
--- a/reclass/storage/system/physical_control_full.yml
+++ b/reclass/storage/system/physical_control_full.yml
@@ -1,153 +1,153 @@
parameters:
_param:
- infra_compute_node01_hostname: kvm01
- infra_compute_node02_hostname: kvm02
- infra_compute_node03_hostname: kvm03
- infra_compute_node04_hostname: kvm04
- infra_compute_node05_hostname: kvm05
- infra_compute_node06_hostname: kvm06
- infra_compute_node07_hostname: kvm07
- infra_compute_node08_hostname: kvm08
- infra_compute_node09_hostname: kvm09
+ infra_kvm_node01_hostname: kvm01
+ infra_kvm_node02_hostname: kvm02
+ infra_kvm_node03_hostname: kvm03
+ infra_kvm_node04_hostname: kvm04
+ infra_kvm_node05_hostname: kvm05
+ infra_kvm_node06_hostname: kvm06
+ infra_kvm_node07_hostname: kvm07
+ infra_kvm_node08_hostname: kvm08
+ infra_kvm_node09_hostname: kvm09
- infra_compute_node01_deploy_address: ${_param:infra_compute_node01_address}
- infra_compute_node02_deploy_address: ${_param:infra_compute_node02_address}
- infra_compute_node03_deploy_address: ${_param:infra_compute_node03_address}
- infra_compute_node04_deploy_address: ${_param:infra_compute_node04_address}
- infra_compute_node05_deploy_address: ${_param:infra_compute_node05_address}
- infra_compute_node06_deploy_address: ${_param:infra_compute_node06_address}
- infra_compute_node07_deploy_address: ${_param:infra_compute_node07_address}
- infra_compute_node08_deploy_address: ${_param:infra_compute_node08_address}
- infra_compute_node09_deploy_address: ${_param:infra_compute_node09_address}
+ infra_kvm_node01_deploy_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node02_deploy_address: ${_param:infra_kvm_node02_address}
+ infra_kvm_node03_deploy_address: ${_param:infra_kvm_node03_address}
+ infra_kvm_node04_deploy_address: ${_param:infra_kvm_node04_address}
+ infra_kvm_node05_deploy_address: ${_param:infra_kvm_node05_address}
+ infra_kvm_node06_deploy_address: ${_param:infra_kvm_node06_address}
+ infra_kvm_node07_deploy_address: ${_param:infra_kvm_node07_address}
+ infra_kvm_node08_deploy_address: ${_param:infra_kvm_node08_address}
+ infra_kvm_node09_deploy_address: ${_param:infra_kvm_node09_address}
- infra_compute_node01_storage_address: ${_param:infra_compute_node01_address}
- infra_compute_node02_storage_address: ${_param:infra_compute_node02_address}
- infra_compute_node03_storage_address: ${_param:infra_compute_node03_address}
- infra_compute_node04_storage_address: ${_param:infra_compute_node04_address}
- infra_compute_node05_storage_address: ${_param:infra_compute_node05_address}
- infra_compute_node06_storage_address: ${_param:infra_compute_node06_address}
- infra_compute_node07_storage_address: ${_param:infra_compute_node07_address}
- infra_compute_node08_storage_address: ${_param:infra_compute_node08_address}
- infra_compute_node09_storage_address: ${_param:infra_compute_node09_address}
+ infra_kvm_node01_storage_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node02_storage_address: ${_param:infra_kvm_node02_address}
+ infra_kvm_node03_storage_address: ${_param:infra_kvm_node03_address}
+ infra_kvm_node04_storage_address: ${_param:infra_kvm_node04_address}
+ infra_kvm_node05_storage_address: ${_param:infra_kvm_node05_address}
+ infra_kvm_node06_storage_address: ${_param:infra_kvm_node06_address}
+ infra_kvm_node07_storage_address: ${_param:infra_kvm_node07_address}
+ infra_kvm_node08_storage_address: ${_param:infra_kvm_node08_address}
+ infra_kvm_node09_storage_address: ${_param:infra_kvm_node09_address}
- infra_compute_node01_public_address: ${_param:infra_compute_node01_address}
- infra_compute_node02_public_address: ${_param:infra_compute_node02_address}
- infra_compute_node03_public_address: ${_param:infra_compute_node03_address}
- infra_compute_node04_public_address: ${_param:infra_compute_node04_address}
- infra_compute_node05_public_address: ${_param:infra_compute_node05_address}
- infra_compute_node06_public_address: ${_param:infra_compute_node06_address}
- infra_compute_node07_public_address: ${_param:infra_compute_node07_address}
- infra_compute_node08_public_address: ${_param:infra_compute_node08_address}
- infra_compute_node09_public_address: ${_param:infra_compute_node09_address}
+ infra_kvm_node01_public_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node02_public_address: ${_param:infra_kvm_node02_address}
+ infra_kvm_node03_public_address: ${_param:infra_kvm_node03_address}
+ infra_kvm_node04_public_address: ${_param:infra_kvm_node04_address}
+ infra_kvm_node05_public_address: ${_param:infra_kvm_node05_address}
+ infra_kvm_node06_public_address: ${_param:infra_kvm_node06_address}
+ infra_kvm_node07_public_address: ${_param:infra_kvm_node07_address}
+ infra_kvm_node08_public_address: ${_param:infra_kvm_node08_address}
+ infra_kvm_node09_public_address: ${_param:infra_kvm_node09_address}
reclass:
storage:
node:
- infra_compute_node01:
- name: ${_param:infra_compute_node01_hostname}
+ infra_kvm_node01:
+ name: ${_param:infra_kvm_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node01_address}
- deploy_address: ${_param:infra_compute_node01_deploy_address}
- public_address: ${_param:infra_compute_node01_public_address}
- storage_address: ${_param:infra_compute_node01_storage_address}
- infra_compute_node02:
- name: ${_param:infra_compute_node02_hostname}
+ single_address: ${_param:infra_kvm_node01_address}
+ deploy_address: ${_param:infra_kvm_node01_deploy_address}
+ public_address: ${_param:infra_kvm_node01_public_address}
+ storage_address: ${_param:infra_kvm_node01_storage_address}
+ infra_kvm_node02:
+ name: ${_param:infra_kvm_node02_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node02_address}
- deploy_address: ${_param:infra_compute_node02_deploy_address}
- public_address: ${_param:infra_compute_node02_public_address}
- storage_address: ${_param:infra_compute_node02_storage_address}
- infra_compute_node03:
- name: ${_param:infra_compute_node03_hostname}
+ single_address: ${_param:infra_kvm_node02_address}
+ deploy_address: ${_param:infra_kvm_node02_deploy_address}
+ public_address: ${_param:infra_kvm_node02_public_address}
+ storage_address: ${_param:infra_kvm_node02_storage_address}
+ infra_kvm_node03:
+ name: ${_param:infra_kvm_node03_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node03_address}
- deploy_address: ${_param:infra_compute_node03_deploy_address}
- public_address: ${_param:infra_compute_node03_public_address}
- storage_address: ${_param:infra_compute_node03_storage_address}
- infra_compute_node04:
- name: ${_param:infra_compute_node04_hostname}
+ single_address: ${_param:infra_kvm_node03_address}
+ deploy_address: ${_param:infra_kvm_node03_deploy_address}
+ public_address: ${_param:infra_kvm_node03_public_address}
+ storage_address: ${_param:infra_kvm_node03_storage_address}
+ infra_kvm_node04:
+ name: ${_param:infra_kvm_node04_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node04_address}
- deploy_address: ${_param:infra_compute_node04_deploy_address}
- public_address: ${_param:infra_compute_node04_public_address}
- storage_address: ${_param:infra_compute_node04_storage_address}
- infra_compute_node05:
- name: ${_param:infra_compute_node05_hostname}
+ single_address: ${_param:infra_kvm_node04_address}
+ deploy_address: ${_param:infra_kvm_node04_deploy_address}
+ public_address: ${_param:infra_kvm_node04_public_address}
+ storage_address: ${_param:infra_kvm_node04_storage_address}
+ infra_kvm_node05:
+ name: ${_param:infra_kvm_node05_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node05_address}
- deploy_address: ${_param:infra_compute_node05_deploy_address}
- public_address: ${_param:infra_compute_node05_public_address}
- storage_address: ${_param:infra_compute_node05_storage_address}
- infra_compute_node06:
- name: ${_param:infra_compute_node06_hostname}
+ single_address: ${_param:infra_kvm_node05_address}
+ deploy_address: ${_param:infra_kvm_node05_deploy_address}
+ public_address: ${_param:infra_kvm_node05_public_address}
+ storage_address: ${_param:infra_kvm_node05_storage_address}
+ infra_kvm_node06:
+ name: ${_param:infra_kvm_node06_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node06_address}
- deploy_address: ${_param:infra_compute_node06_deploy_address}
- public_address: ${_param:infra_compute_node06_public_address}
- storage_address: ${_param:infra_compute_node06_storage_address}
- infra_compute_node07:
- name: ${_param:infra_compute_node07_hostname}
+ single_address: ${_param:infra_kvm_node06_address}
+ deploy_address: ${_param:infra_kvm_node06_deploy_address}
+ public_address: ${_param:infra_kvm_node06_public_address}
+ storage_address: ${_param:infra_kvm_node06_storage_address}
+ infra_kvm_node07:
+ name: ${_param:infra_kvm_node07_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node07_address}
- deploy_address: ${_param:infra_compute_node07_deploy_address}
- public_address: ${_param:infra_compute_node07_public_address}
- storage_address: ${_param:infra_compute_node07_storage_address}
- infra_compute_node08:
- name: ${_param:infra_compute_node08_hostname}
+ single_address: ${_param:infra_kvm_node07_address}
+ deploy_address: ${_param:infra_kvm_node07_deploy_address}
+ public_address: ${_param:infra_kvm_node07_public_address}
+ storage_address: ${_param:infra_kvm_node07_storage_address}
+ infra_kvm_node08:
+ name: ${_param:infra_kvm_node08_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node08_address}
- deploy_address: ${_param:infra_compute_node08_deploy_address}
- public_address: ${_param:infra_compute_node08_public_address}
- storage_address: ${_param:infra_compute_node08_storage_address}
- infra_compute_node09:
- name: ${_param:infra_compute_node09_hostname}
+ single_address: ${_param:infra_kvm_node08_address}
+ deploy_address: ${_param:infra_kvm_node08_deploy_address}
+ public_address: ${_param:infra_kvm_node08_public_address}
+ storage_address: ${_param:infra_kvm_node08_storage_address}
+ infra_kvm_node09:
+ name: ${_param:infra_kvm_node09_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node09_address}
- deploy_address: ${_param:infra_compute_node09_deploy_address}
- public_address: ${_param:infra_compute_node09_public_address}
- storage_address: ${_param:infra_compute_node09_storage_address}
\ No newline at end of file
+ single_address: ${_param:infra_kvm_node09_address}
+ deploy_address: ${_param:infra_kvm_node09_deploy_address}
+ public_address: ${_param:infra_kvm_node09_public_address}
+ storage_address: ${_param:infra_kvm_node09_storage_address}
diff --git a/reclass/storage/system/physical_control_single.yml b/reclass/storage/system/physical_control_single.yml
index 1a604f1..32f09c3 100644
--- a/reclass/storage/system/physical_control_single.yml
+++ b/reclass/storage/system/physical_control_single.yml
@@ -1,21 +1,21 @@
parameters:
_param:
- infra_compute_node01_hostname: kvm01
- infra_compute_node01_deploy_address: ${_param:infra_compute_node01_address}
- infra_compute_node01_storage_address: ${_param:infra_compute_node01_address}
- infra_compute_node01_public_address: ${_param:infra_compute_node01_address}
+ infra_kvm_node01_hostname: kvm01
+ infra_kvm_node01_deploy_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node01_storage_address: ${_param:infra_kvm_node01_address}
+ infra_kvm_node01_public_address: ${_param:infra_kvm_node01_address}
reclass:
storage:
node:
- infra_compute_node01:
- name: ${_param:infra_compute_node01_hostname}
+ infra_kvm_node01:
+ name: ${_param:infra_kvm_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.infra.kvm
params:
salt_master_host: ${_param:reclass_config_master}
linux_system_codename: trusty
- single_address: ${_param:infra_compute_node01_address}
- deploy_address: ${_param:infra_compute_node01_deploy_address}
- public_address: ${_param:infra_compute_node01_public_address}
- storage_address: ${_param:infra_compute_node01_storage_address}
\ No newline at end of file
+ single_address: ${_param:infra_kvm_node01_address}
+ deploy_address: ${_param:infra_kvm_node01_deploy_address}
+ public_address: ${_param:infra_kvm_node01_public_address}
+ storage_address: ${_param:infra_kvm_node01_storage_address}
diff --git a/sahara/server/cluster.yml b/sahara/server/cluster.yml
new file mode 100644
index 0000000..cdb7b04
--- /dev/null
+++ b/sahara/server/cluster.yml
@@ -0,0 +1,39 @@
+classes:
+- service.sahara.server.cluster
+- service.keepalived.cluster.single
+- system.haproxy.proxy.listen.openstack.sahara
+- service.haproxy.proxy.single
+parameters:
+ sahara:
+ server:
+ enabled: true
+ version: ${_param:sahara_version}
+ notification: false
+ bind:
+ address: ${_param:single_address}
+ port: 8386
+ database:
+ engine: mysql
+ host: ${_param:openstack_database_address}
+ port: 3306
+ name: sahara
+ user: sahara
+ password: ${_param:mysql_sahara_password}
+ identity:
+ engine: keystone
+ protocol: http
+ host: ${_param:openstack_control_address}
+ port: 35357
+ tenant: service
+ user: sahara
+ password: ${_param:keystone_sahara_password}
+ message_queue:
+ engine: rabbitmq
+ port: 5672
+ members:
+ - host: ${_param:openstack_message_queue_node01_address}
+ - host: ${_param:openstack_message_queue_node02_address}
+ - host: ${_param:openstack_message_queue_node03_address}
+ user: openstack
+ password: ${_param:rabbitmq_openstack_password}
+ virtual_host: '/openstack'
diff --git a/sahara/server/single.yml b/sahara/server/single.yml
new file mode 100644
index 0000000..01e7b38
--- /dev/null
+++ b/sahara/server/single.yml
@@ -0,0 +1,31 @@
+classes:
+- service.sahara.server.single
+parameters:
+ sahara:
+ server:
+ enabled: true
+ version: ${_param:sahara_version}
+ bind:
+ host: ${_param:single_address}
+ port: 8386
+ database:
+ engine: mysql
+ host: ${_param:openstack_database_address}
+ port: 3306
+ name: sahara
+ user: sahara
+ password: ${_param:mysql_sahara_password}
+ identity:
+ engine: keystone
+ host: ${_param:openstack_control_address}
+ port: 35357
+ user: sahara
+ password: ${_param:keystone_sahara_password}
+ tenant: service
+ message_queue:
+ engine: rabbitmq
+ host: ${_param:cluster_vip_address}
+ port: 5672
+ user: openstack
+ password: ${_param:rabbitmq_openstack_password}
+ virtual_host: '/openstack'
diff --git a/salt/master/formula/git/openstack.yml b/salt/master/formula/git/openstack.yml
index 86e23b2..36ddfc2 100644
--- a/salt/master/formula/git/openstack.yml
+++ b/salt/master/formula/git/openstack.yml
@@ -104,6 +104,10 @@
source: git
address: '${_param:salt_master_environment_repository}/salt-formula-rabbitmq.git'
revision: ${_param:salt_master_environment_revision}
+ sahara:
+ source: git
+ address: '${_param:salt_master_environment_repository}/salt-formula-sahara.git'
+ revision: ${_param:salt_master_environment_revision}
statsd:
source: git
address: '${_param:salt_master_environment_repository}/salt-formula-statsd.git'
diff --git a/salt/master/formula/git/oss.yml b/salt/master/formula/git/oss.yml
new file mode 100644
index 0000000..3c555ee
--- /dev/null
+++ b/salt/master/formula/git/oss.yml
@@ -0,0 +1,16 @@
+parameters:
+ _param:
+ salt_master_oss_repository: https://gerrit.mcp.mirantis.net/oss
+ salt_master_oss_revision: master
+ salt:
+ master:
+ environment:
+ dev:
+ formula:
+ devops_portal:
+ module:
+ devops_utils.py:
+ enabled: true
+ source: git
+ address: '${_param:salt_master_oss_repository}/salt-formula-devops-portal.git'
+ revision: ${_param:salt_master_oss_revision}
diff --git a/salt/master/formula/pkg/foundation.yml b/salt/master/formula/pkg/foundation.yml
index abcc1b0..ebb2b00 100644
--- a/salt/master/formula/pkg/foundation.yml
+++ b/salt/master/formula/pkg/foundation.yml
@@ -4,6 +4,9 @@
environment:
prd:
formula:
+ aptcacher:
+ source: pkg
+ name: salt-formula-aptcacher
aptly:
source: pkg
name: salt-formula-aptly
@@ -19,4 +22,9 @@
freeipa:
source: pkg
name: salt-formula-freeipa
-
+ maas:
+ source: pkg
+ name: salt-formula-maas
+ openldap:
+ source: pkg
+ name: salt-formula-openldap
diff --git a/salt/master/formula/pkg/openstack.yml b/salt/master/formula/pkg/openstack.yml
index 1269bd1..b1222d1 100644
--- a/salt/master/formula/pkg/openstack.yml
+++ b/salt/master/formula/pkg/openstack.yml
@@ -58,6 +58,9 @@
mysql:
source: pkg
name: salt-formula-mysql
+ murano:
+ source: pkg
+ name: salt-formula-murano
neutron:
source: pkg
name: salt-formula-neutron
@@ -76,6 +79,9 @@
rabbitmq:
source: pkg
name: salt-formula-rabbitmq
+ sahara:
+ source: pkg
+ name: salt-formula-sahara
statsd:
source: pkg
name: salt-formula-statsd
diff --git a/salt/master/formula/pkg/oss.yml b/salt/master/formula/pkg/oss.yml
new file mode 100644
index 0000000..1c0e90a
--- /dev/null
+++ b/salt/master/formula/pkg/oss.yml
@@ -0,0 +1,9 @@
+parameters:
+ salt:
+ master:
+ environment:
+ prd:
+ formula:
+ devops_portal:
+ source: pkg
+ name: salt-formula-devops-portal
diff --git a/salt/master/git.yml b/salt/master/git.yml
index 02d0b67..267bdb1 100644
--- a/salt/master/git.yml
+++ b/salt/master/git.yml
@@ -4,6 +4,7 @@
- system.salt.master.formula.git.foundation
- system.salt.master.formula.git.kubernetes
- system.salt.master.formula.git.openstack
+- system.salt.master.formula.git.oss
- system.salt.master.formula.git.saltstack
- system.salt.master.formula.git.stacklight
- system.salt.master.formula.git.monitoring
diff --git a/salt/master/pkg.yml b/salt/master/pkg.yml
index b075138..1001d49 100644
--- a/salt/master/pkg.yml
+++ b/salt/master/pkg.yml
@@ -4,6 +4,7 @@
- system.salt.master.formula.pkg.foundation
- system.salt.master.formula.pkg.kubernetes
- system.salt.master.formula.pkg.openstack
+- system.salt.master.formula.pkg.oss
- system.salt.master.formula.pkg.saltstack
- system.salt.master.formula.pkg.stacklight
- system.salt.master.formula.pkg.monitoring
diff --git a/salt/minion/cert/k8s_client_prometheus.yml b/salt/minion/cert/k8s_client_prometheus.yml
index 04cd374..138fce8 100644
--- a/salt/minion/cert/k8s_client_prometheus.yml
+++ b/salt/minion/cert/k8s_client_prometheus.yml
@@ -5,8 +5,9 @@
k8s_client_prometheus:
host: ${_param:salt_minion_ca_host}
authority: ${_param:salt_minion_ca_authority}
- key_file: /srv/volumes/prometheus-config/kubelet-client.key
- cert_file: /srv/volumes/prometheus-config/kubelet-client.crt
+ key_file: /srv/volumes/prometheus/kubelet-client.key
+ cert_file: /srv/volumes/prometheus/kubelet-client.crt
common_name: kubelet-client
signing_policy: cert_client
alternative_names: IP:${_param:cluster_vip_address},IP:${_param:cluster_node01_address},IP:${_param:cluster_node02_address},IP:${_param:cluster_node03_address},IP:${_param:kubernetes_internal_api_address}
+ mode: '0444'