![Thiago Brito](/assets/img/avatar_default.png)
This commit switches ptp-notification to use the fluxcd app by default and also preserves the armada app on the build for future tests. TEST PLAN PASS Build iso and verify apps PASS Upload PASS Apply PASS Verify resources [1] pod stuck at ContainerCreating due to ptp misconfiguration on StarlingX, unrelated to the app or FluxCD) PASS Remove PASS Delete Logs: https://paste.opendev.org/show/bZuqIQIdGAXOAAVO3jRl/ [1] On the 1st attempt to verify the resources created, we got the ptp-ptp-notification pod stuck on ContainerCreating due to ptp misconfiguration on StarlingX (unrelated to the app or FluxCD). After troubleshooting the configuration, the pod got running OK and we used the ptp-notification-demo-app to verify the protocol was acting as expected. 2nd verification log: https://paste.opendev.org/show/bGDjZu6jrxw6lCdYQZNo/ Story: 2009138 Task: 45371 Signed-off-by: Thiago Brito <thiago.brito@windriver.com> Change-Id: Ib4812f2def774a83c5838700006ee686b8d28198
121 lines
3.1 KiB
RPMSpec
121 lines
3.1 KiB
RPMSpec
#
|
|
# Copyright (c) 2021-2022 Wind River Systems, Inc.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Application tunables (maps to metadata)
|
|
%global app_name ptp-notification
|
|
%global helm_repo stx-platform
|
|
|
|
%global armada_folder /usr/lib/armada
|
|
|
|
# Install location
|
|
%global app_folder /usr/local/share/applications/helm
|
|
|
|
# Build variables
|
|
%global helm_folder /usr/lib/helm
|
|
|
|
Summary: StarlingX PTP Notification FluxCD Helm Charts
|
|
Name: stx-ptp-notification-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: chartmuseum
|
|
BuildRequires: python-k8sapp-ptp-notification
|
|
BuildRequires: python-k8sapp-ptp-notification-wheels
|
|
|
|
%description
|
|
StarlingX PTP Notification Helm Charts
|
|
|
|
%package armada
|
|
Summary: StarlingX PTP Notification Application Armada Helm Charts
|
|
Group: base
|
|
License: Apache-2.0
|
|
|
|
%description armada
|
|
StarlingX PTP Notification Application Armada Helm Charts
|
|
|
|
%prep
|
|
%setup -n %{name}-%{version}
|
|
|
|
%build
|
|
chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" --storage-local-rootdir="." &
|
|
sleep 2
|
|
|
|
helm repo add local http://localhost:8879/charts
|
|
|
|
cd helm-charts
|
|
make ptp-notification
|
|
make psp-rolebinding
|
|
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_armada %{app_name}-armada-%{version}-%{tis_patch_ver}.tgz
|
|
%define app_tarball_fluxcd %{app_name}-%{version}-%{tis_patch_ver}.tgz
|
|
%define armada_app_path %{_builddir}/%{app_tarball_armada}
|
|
%define fluxcd_app_path %{_builddir}/%{app_tarball_fluxcd}
|
|
|
|
# Setup staging
|
|
mkdir -p %{app_staging}
|
|
cp files/metadata.yaml %{app_staging}
|
|
cp manifests/ptp_notification_manifest.yaml %{app_staging}
|
|
mkdir -p %{app_staging}/charts
|
|
cp helm-charts/*.tgz %{app_staging}/charts
|
|
#cp %{helm_folder}/*.tgz %{app_staging}/charts
|
|
cd %{app_staging}
|
|
|
|
# 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
|
|
|
|
# package it up
|
|
find . -type f ! -name '*.md5' -print0 | xargs -0 md5sum > checksum.md5
|
|
tar -zcf %armada_app_path -C %{app_staging}/ .
|
|
|
|
# package fluxcd
|
|
rm -f %{app_staging}/ptp_notification_manifest.yaml
|
|
|
|
cd -
|
|
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
|
|
tar -zcf %fluxcd_app_path -C %{app_staging}/ .
|
|
|
|
cd -
|
|
|
|
# Cleanup staging
|
|
rm -fr %{app_staging}
|
|
|
|
%install
|
|
install -d -m 755 %{buildroot}/%{app_folder}
|
|
install -p -D -m 755 %armada_app_path %{buildroot}/%{app_folder}
|
|
install -p -D -m 755 %fluxcd_app_path %{buildroot}/%{app_folder}
|
|
|
|
%files armada
|
|
%defattr(-,root,root,-)
|
|
%{app_folder}/%{app_tarball_armada}
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%{app_folder}/%{app_tarball_fluxcd}
|