Updating fluxcd version of nginx to 1.1.1

This change updates only the fluxcd version of nginx to 1.1.1.
The armada version remains with version 0.41.2 and is also supported.

Test Cases:

PASS: Verify that there are no changes to the armada rpm generated
PASS: Verify that the armada version of app uses nginx 0.41.2
PASS: Run the rpm build and verify that two packages are generated:
      stx-nginx-ingress-controller-helm-<version>.tis.noarch.rpm and
      stx-nginx-ingress-controller-helm-fluxcd-<version>.tis.noarch.rpm
PASS: Install the new package with kustomize and verify that nginx pods
      are deployed and running with success
PASS: Verify that the fluxcd version of the app uses nginx 1.1.1

Story: 2009836
Task: 44604

Change-Id: Icbabe97720eb7d0e8c8676ae2a18ec5afa62b053
Signed-off-by: Rei Oliveira <Reinildes.JoseMateusOliveira@windriver.com>
This commit is contained in:
Rei Oliveira 2022-02-24 06:16:22 -05:00
parent 6291d8a7f9
commit 61fe77e3fc
5 changed files with 78 additions and 20 deletions

View File

@ -1 +1,2 @@
helm-charts-ingress-nginx-1.1.1.tar.gz#helm-charts#https://github.com/kubernetes/ingress-nginx/archive/controller-v1.1.1.tar.gz#http##
helm-charts-ingress-nginx-0.41.2.tar.gz#helm-charts#https://github.com/kubernetes/ingress-nginx/archive/controller-v0.41.2.tar.gz#http## helm-charts-ingress-nginx-0.41.2.tar.gz#helm-charts#https://github.com/kubernetes/ingress-nginx/archive/controller-v0.41.2.tar.gz#http##

View File

@ -1,9 +1,13 @@
SRC_DIR="stx-nginx-ingress-controller-helm" SRC_DIR="stx-nginx-ingress-controller-helm"
TAR_NAME=helm-charts-ingress-nginx TAR_NAME=helm-charts-ingress-nginx
NGINX_VERSION=0.41.2
TAR="$TAR_NAME-$NGINX_VERSION.tar.gz"
COPY_LIST="${CGCS_BASE}/downloads/$TAR $PKG_BASE/$SRC_DIR/files/* $PKG_BASE/$SRC_DIR/manifests/* $PKG_BASE/$SRC_DIR/fluxcd-manifests/*" ARMADA_NGINX_VERSION=0.41.2
ARMADA_TAR="$TAR_NAME-$ARMADA_NGINX_VERSION.tar.gz"
FLUXCD_NGINX_VERSION=1.1.1
FLUXCD_TAR="$TAR_NAME-$FLUXCD_NGINX_VERSION.tar.gz"
COPY_LIST="${CGCS_BASE}/downloads/$ARMADA_TAR ${CGCS_BASE}/downloads/$FLUXCD_TAR $PKG_BASE/$SRC_DIR/files/* $PKG_BASE/$SRC_DIR/manifests/* $PKG_BASE/$SRC_DIR/fluxcd-manifests/*"
TIS_PATCH_VER=PKG_GITREVCOUNT TIS_PATCH_VER=PKG_GITREVCOUNT

View File

