From e770f20cb1fb6386ee676be648c29b6de607de52 Mon Sep 17 00:00:00 2001 From: wbsong111 Date: Thu, 27 Mar 2025 12:45:07 +0900 Subject: [PATCH] Update rancher chart to fix error --- .../templates/preinstallHook/certificate.yaml | 19 ----- .../preinstallHook/create-tls-ca-job.yaml | 2 +- .../templates/preinstallHook/ingress.yaml | 72 +++++++++++++++++++ 3 files changed, 73 insertions(+), 20 deletions(-) delete mode 100644 charts/rancher/templates/preinstallHook/certificate.yaml create mode 100644 charts/rancher/templates/preinstallHook/ingress.yaml diff --git a/charts/rancher/templates/preinstallHook/certificate.yaml b/charts/rancher/templates/preinstallHook/certificate.yaml deleted file mode 100644 index 3ca6d0a..0000000 --- a/charts/rancher/templates/preinstallHook/certificate.yaml +++ /dev/null @@ -1,19 +0,0 @@ -{{- if .Values.preinstallHook }} -apiVersion: cert-manager.io/v1 -kind: Certificate -metadata: - name: {{ .Values.ingress.tls.secretName }} - annotations: - "helm.sh/hook": pre-install - "helm.sh/hook-weight": "1" # Certificate 생성 후 실행되도록 우선순위 설정 - "helm.sh/hook-delete-policy": before-hook-creation -spec: - secretName: {{ .Values.ingress.tls.secretName }} - duration: 8750h - renewBefore: 720h - issuerRef: - name: selfsigned-issuer - kind: ClusterIssuer - dnsNames: - - {{ .Values.hostname }} -{{- end }} diff --git a/charts/rancher/templates/preinstallHook/create-tls-ca-job.yaml b/charts/rancher/templates/preinstallHook/create-tls-ca-job.yaml index deeedc3..9149896 100644 --- a/charts/rancher/templates/preinstallHook/create-tls-ca-job.yaml +++ b/charts/rancher/templates/preinstallHook/create-tls-ca-job.yaml @@ -21,7 +21,7 @@ spec: - /bin/sh - -c - | - echo "Waiting for rancher-tls-secret to be created..." + echo "Waiting for {{ .Values.ingress.tls.secretName }} to be created..." while [ $(kubectl get secret {{ .Values.ingress.tls.secretName }} -n {{ .Release.Namespace }} --ignore-not-found | wc -l) -lt 2 ]; do sleep 1 done diff --git a/charts/rancher/templates/preinstallHook/ingress.yaml b/charts/rancher/templates/preinstallHook/ingress.yaml new file mode 100644 index 0000000..52f84d3 --- /dev/null +++ b/charts/rancher/templates/preinstallHook/ingress.yaml @@ -0,0 +1,72 @@ +{{- if .Values.preinstallHook }} +{{- if .Values.ingress.enabled }} +{{- if or (.Capabilities.APIVersions.Has "networking.k8s.io/v1/Ingress") (not (.Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/Ingress")) }} +apiVersion: networking.k8s.io/v1 +{{- else }} +apiVersion: networking.k8s.io/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ template "rancher.fullname" . }} + labels: +{{ include "rancher.labels" . | indent 4 }} + annotations: + "helm.sh/hook": pre-install + "helm.sh/hook-weight": "0" # Certificate 생성 후 실행되도록 우선순위 설정 + "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded,hook-failed +{{- if .Values.ingress.configurationSnippet }} + nginx.ingress.kubernetes.io/configuration-snippet: | + {{- template "configurationSnippet" . }} +{{- end }} +{{- if eq .Values.tls "external" }} + nginx.ingress.kubernetes.io/ssl-redirect: "false" # turn off ssl redirect for external. +{{- else }} + {{- if ne .Values.ingress.tls.source "secret" }} + {{- $certmanagerVer := split "." .Values.certmanager.version -}} + {{- if or (.Capabilities.APIVersions.Has "certmanager.k8s.io/v1alpha1") (and (gt (len $certmanagerVer._0) 0) (eq (int $certmanagerVer._0) 0) (lt (int $certmanagerVer._1) 11)) }} + certmanager.k8s.io/issuer: {{ template "rancher.fullname" . }} + {{- else }} + cert-manager.io/issuer: {{ template "rancher.fullname" . }} + cert-manager.io/issuer-kind: Issuer + {{- end }} + {{- end }} +{{- end }} +{{- if .Values.ingress.includeDefaultExtraAnnotations }} + nginx.ingress.kubernetes.io/proxy-connect-timeout: "30" + nginx.ingress.kubernetes.io/proxy-read-timeout: "1800" + nginx.ingress.kubernetes.io/proxy-send-timeout: "1800" +{{- end }} +{{- if .Values.ingress.extraAnnotations }} +{{ toYaml .Values.ingress.extraAnnotations | indent 4 }} +{{- end }} +spec: +{{- if .Values.ingress.ingressClassName }} + ingressClassName: {{ .Values.ingress.ingressClassName }} +{{- end }} + rules: + - host: {{ .Values.hostname }} # hostname to access rancher server + http: + paths: + - backend: + {{- if or (.Capabilities.APIVersions.Has "networking.k8s.io/v1/Ingress") (not (.Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/Ingress")) }} + service: + name: {{ template "rancher.fullname" . }} + port: + number: {{ .Values.ingress.servicePort }} + {{- else }} + serviceName: {{ template "rancher.fullname" . }} + servicePort: {{ .Values.ingress.servicePort }} + {{- end }} + {{- if or (.Capabilities.APIVersions.Has "networking.k8s.io/v1/Ingress") (not (.Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/Ingress")) }} + pathType: {{ .Values.ingress.pathType }} + path: {{ .Values.ingress.path }} + {{- end }} +{{- if eq .Values.tls "ingress" }} + tls: + - hosts: + - {{ .Values.hostname }} + secretName: {{ .Values.ingress.tls.secretName }} +{{- end }} +{{- end }} +{{- end }} +