Compare commits

..

4 Commits

Author SHA1 Message Date
Andrei Kvapil
102ec2a6f2 [ingress] bump version
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-07 14:32:14 +02:00
Andrei Kvapil
b55db668d1 [ingress] Refactor cdiUploadProxy ingress
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-07 14:31:39 +02:00
Andrei Kvapil
49984e64a0 [ingress] Fix vmExportProxy ingress
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-07 14:31:39 +02:00
Andrei Kvapil
7897190c3f [ingress] Introduce Kubernetes API proxy
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2025-05-07 14:31:39 +02:00
11 changed files with 62 additions and 59 deletions

View File

@@ -1,37 +0,0 @@
#!/bin/sh
set -e
REPO_NAME="$(basename "$PWD")"
OUT="../../_out/repos/$REPO_NAME"
TMP="../../_out/repos/$REPO_NAME/historical"
if [ ! -f "versions_map" ]; then
echo "Script should be called from packages/<repo>!" >&2
exit 1
fi
(set -x; rm -rf "$OUT")
(set -x; mkdir -p "$OUT")
while read chart version commit; do
if [ $commit = "HEAD" ]; then
(set -x; helm package -d "$OUT" "$chart")
continue
fi
mkdir -p "$TMP/$chart-$version"
(set -x; git archive "$commit" "$chart" | tar -xf- --strip-components=1 -C "$TMP/$chart-$version")
if [ -d "$TMP/$chart-$version/charts" ]; then
(set -x; find "$TMP/$chart-$version/charts" -type l -maxdepth 1 -mindepth 1) | awk -F/ '{print $NF}' | while read library_chart; do
(set -x; rm -f "$TMP/$chart-$version/charts/$library_chart")
(set -x; cd ../library && git archive "$commit" "$library_chart" | tar -xf- -C "$TMP/$chart-$version/charts/")
done
fi
rm -rf "$tmp"
done < versions_map
(set -x; helm package -d "$OUT" $(find . "$TMP" -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V))
(set -x; cd "$OUT" && helm repo index . --url "http://cozystack.cozy-system.svc/repos/$REPO_NAME")
(set -x; rm -rf "$TMP")

View File

@@ -1,5 +1,14 @@
OUT=../../_out/repos/apps
TMP=../../_out/repos/apps/historical
repo:
../../hack/build-repo.sh
rm -rf "$(OUT)"
mkdir -p "$(OUT)"
awk '$$3 != "HEAD" {print "mkdir -p $(TMP)/" $$1 "-" $$2}' versions_map | sh -ex
awk '$$3 != "HEAD" {print "git archive " $$3 " " $$1 " | tar -xf- --strip-components=1 -C $(TMP)/" $$1 "-" $$2 }' versions_map | sh -ex
helm package -d "$(OUT)" $$(find . $(TMP) -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V)
cd "$(OUT)" && helm repo index . --url http://cozystack.cozy-system.svc/repos/apps
rm -rf "$(TMP)"
fix-chartnames:
find . -maxdepth 2 -name Chart.yaml | awk -F/ '{print $$2}' | while read i; do sed -i "s/^name: .*/name: $$i/" "$$i/Chart.yaml"; done

View File

@@ -1,5 +1,14 @@
OUT=../../_out/repos/extra
TMP=../../_out/repos/extra/historical
repo:
../../hack/build-repo.sh
rm -rf "$(OUT)"
mkdir -p "$(OUT)"
awk '$$3 != "HEAD" {print "mkdir -p $(TMP)/" $$1 "-" $$2}' versions_map | sh -ex
awk '$$3 != "HEAD" {print "git archive " $$3 " " $$1 " | tar -xf- --strip-components=1 -C $(TMP)/" $$1 "-" $$2 }' versions_map | sh -ex
helm package -d "$(OUT)" $$(find . $(TMP) -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V)
cd "$(OUT)" && helm repo index . --url http://cozystack.cozy-system.svc/repos/extra
rm -rf "$(TMP)"
fix-chartnames:
find . -maxdepth 2 -name Chart.yaml | awk -F/ '{print $$2}' | while read i; do sed -i "s/^name: .*/name: $$i/" "$$i/Chart.yaml"; done

