
As part of Armada deprecation we need to remove all Armada application builds for all applications that have been migrated to FluxCD. This patch removes the armada app build from centos and debian. TEST PLAN: PASS: Build centos PASS: Build debian PASS: rpm package has no armada tarball PASS: deb package has no armada tarball PASS: fluxcd tarball is unchanged Story: 2009138 Task: 46046 Signed-off-by: Lucas Cavalcante <lucasmedeiros.cavalcante@windriver.com> Change-Id: Ic1d31c3aba2e6c43c436f679f0a3f4c8479757a5
103 lines
2.8 KiB
RPMSpec
103 lines
2.8 KiB
RPMSpec
# Application tunables (maps to metadata)
|
|
%global app_name platform-integ-apps
|
|
%global helm_repo stx-platform
|
|
|
|
# Install location
|
|
%global app_folder /usr/local/share/applications/helm
|
|
|
|
# Build variables
|
|
%global helm_folder /usr/lib/helm
|
|
%global toolkit_version 0.2.19
|
|
|
|
Summary: StarlingX K8S FluxCD application: Platform Integration
|
|
Name: stx-platform-helm
|
|
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
|
|
BuildRequires: python-k8sapp-platform
|
|
BuildRequires: python-k8sapp-platform-wheels
|
|
|
|
%description
|
|
The StarlingX K8S FluxCD application for platform integration
|
|
|
|
%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 rbd-provisioner
|
|
make ceph-pools-audit
|
|
make cephfs-provisioner
|
|
# TODO (rchurch): remove
|
|
make node-feature-discovery
|
|
cd -
|
|
|
|
# Terminate helm server (the last backgrounded task)
|
|
kill %1
|
|
|
|
# Create a chart tarball compliant with sysinv kube-app.py
|
|
%define app_staging %{_builddir}/staging
|
|
%define app_tarball_fluxcd %{app_name}-%{version}-%{tis_patch_ver}.tgz
|
|
%define fluxcd_app_path %{_builddir}/%{app_tarball_fluxcd}
|
|
|
|
# Setup staging
|
|
mkdir -p %{app_staging}
|
|
cp files/metadata.yaml %{app_staging}
|
|
mkdir -p %{app_staging}/charts
|
|
cp helm-charts/*.tgz %{app_staging}/charts
|
|
|
|
# Populate metadata
|
|
sed -i 's/@APP_NAME@/%{app_name}/g' %{app_staging}/metadata.yaml
|
|
sed -i 's/@APP_VERSION@/%{version}-%{tis_patch_ver}/g' %{app_staging}/metadata.yaml
|
|
sed -i 's/@HELM_REPO@/%{helm_repo}/g' %{app_staging}/metadata.yaml
|
|
|
|
# Copy the plugins: installed in the buildroot
|
|
mkdir -p %{app_staging}/plugins
|
|
cp /plugins/%{app_name}/*.whl %{app_staging}/plugins
|
|
|
|
cp -R fluxcd-manifests %{app_staging}/
|
|
|
|
# calculate checksum of all files in app_staging
|
|
cd %{app_staging}
|
|
find . -type f ! -name '*.md5' -print0 | xargs -0 md5sum > checksum.md5
|
|
# package fluxcd app
|
|
tar -zcf %fluxcd_app_path -C %{app_staging}/ .
|
|
|
|
# switch back to source root
|
|
cd -
|
|
|
|
# Cleanup staging
|
|
rm -fr %{app_staging}
|
|
|
|
%install
|
|
install -d -m 755 %{buildroot}/%{app_folder}
|
|
install -p -D -m 755 %fluxcd_app_path %{buildroot}/%{app_folder}
|
|
install -d -m 755 ${RPM_BUILD_ROOT}/opt/extracharts
|
|
# TODO (rchurch): remove
|
|
install -p -D -m 755 helm-charts/node-feature-discovery-*.tgz ${RPM_BUILD_ROOT}/opt/extracharts
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
/opt/extracharts/*
|
|
%{app_folder}/%{app_tarball_fluxcd}
|