@ -1,7 +1,8 @@
# Application tunables (maps to metadata) # Application tunables (maps to metadata)
%global app_name nginx-ingress-controller %global app_name nginx-ingress-controller
%global helm_repo stx-platform %global helm_repo stx-platform
%global nginx_version 0.41.2 %global armada_nginx_version 0.41.2
%global fluxcd_nginx_version 1.1.1
%global armada_folder /usr/lib/armada %global armada_folder /usr/lib/armada
@ -21,7 +22,7 @@ Group: base
Packager: Wind River <info@windriver.com> Packager: Wind River <info@windriver.com>
URL: unknown URL: unknown
Source0: helm-charts-ingress-nginx-%{nginx_version}.tar.gz Source0: helm-charts-ingress-nginx-%{armada_nginx_version}.tar.gz
Source1: repositories.yaml Source1: repositories.yaml
Source2: index.yaml Source2: index.yaml
Source3: Makefile Source3: Makefile
@ -31,18 +32,20 @@ Source4: metadata.yaml
Source5: nginx_ingress_controller_manifest.yaml Source5: nginx_ingress_controller_manifest.yaml
# fluxcd specific source items # fluxcd specific source items
Source6: kustomization.yaml Source6: helm-charts-ingress-nginx-%{fluxcd_nginx_version}.tar.gz
Source7: base_helmrepository.yaml Source7: kustomization.yaml
Source8: base_kustomization.yaml Source8: base_helmrepository.yaml
Source9: base_namespace.yaml Source9: base_kustomization.yaml
Source10: nginx-ingress_helmrelease.yaml Source10: base_namespace.yaml
Source11: nginx-ingress_kustomization.yaml Source11: nginx-ingress_helmrelease.yaml
Source12: nginx-ingress_nginx-ingress-static-overrides.yaml Source12: nginx-ingress_kustomization.yaml
Source13: nginx-ingress_nginx-ingress-system-overrides.yaml Source13: nginx-ingress_nginx-ingress-static-overrides.yaml
Source14: nginx-ingress_nginx-ingress-system-overrides.yaml
BuildArch: noarch BuildArch: noarch
Patch01: 0001-add-toleration.patch Patch01: 0001-add-toleration-armada.patch
Patch02: 0001-add-toleration-fluxcd.patch
BuildRequires: helm BuildRequires: helm
BuildRequires: chartmuseum BuildRequires: chartmuseum
@ -64,17 +67,32 @@ StarlingX Nginx Ingress Controller Application FluxCD Helm Charts
%setup -n helm-charts %setup -n helm-charts
%patch01 -p1 %patch01 -p1
# set up fluxcd tar source
cd %{_builddir}
rm -rf fluxcd
/usr/bin/mkdir -p fluxcd
cd fluxcd
/usr/bin/tar xfv /builddir/build/SOURCES/helm-charts-ingress-nginx-%{fluxcd_nginx_version}.tar.gz
cd %{_builddir}/fluxcd/helm-charts
%patch02 -p1
%build %build
# Host a server for the charts # Host a server for the charts
cd %{_builddir}/helm-charts
chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" --storage-local-rootdir="." & chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" --storage-local-rootdir="." &
sleep 2 sleep 2
helm repo add local http://localhost:8879/charts helm repo add local http://localhost:8879/charts
# Create the tgz file # Create the tgz file for armada
cp %{SOURCE3} charts
cd charts
make ingress-nginx
# Create the tgz file for fluxcd
cd %{_builddir}/fluxcd/helm-charts
cp %{SOURCE3} charts cp %{SOURCE3} charts
cd charts cd charts
make ingress-nginx make ingress-nginx
cd -
# Terminate helm server (the last backgrounded task) # Terminate helm server (the last backgrounded task)
kill %1 kill %1
@ -90,6 +108,7 @@ cp %{SOURCE4} %{app_staging}
cp %{SOURCE5} %{app_staging} cp %{SOURCE5} %{app_staging}
mkdir -p %{app_staging}/charts mkdir -p %{app_staging}/charts
cd %{_builddir}/helm-charts
cp charts/*.tgz %{app_staging}/charts cp charts/*.tgz %{app_staging}/charts
cd %{app_staging} cd %{app_staging}
@ -108,9 +127,12 @@ tar -zcf %{_builddir}/%{app_tarball_armada} -C %{app_staging}/ .
# package fluxcd # package fluxcd
rm -f %{app_staging}/nginx_ingress_controller_manifest.yaml rm -f %{app_staging}/nginx_ingress_controller_manifest.yaml
rm -f %{app_staging}/charts/*.tgz
rm -f %{SOURCE6}
cp %{_builddir}/fluxcd/helm-charts/charts/*.tgz %{app_staging}/charts
fluxcd_dest=%{app_staging}/fluxcd-manifests fluxcd_dest=%{app_staging}/fluxcd-manifests
mkdir -p $fluxcd_dest mkdir -p $fluxcd_dest
cp %{SOURCE6} %{app_staging}/fluxcd-manifests cp %{SOURCE7} %{app_staging}/fluxcd-manifests
cd %{_sourcedir} cd %{_sourcedir}
directories="base nginx-ingress" directories="base nginx-ingress"
for dir in $directories; for dir in $directories;

View File

@ -24,4 +24,3 @@ index aa8693b47..6df0a9809 100644
{{- with .Values.controller.image }} {{- with .Values.controller.image }}
-- --
2.17.1 2.17.1

View File

@ -0,0 +1,32 @@
From 0a23a0fc3a232ae4e50f89d8ddcce1007063c334 Fri Feb 18 23:06:07 2022
Author: Rei Oliveira <Reinildes.JoseMateusOliveira@windriver.com>
Date: Fri Feb 18 23:06:07 2022 -0300
Subject: [PATCH] Add toleration to daemonset
---
diff --git a/charts/ingress-nginx/values.yaml b/charts/ingress-nginx/values.yaml
index 93096dd..f79d4b3 100644
--- a/charts/ingress-nginx/values.yaml
+++ b/charts/ingress-nginx/values.yaml
@@ -207,12 +207,17 @@ controller:
# -- Node tolerations for server scheduling to nodes with taints
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
##
- tolerations: []
+ # tolerations: []
# - key: "key"
# operator: "Equal|Exists"
# value: "value"
# effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)"
+ tolerations:
+ - key: "node-role.kubernetes.io/master"
+ operator: "Exists"
+ effect: "NoSchedule"
+
# -- Affinity and anti-affinity rules for server scheduling to nodes
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
##
--
2.17.1