View File

@@ -3,4 +3,4 @@ name: ingress
description: NGINX Ingress Controller
icon: /logos/ingress-nginx.svg
type: application
version: 1.5.1
version: 1.6.0

View File

@@ -13,4 +13,5 @@
| `dashboard` | Should ingress serve Cozystack service dashboard | `false` |
| `cdiUploadProxy` | Should ingress serve CDI upload proxy | `false` |
| `virtExportProxy` | Should ingress serve KubeVirt export proxy | `false` |
| `api` | Should ingress serve Cozystack API | `true` |

View File

@@ -0,0 +1,29 @@
{{- $cozyConfig := lookup "v1" "ConfigMap" "cozy-system" "cozystack" }}
{{- $issuerType := (index $cozyConfig.data "clusterissuer") | default "http01" }}
{{- $myNS := lookup "v1" "Namespace" "" .Release.Namespace }}
{{- $host := index $myNS.metadata.annotations "namespace.cozystack.io/host" }}
{{- if .Values.api }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
name: api-{{ .Release.Namespace }}
namespace: default
spec:
ingressClassName: {{ .Release.Namespace }}
rules:
- host: api.{{ $host }}
http:
paths:
- backend:
service:
name: kubernetes
port:
number: 443
path: /
pathType: Prefix
{{- end }}

View File

@@ -10,11 +10,7 @@ kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
cert-manager.io/cluster-issuer: letsencrypt-prod
{{- if eq $issuerType "cloudflare" }}
{{- else }}
acme.cert-manager.io/http01-ingress-class: {{ .Release.Namespace }}
{{- end }}
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
name: cdi-uploadproxy-{{ .Release.Namespace }}
namespace: cozy-kubevirt-cdi
spec:
@@ -30,8 +26,4 @@ spec:
number: 443
path: /
pathType: Prefix
tls:
- hosts:
- cdi-uploadproxy.{{ $host }}
secretName: cdi-uploadproxy-{{ .Release.Namespace }}-tls
{{- end }}

View File

@@ -10,11 +10,7 @@ kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
cert-manager.io/cluster-issuer: letsencrypt-prod
{{- if eq $issuerType "cloudflare" }}
{{- else }}
acme.cert-manager.io/http01-ingress-class: {{ .Release.Namespace }}
{{- end }}
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
name: virt-exportproxy-{{ .Release.Namespace }}
namespace: cozy-kubevirt
spec:
@@ -30,8 +26,4 @@ spec:
number: 443
path: /
pathType: ImplementationSpecific
tls:
- hosts:
virt-exportproxy.{{ $host }}
secretName: virt-exportproxy-{{ .Release.Namespace }}-tls
{{- end }}

View File

@@ -40,6 +40,11 @@
"type": "boolean",
"description": "Should ingress serve KubeVirt export proxy",
"default": false
},
"api": {
"type": "boolean",
"description": "Should ingress serve Cozystack API",
"default": true
}
}
}

View File

@@ -33,3 +33,6 @@ cdiUploadProxy: false
## @param virtExportProxy Should ingress serve KubeVirt export proxy
virtExportProxy: false
## @param api Should ingress serve Cozystack API
api: true

View File

@@ -19,7 +19,7 @@ ingress 1.2.0 28fca4ef
ingress 1.3.0 fde4bcfa
ingress 1.4.0 fd240701
ingress 1.5.0 93bdf411
ingress 1.5.1 HEAD
ingress 1.6.0 HEAD
monitoring 1.0.0 d7cfa53c
monitoring 1.1.0 25221fdc
monitoring 1.2.0 f81be075