daef54697f
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 <thaleselero.cervi@windriver.com> Co-Authored-by: Robert Church <robert.church@windriver.com> Change-Id: Id501b4a34b1b54ca72943044fb59b18e064d1042
75 lines
1.9 KiB
RPMSpec
75 lines
1.9 KiB
RPMSpec
%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 <info@windriver.com>
|
|
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}/*
|