From daef54697f354ca8fda128c46e50771f8ee7eb45 Mon Sep 17 00:00:00 2001 From: Robert Church Date: Wed, 4 May 2022 04:11:59 -0400 Subject: [PATCH] Partial FluxCD version of stx-openstack: initial This is a mini test version of the openstack app based on FluxCD. It only has a subset of the charts enabled for testing: - build-helm-chart.sh changes - FluxCD application framework changes This change includes the following charts: psp-rolebinding, ingress, nginx-ports-control, mariadb, garbd, memcached, rabbitmq. NOTE: This new change includes the same code from [1] and the fix for debian package build, the reason why the original change had to be reverted originally. Test Plan: PASS - package build (CentOS) PASS - package build (Debian) PASS - build-helm-charts.sh builds a basic FluxCD app tarball PASS - application upload and overrides generated PASS - application apply/remove/delete Debian build logs: https://paste.opendev.org/show/bty7r5Zcn6JJawuwDBm7/ Application Logs: https://paste.opendev.org/show/bFL2fixBwc0vBhqXDC0K/ Story: 2009138 Task: 45462 Signed-off-by: Thales Elero Cervi Co-Authored-by: Robert Church Change-Id: Id501b4a34b1b54ca72943044fb59b18e064d1042 --- centos_pkg_dirs | 1 + debian_pkg_dirs | 1 + .../centos/build_srpm.data | 13 ++++ .../centos/stx-openstack-helm-fluxcd.spec | 74 +++++++++++++++++++ .../debian/deb_folder/changelog | 5 ++ .../debian/deb_folder/control | 21 ++++++ .../debian/deb_folder/copyright | 41 ++++++++++ .../debian/deb_folder/rules | 42 +++++++++++ .../debian/deb_folder/source/format | 1 + .../stx-openstack-helm-fluxcd.install | 3 + .../debian/meta_data.yaml | 10 +++ .../stx-openstack-helm-fluxcd/README | 5 ++ .../files/index.yaml | 3 + .../files/metadata.yaml | 22 ++++++ .../files/repositories.yaml | 12 +++ .../stx-openstack-helm-fluxcd/helm-charts | 1 + .../manifests/base/helmrepository.yaml | 15 ++++ .../manifests/base/kustomization.yaml | 10 +++ .../manifests/base/namespace.yaml | 12 +++ .../garbd/garbd-static-overrides.yaml | 25 +++++++ .../garbd/garbd-system-overrides.yaml | 0 .../manifests/garbd/helmrelease.yaml | 43 +++++++++++ .../manifests/garbd/kustomization.yaml | 20 +++++ .../manifests/ingress/helmrelease.yaml | 42 +++++++++++ .../ingress/ingress-static-overrides.yaml | 44 +++++++++++ .../ingress/ingress-system-overrides.yaml | 0 .../manifests/ingress/kustomization.yaml | 22 ++++++ .../manifests/kustomization.yaml | 20 +++++ .../manifests/mariadb/helmrelease.yaml | 43 +++++++++++ .../manifests/mariadb/kustomization.yaml | 20 +++++ .../mariadb/mariadb-static-overrides.yaml | 64 ++++++++++++++++ .../mariadb/mariadb-system-overrides.yaml | 0 .../manifests/memcached/helmrelease.yaml | 41 ++++++++++ .../manifests/memcached/kustomization.yaml | 20 +++++ .../memcached/memcached-static-overrides.yaml | 34 +++++++++ .../memcached/memcached-system-overrides.yaml | 0 .../nginx-ports-control/helmrelease.yaml | 39 ++++++++++ .../nginx-ports-control/kustomization.yaml | 20 +++++ .../nginx-ports-control-static-overrides.yaml | 9 +++ .../nginx-ports-control-system-overrides.yaml | 0 .../psp-rolebinding/helmrelease.yaml | 37 ++++++++++ .../psp-rolebinding/kustomization.yaml | 20 +++++ .../psp-rolebinding-static-overrides.yaml | 11 +++ .../psp-rolebinding-system-overrides.yaml | 0 .../manifests/rabbitmq/helmrelease.yaml | 41 ++++++++++ .../manifests/rabbitmq/kustomization.yaml | 20 +++++ .../rabbitmq/rabbitmq-static-overrides.yaml | 57 ++++++++++++++ .../rabbitmq/rabbitmq-system-overrides.yaml | 0 stx-openstack-helm/debian/deb_folder/control | 9 +-- stx-openstack-helm/debian/deb_folder/rules | 2 +- 50 files changed, 989 insertions(+), 6 deletions(-) create mode 100644 stx-openstack-helm-fluxcd/centos/build_srpm.data create mode 100644 stx-openstack-helm-fluxcd/centos/stx-openstack-helm-fluxcd.spec create mode 100644 stx-openstack-helm-fluxcd/debian/deb_folder/changelog create mode 100644 stx-openstack-helm-fluxcd/debian/deb_folder/control create mode 100644 stx-openstack-helm-fluxcd/debian/deb_folder/copyright create mode 100755 stx-openstack-helm-fluxcd/debian/deb_folder/rules create mode 100644 stx-openstack-helm-fluxcd/debian/deb_folder/source/format create mode 100644 stx-openstack-helm-fluxcd/debian/deb_folder/stx-openstack-helm-fluxcd.install create mode 100644 stx-openstack-helm-fluxcd/debian/meta_data.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/README create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/index.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/metadata.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/repositories.yaml create mode 120000 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/helm-charts create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/helmrepository.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/namespace.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-system-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-system-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-system-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-system-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-system-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-system-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/helmrelease.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/kustomization.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-static-overrides.yaml create mode 100644 stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-system-overrides.yaml diff --git a/centos_pkg_dirs b/centos_pkg_dirs index 642b5e91..b78e96f3 100644 --- a/centos_pkg_dirs +++ b/centos_pkg_dirs @@ -1,4 +1,5 @@ openstack-helm openstack-helm-infra stx-openstack-helm +stx-openstack-helm-fluxcd python-k8sapp-openstack diff --git a/debian_pkg_dirs b/debian_pkg_dirs index 020be5da..d1a9b0c4 100644 --- a/debian_pkg_dirs +++ b/debian_pkg_dirs @@ -2,3 +2,4 @@ openstack-helm openstack-helm-infra python-k8sapp-openstack stx-openstack-helm +stx-openstack-helm-fluxcd diff --git a/stx-openstack-helm-fluxcd/centos/build_srpm.data b/stx-openstack-helm-fluxcd/centos/build_srpm.data new file mode 100644 index 00000000..929b864e --- /dev/null +++ b/stx-openstack-helm-fluxcd/centos/build_srpm.data @@ -0,0 +1,13 @@ +SRC_DIR="stx-openstack-helm-fluxcd" +COPY_LIST_TO_TAR="\ + $STX_BASE/helm-charts/fm-rest-api/fm-rest-api/helm-charts \ + $STX_BASE/helm-charts/psp-rolebinding/psp-rolebinding/helm-charts \ +" + +# Bump the version by the previous version value prior to decoupling as this +# will align the GITREVCOUNT value to increment the version by one. Remove this +# (i.e. reset to 0) on then next major version changes when TIS_BASE_SRCREV +# changes. This version should align with the version of the helm charts in +# python-k8sapp-openstack +TIS_BASE_SRCREV=8d3452a5e864339101590e542c24c375bb3808fb +TIS_PATCH_VER=GITREVCOUNT+20 diff --git a/stx-openstack-helm-fluxcd/centos/stx-openstack-helm-fluxcd.spec b/stx-openstack-helm-fluxcd/centos/stx-openstack-helm-fluxcd.spec new file mode 100644 index 00000000..982fde3a --- /dev/null +++ b/stx-openstack-helm-fluxcd/centos/stx-openstack-helm-fluxcd.spec @@ -0,0 +1,74 @@ +%global helm_folder /usr/lib/helm +%global fluxcd_folder /usr/lib/fluxcd +%global app_folder /usr/lib/application +%global toolkit_version 0.2.19 +%global helmchart_version 0.1.0 + +Summary: StarlingX Openstack Application Helm charts +Name: stx-openstack-helm-fluxcd +Version: 1.0 +Release: %{tis_patch_ver}%{?_tis_dist} +License: Apache-2.0 +Group: base +Packager: Wind River +URL: unknown + +Source0: %{name}-%{version}.tar.gz + +BuildArch: noarch + +BuildRequires: helm +BuildRequires: openstack-helm-infra +BuildRequires: chartmuseum +Requires: openstack-helm-infra +Requires: openstack-helm +Requires: python-k8sapp-openstack-wheels + +%description +StarlingX Openstack Application Helm charts + +%prep +%setup + +%build +# Stage helm-toolkit in the local repo +cp %{helm_folder}/helm-toolkit-%{toolkit_version}.tgz helm-charts/ + +# Host a server for the charts +chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" --storage-local-rootdir="./helm-charts" & +sleep 2 +helm repo add local http://localhost:8879/charts + +# Make the charts. These produce a tgz file +cd helm-charts +make nova-api-proxy +make pci-irq-affinity-agent +make garbd +make keystone-api-proxy +make fm-rest-api +make nginx-ports-control +make dcdbsync +make psp-rolebinding +cd - + +# terminate helm server (the last backgrounded task) +kill %1 + +# remove helm-toolkit. This will be packaged with openstack-helm-infra +rm ./helm-charts/helm-toolkit-%{toolkit_version}.tgz + +%install +# helm_folder is created by openstack-helm-infra +install -d -m 755 ${RPM_BUILD_ROOT}%{app_folder} +install -p -D -m 755 files/metadata.yaml ${RPM_BUILD_ROOT}%{app_folder} +install -d -m 755 ${RPM_BUILD_ROOT}%{helm_folder} +install -p -D -m 755 helm-charts/*.tgz ${RPM_BUILD_ROOT}%{helm_folder} +install -d -m 755 ${RPM_BUILD_ROOT}%{fluxcd_folder} +cp -R manifests/* ${RPM_BUILD_ROOT}%{fluxcd_folder} + +%files +#helm_folder is owned by openstack-helm-infra +%defattr(-,root,root,-) +%{helm_folder}/* +%{fluxcd_folder}/* +%{app_folder}/* diff --git a/stx-openstack-helm-fluxcd/debian/deb_folder/changelog b/stx-openstack-helm-fluxcd/debian/deb_folder/changelog new file mode 100644 index 00000000..47553456 --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/deb_folder/changelog @@ -0,0 +1,5 @@ +stx-openstack-helm-fluxcd (1.0-1) unstable; urgency=medium + + * Initial release. + + -- Robert Church Mon, 2 May 2022 21:50:42 +0000 diff --git a/stx-openstack-helm-fluxcd/debian/deb_folder/control b/stx-openstack-helm-fluxcd/debian/deb_folder/control new file mode 100644 index 00000000..3fc13ec8 --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/deb_folder/control @@ -0,0 +1,21 @@ +Source: stx-openstack-helm-fluxcd +Section: libs +Priority: optional +Maintainer: StarlingX Developers +Build-Depends: debhelper-compat (= 13), + chartmuseum, + helm, + openstack-helm-infra, + openstack-helm, + procps, + python3-k8sapp-openstack-wheels +Standards-Version: 4.5.1 +Homepage: https://www.starlingx.io + +Package: stx-openstack-helm-fluxcd +Section: libs +Architecture: all +Depends: ${misc:Depends} +Description: StarlingX Openstack FluxCD application + This package contains the components needed for the Openstack FluxCD + application. diff --git a/stx-openstack-helm-fluxcd/debian/deb_folder/copyright b/stx-openstack-helm-fluxcd/debian/deb_folder/copyright new file mode 100644 index 00000000..2f66da50 --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/deb_folder/copyright @@ -0,0 +1,41 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: stx-openstack-helm-fluxcd +Source: https://opendev.org/starlingx/openstack-armada-app/ + +Files: * +Copyright: (c) 2013-2022 Wind River Systems, Inc +License: Apache-2 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + . + https://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + On Debian-based systems the full text of the Apache version 2.0 license + can be found in `/usr/share/common-licenses/Apache-2.0'. + +# If you want to use GPL v2 or later for the /debian/* files use +# the following clauses, or change it to suit. Delete these two lines +Files: debian/* +Copyright: 2022 Wind River Systems, Inc +License: Apache-2 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + . + https://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + On Debian-based systems the full text of the Apache version 2.0 license + can be found in `/usr/share/common-licenses/Apache-2.0'. diff --git a/stx-openstack-helm-fluxcd/debian/deb_folder/rules b/stx-openstack-helm-fluxcd/debian/deb_folder/rules new file mode 100755 index 00000000..173e98e9 --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/deb_folder/rules @@ -0,0 +1,42 @@ +#!/usr/bin/make -f +# export DH_VERBOSE = 1 + +export ROOT = debian/tmp +export APP_FOLDER = $(ROOT)/usr/lib/application +export FLUXCD_FOLDER = $(ROOT)/usr/lib/fluxcd +export HELM_FOLDER = /usr/lib/helm +export TOOLKIT_VERSION = 0.2.19 + +%: + dh $@ + +override_dh_auto_build: + # Stage helm-toolkit in the local repo. + cp $(HELM_FOLDER)/helm-toolkit-$(TOOLKIT_VERSION).tgz helm-charts/ + # Host a server for the helm charts. + chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" \ + --storage-local-rootdir="./helm-charts" & + sleep 2 + helm repo add local http://localhost:8879/charts + # Create the TGZ file. + cd helm-charts && make nova-api-proxy + cd helm-charts && make pci-irq-affinity-agent + cd helm-charts && make garbd + cd helm-charts && make keystone-api-proxy + cd helm-charts && make fm-rest-api + cd helm-charts && make nginx-ports-control + cd helm-charts && make dcdbsync + cd helm-charts && make psp-rolebinding + # Terminate the helm chart server. + pkill chartmuseum + # Remove helm-toolkit. This will be packaged with openstack-helm-infra. + rm helm-charts/helm-toolkit-$(TOOLKIT_VERSION).tgz + +override_dh_auto_install: + # Install the app tar file. + install -d -m 755 $(APP_FOLDER) + install -p -D -m 755 files/metadata.yaml $(APP_FOLDER) + install -d -m 755 $(ROOT)$(HELM_FOLDER) + install -p -D -m 755 helm-charts/*.tgz $(ROOT)$(HELM_FOLDER) + install -d -m 755 $(FLUXCD_FOLDER) + cp -pR manifests/* $(FLUXCD_FOLDER) diff --git a/stx-openstack-helm-fluxcd/debian/deb_folder/source/format b/stx-openstack-helm-fluxcd/debian/deb_folder/source/format new file mode 100644 index 00000000..163aaf8d --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/deb_folder/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/stx-openstack-helm-fluxcd/debian/deb_folder/stx-openstack-helm-fluxcd.install b/stx-openstack-helm-fluxcd/debian/deb_folder/stx-openstack-helm-fluxcd.install new file mode 100644 index 00000000..fffe08e0 --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/deb_folder/stx-openstack-helm-fluxcd.install @@ -0,0 +1,3 @@ +usr/lib/application/* +usr/lib/fluxcd/* +usr/lib/helm/* diff --git a/stx-openstack-helm-fluxcd/debian/meta_data.yaml b/stx-openstack-helm-fluxcd/debian/meta_data.yaml new file mode 100644 index 00000000..c42f75da --- /dev/null +++ b/stx-openstack-helm-fluxcd/debian/meta_data.yaml @@ -0,0 +1,10 @@ +--- +debname: stx-openstack-helm-fluxcd +debver: 1.0-1 +src_path: stx-openstack-helm-fluxcd +src_files: + - ${MY_REPO}/stx/helm-charts/psp-rolebinding/psp-rolebinding/helm-charts + - ${MY_REPO}/stx/helm-charts/fm-rest-api/fm-rest-api/helm-charts +revision: + dist: $STX_DIST + PKG_GITREVCOUNT: true diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/README b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/README new file mode 100644 index 00000000..4ad61101 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/README @@ -0,0 +1,5 @@ +This directory contains all StarlingX charts that need to be built for this +application. Some charts are common across applications. These common charts +reside in the stx-config/kubernetes/helm-charts directory. To include these in +this application update the build_srpm.data file and use the COPY_LIST_TO_TAR +mechanism to populate these commom charts. diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/index.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/index.yaml new file mode 100644 index 00000000..36db709b --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/index.yaml @@ -0,0 +1,3 @@ +apiVersion: v1 +entries: {} +generated: 2019-01-07T12:33:46.098166523-06:00 diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/metadata.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/metadata.yaml new file mode 100644 index 00000000..bb840207 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/metadata.yaml @@ -0,0 +1,22 @@ +disabled_charts: +- aodh +- barbican +- ceilometer +- ceph-rgw +- gnocchi +- ironic +behavior: + platform_managed_app: yes + evaluate_reapply: + after: + - platform-integ-apps + triggers: + - type: unlock + - type: force-unlock + - type: runtime-apply-puppet + - type: host-availability-updated + filters: + - availability: services-enabled + - type: host-delete + filters: + - openstack_worker: True diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/repositories.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/repositories.yaml new file mode 100644 index 00000000..e613b63b --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/files/repositories.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +generated: 2019-01-02T15:19:36.215111369-06:00 +repositories: +- caFile: "" + cache: /builddir/.helm/repository/cache/local-index.yaml + certFile: "" + keyFile: "" + name: local + password: "" + url: http://127.0.0.1:8879/charts + username: "" + diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/helm-charts b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/helm-charts new file mode 120000 index 00000000..e9c8791a --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/helm-charts @@ -0,0 +1 @@ +../../stx-openstack-helm/stx-openstack-helm/helm-charts \ No newline at end of file diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/helmrepository.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/helmrepository.yaml new file mode 100644 index 00000000..c8a41ffe --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/helmrepository.yaml @@ -0,0 +1,15 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: source.toolkit.fluxcd.io/v1beta1 +kind: HelmRepository +metadata: + name: starlingx +spec: + url: http://192.168.206.1:8080/helm_charts/starlingx + interval: 60m +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/kustomization.yaml new file mode 100644 index 00000000..80f58b19 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/kustomization.yaml @@ -0,0 +1,10 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +resources: + - helmrepository.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/namespace.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/namespace.yaml new file mode 100644 index 00000000..58f1d3bd --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/base/namespace.yaml @@ -0,0 +1,12 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: v1 +kind: Namespace +metadata: + name: openstack +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-static-overrides.yaml new file mode 100644 index 00000000..633ecaaf --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-static-overrides.yaml @@ -0,0 +1,25 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-garbd +labels: + server: + node_selector_key: openstack-compute-node + node_selector_value: enabled +pod: + tolerations: + garbd: + enabled: true + tolerations: + - key: openstack-compute-node + operator: Exists + effect: NoSchedule +images: + tags: + garbd: docker.io/starlingx/stx-mariadb:master-centos-stable-latest + image_repo_sync: null +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/garbd-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/helmrelease.yaml new file mode 100644 index 00000000..7ce7ff63 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/helmrelease.yaml @@ -0,0 +1,43 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: garbd + labels: + chart_group: openstack-garbd +spec: + releaseName: osh-openstack-garbd + chart: + spec: + chart: garbd + version: 0.1.0 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 5m + timeout: 30m + test: + enable: false + install: + disableHooks: False + upgrade: + disableHooks: False + dependsOn: + - name: ingress + namespace: openstack + - name: nginx-ports-control + namespace: openstack + valuesFrom: + - kind: Secret + name: garbd-static-overrides + valuesKey: garbd-static-overrides.yaml + - kind: Secret + name: garbd-system-overrides + valuesKey: garbd-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/kustomization.yaml new file mode 100644 index 00000000..4582dbaf --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/garbd/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +resources: + - helmrelease.yaml +secretGenerator: + - name: garbd-static-overrides + files: + - garbd-static-overrides.yaml + - name: garbd-system-overrides + files: + - garbd-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/helmrelease.yaml new file mode 100644 index 00000000..f008afb0 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/helmrelease.yaml @@ -0,0 +1,42 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: ingress + labels: + chart_group: openstack-ingress +spec: + releaseName: osh-openstack-ingress + chart: + spec: + chart: ingress + version: 0.2.3 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 1m + interval: 5m + timeout: 30m + test: + enable: false + install: + disableHooks: false + upgrade: + disableHooks: false + dependsOn: + - name: openstack-psp-rolebinding + namespace: openstack + valuesFrom: + - kind: Secret + name: ingress-static-overrides + valuesKey: ingress-static-overrides.yaml + - kind: Secret + name: ingress-system-overrides + valuesKey: ingress-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-static-overrides.yaml new file mode 100644 index 00000000..d996a1a8 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-static-overrides.yaml @@ -0,0 +1,44 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-ingress +labels: + server: + node_selector_key: openstack-control-plane + node_selector_value: enabled + error_server: + node_selector_key: openstack-control-plane + node_selector_value: enabled +images: + tags: + image_repo_sync: null + ingress_module_init: null + ingress_routed_vip: null + keepalived: null +pod: + replicas: + error_page: 2 + ingress: 2 + affinity: + anti: + type: + default: requiredDuringSchedulingIgnoredDuringExecution + tolerations: + ingress: + enabled: true + tolerations: + - key: node-role.kubernetes.io/master + operator: Exists + effect: NoSchedule + - key: openstack-compute-node + operator: Exists + effect: NoSchedule +conf: + ingress: + worker-processes: '4' + bind-address: "::" +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/ingress-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/kustomization.yaml new file mode 100644 index 00000000..64879b20 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/ingress/kustomization.yaml @@ -0,0 +1,22 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +commonLabels: + chart_group: openstack-ingress +resources: + - helmrelease.yaml +secretGenerator: + - name: ingress-static-overrides + files: + - ingress-static-overrides.yaml + - name: ingress-system-overrides + files: + - ingress-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/kustomization.yaml new file mode 100644 index 00000000..94f7c3f6 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +namespace: openstack +resources: + - base + - psp-rolebinding + - ingress + - nginx-ports-control + - mariadb + - garbd + - memcached + - rabbitmq +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/helmrelease.yaml new file mode 100644 index 00000000..f80b057e --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/helmrelease.yaml @@ -0,0 +1,43 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: mariadb + labels: + chart_group: openstack-mariadb +spec: + releaseName: osh-openstack-mariadb + chart: + spec: + chart: mariadb + version: 0.2.5 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 5m + timeout: 30m + test: + enable: false + install: + disableHooks: False + upgrade: + disableHooks: False + dependsOn: + - name: ingress + namespace: openstack + - name: nginx-ports-control + namespace: openstack + valuesFrom: + - kind: Secret + name: mariadb-static-overrides + valuesKey: mariadb-static-overrides.yaml + - kind: Secret + name: mariadb-system-overrides + valuesKey: mariadb-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/kustomization.yaml new file mode 100644 index 00000000..d16f4f80 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +resources: + - helmrelease.yaml +secretGenerator: + - name: mariadb-static-overrides + files: + - mariadb-static-overrides.yaml + - name: mariadb-system-overrides + files: + - mariadb-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-static-overrides.yaml new file mode 100644 index 00000000..c9db9de7 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-static-overrides.yaml @@ -0,0 +1,64 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-mariadb +manifests: + pod_test: false +monitoring: + prometheus: + enabled: false +labels: + server: + node_selector_key: openstack-control-plane + node_selector_value: enabled + prometheus_mysql_exporter: + node_selector_key: openstack-control-plane + node_selector_value: enabled +images: + tags: + image_repo_sync: null + prometheus_mysql_exporter: null + prometheus_mysql_exporter_helm_tests: null + ks_user: docker.io/starlingx/stx-heat:master-centos-stable-latest + mariadb: docker.io/openstackhelm/mariadb:ubuntu_xenial-20200303 + mariadb_backup: docker.io/openstackhelm/mariadb:10.2.18 + scripted_test: null +pod: + probes: + server: + mariadb: + readiness: + enabled: true + startup: + enabled: true + liveness: + enabled: true + affinity: + anti: + type: + default: requiredDuringSchedulingIgnoredDuringExecution + tolerations: + mariadb: + enabled: true + tolerations: + - key: node-role.kubernetes.io/master + operator: Exists + effect: NoSchedule + - effect: NoExecute + operator: Exists + - key: openstack-compute-node + operator: Exists + effect: NoSchedule +conf: + ingress_conf: + worker-processes: '4' + database: + config_override: | + [mysqld] + wait_timeout=3600 + wsrep_provider_options="gmcast.listen_addr=tcp://0.0.0.0:{{ tuple "oslo_db" "direct" "wsrep" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}" +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/mariadb/mariadb-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/helmrelease.yaml new file mode 100644 index 00000000..495d9e20 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/helmrelease.yaml @@ -0,0 +1,41 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: memcached + labels: + chart_group: openstack-memcached +spec: + releaseName: osh-openstack-memcached + chart: + spec: + chart: memcached + version: 0.1.4 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 5m + timeout: 30m + test: + enable: false + install: + disableHooks: False + upgrade: + disableHooks: False + dependsOn: + - name: mariadb + namespace: openstack + valuesFrom: + - kind: Secret + name: memcached-static-overrides + valuesKey: memcached-static-overrides.yaml + - kind: Secret + name: memcached-system-overrides + valuesKey: memcached-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/kustomization.yaml new file mode 100644 index 00000000..05c56502 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +resources: + - helmrelease.yaml +secretGenerator: + - name: memcached-static-overrides + files: + - memcached-static-overrides.yaml + - name: memcached-system-overrides + files: + - memcached-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-static-overrides.yaml new file mode 100644 index 00000000..5d017fba --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-static-overrides.yaml @@ -0,0 +1,34 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-memcached +labels: + server: + node_selector_key: openstack-control-plane + node_selector_value: enabled + prometheus_memcached_exporter: + node_selector_key: openstack-control-plane + node_selector_value: enabled +pod: + tolerations: + memcached: + enabled: true + tolerations: + - key: node-role.kubernetes.io/master + operator: Exists + effect: NoSchedule + - key: openstack-compute-node + operator: Exists + effect: NoSchedule +monitoring: + prometheus: + enabled: false +images: + tags: + image_repo_sync: null + prometheus_memcached_exporter: null +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/memcached/memcached-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/helmrelease.yaml new file mode 100644 index 00000000..3174dcf2 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/helmrelease.yaml @@ -0,0 +1,39 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: nginx-ports-control + labels: + chart_group: openstack-nginx-ports-control +spec: + releaseName: osh-openstack-nginx-ports-control + chart: + spec: + chart: nginx-ports-control + version: 0.1.0 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 5m + timeout: 30m + test: + enable: false + upgrade: + disableHooks: false + dependsOn: + - name: openstack-psp-rolebinding + namespace: openstack + valuesFrom: + - kind: Secret + name: nginx-ports-control-static-overrides + valuesKey: nginx-ports-control-static-overrides.yaml + - kind: Secret + name: nginx-ports-control-system-overrides + valuesKey: nginx-ports-control-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/kustomization.yaml new file mode 100644 index 00000000..23bfdd24 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +resources: + - helmrelease.yaml +secretGenerator: + - name: nginx-ports-control-static-overrides + files: + - nginx-ports-control-static-overrides.yaml + - name: nginx-ports-control-system-overrides + files: + - nginx-ports-control-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-static-overrides.yaml new file mode 100644 index 00000000..77a8e508 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-static-overrides.yaml @@ -0,0 +1,9 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-nginx-ports-control +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/nginx-ports-control/nginx-ports-control-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/helmrelease.yaml new file mode 100644 index 00000000..b06d8499 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/helmrelease.yaml @@ -0,0 +1,37 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: openstack-psp-rolebinding + labels: + chart_group: openstack-psp-rolebinding +spec: + releaseName: osh-openstack-psp-rolebinding + chart: + spec: + chart: psp-rolebinding + version: 0.1.0 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 5m + timeout: 30m + test: + enable: false + upgrade: + disableHooks: false + dependsOn: [] + valuesFrom: + - kind: Secret + name: psp-rolebinding-static-overrides + valuesKey: psp-rolebinding-static-overrides.yaml + - kind: Secret + name: psp-rolebinding-system-overrides + valuesKey: psp-rolebinding-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/kustomization.yaml new file mode 100644 index 00000000..510c13f5 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +resources: + - helmrelease.yaml +secretGenerator: + - name: psp-rolebinding-static-overrides + files: + - psp-rolebinding-static-overrides.yaml + - name: psp-rolebinding-system-overrides + files: + - psp-rolebinding-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-static-overrides.yaml new file mode 100644 index 00000000..80ce1de3 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-static-overrides.yaml @@ -0,0 +1,11 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-psp-rolebinding +rolebindingNamespace: openstack +serviceAccount: openstack +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/psp-rolebinding/psp-rolebinding-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/helmrelease.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/helmrelease.yaml new file mode 100644 index 00000000..c9a6c8b6 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/helmrelease.yaml @@ -0,0 +1,41 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +apiVersion: "helm.toolkit.fluxcd.io/v2beta1" +kind: HelmRelease +metadata: + name: rabbitmq + labels: + chart_group: openstack-rabbitmq +spec: + releaseName: osh-openstack-rabbitmq + chart: + spec: + chart: rabbitmq + version: 0.1.14 + sourceRef: + kind: HelmRepository + name: starlingx + interval: 5m + timeout: 30m + test: + enable: false + install: + disableHooks: False + upgrade: + disableHooks: False + dependsOn: + - name: memcached + namespace: openstack + valuesFrom: + - kind: Secret + name: rabbitmq-static-overrides + valuesKey: rabbitmq-static-overrides.yaml + - kind: Secret + name: rabbitmq-system-overrides + valuesKey: rabbitmq-system-overrides.yaml +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/kustomization.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/kustomization.yaml new file mode 100644 index 00000000..e7e76923 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/kustomization.yaml @@ -0,0 +1,20 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +namespace: openstack +resources: + - helmrelease.yaml +secretGenerator: + - name: rabbitmq-static-overrides + files: + - rabbitmq-static-overrides.yaml + - name: rabbitmq-system-overrides + files: + - rabbitmq-system-overrides.yaml +generatorOptions: + disableNameSuffixHash: true +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-static-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-static-overrides.yaml new file mode 100644 index 00000000..e54be714 --- /dev/null +++ b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-static-overrides.yaml @@ -0,0 +1,57 @@ +# +# Copyright (c) 2022 Wind River Systems, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +release_group: osh-openstack-rabbitmq +forceBoot: + enabled: true +monitoring: + prometheus: + enabled: false +labels: + server: + node_selector_key: openstack-control-plane + node_selector_value: enabled + prometheus_rabbitmq_exporter: + node_selector_key: openstack-control-plane + node_selector_value: enabled +images: + tags: + image_repo_sync: null + prometheus_rabbitmq_exporter: null + prometheus_rabbitmq_exporter_helm_tests: null + rabbitmq_init: docker.io/starlingx/stx-heat:master-centos-stable-latest + scripted_test: docker.io/rabbitmq:3.9.0-management + rabbitmq: docker.io/rabbitmq:3.9.0 +pod: + affinity: + anti: + type: + default: requiredDuringSchedulingIgnoredDuringExecution + tolerations: + rabbitmq: + enabled: true + tolerations: + - key: node-role.kubernetes.io/master + operator: Exists + effect: NoSchedule + - effect: NoExecute + operator: Exists + - key: openstack-compute-node + operator: Exists + effect: NoSchedule + probes: + readiness: + periodSeconds: 30 + liveness: + periodSeconds: 30 +# TODO: Revert to upstream defaults once the following LP is resolved: +# https://bugs.launchpad.net/starlingx/+bug/1814595. By changing this PV +# size to 1Gi from the default 265Mi, this avoids the kernel hang from the +# filesystem race as seen in the LP. +volume: + size: 1Gi +... diff --git a/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-system-overrides.yaml b/stx-openstack-helm-fluxcd/stx-openstack-helm-fluxcd/manifests/rabbitmq/rabbitmq-system-overrides.yaml new file mode 100644 index 00000000..e69de29b diff --git a/stx-openstack-helm/debian/deb_folder/control b/stx-openstack-helm/debian/deb_folder/control index d59013e6..ac7e484b 100644 --- a/stx-openstack-helm/debian/deb_folder/control +++ b/stx-openstack-helm/debian/deb_folder/control @@ -6,17 +6,16 @@ Build-Depends: debhelper-compat (= 13), chartmuseum, helm, openstack-helm-infra, - procps + openstack-helm, + procps, + python3-k8sapp-openstack-wheels Standards-Version: 4.5.1 Homepage: https://www.starlingx.io Package: stx-openstack-helm Section: libs Architecture: all -Depends: ${misc:Depends}, - openstack-helm, - openstack-helm-infra, - python3-k8sapp-openstack-wheels +Depends: ${misc:Depends} Description: StarlingX Openstack Armada Helm Charts This package contains Armada helm charts for the Openstack armada application. diff --git a/stx-openstack-helm/debian/deb_folder/rules b/stx-openstack-helm/debian/deb_folder/rules index 8eaf540c..72430287 100755 --- a/stx-openstack-helm/debian/deb_folder/rules +++ b/stx-openstack-helm/debian/deb_folder/rules @@ -39,4 +39,4 @@ override_dh_auto_install: install -d -m 755 $(ROOT)$(HELM_FOLDER) install -p -D -m 755 helm-charts/*.tgz $(ROOT)$(HELM_FOLDER) install -d -m 755 $(ARMADA_FOLDER) - install -p -D -m 755 manifests/*.yaml $(ARMADA_FOLDER) + cp -pR manifests/*.yaml $(ARMADA_FOLDER)