feat: Yall have spoken, wildcard certs are now a thing
Signed-off-by: Devin Buhl <devin@buhl.casa>
This commit is contained in:
17 files changed
+121
-33
No files matched your search
@@ -401,12 +401,6 @@ To access services from the outside world port forwarded `80` and `443` in your
|
|||||||
|
|
||||||
Now if nothing is working, that is expected. This is DNS after all!
|
Now if nothing is working, that is expected. This is DNS after all!
|
||||||
|
|
||||||
### 🔐 SSL
|
|
||||||
|
|
||||||
By default in this template Kubernetes ingresses are set to use the [Let's Encrypt Staging Environment](https://letsencrypt.org/docs/staging-environment/). This will hopefully reduce issues from ACME on requesting certificates until you are ready to use this in "Production".
|
|
||||||
|
|
||||||
Once you have confirmed there are no issues requesting your certificates replace `letsencrypt-staging` with `letsencrypt-production` in your ingress annotations for `cert-manager.io/cluster-issuer`
|
|
||||||
|
|
||||||
### 🤖 Renovatebot
|
### 🤖 Renovatebot
|
||||||
|
|
||||||
[Renovatebot](https://www.mend.io/free-developer-tools/renovate/) will scan your repository and offer PRs when it finds dependencies out of date. Common dependencies it will discover and update are Flux, Ansible Galaxy Roles, Terraform Providers, Kubernetes Helm Charts, Kubernetes Container Images, Pre-commit hooks updates, and more!
|
[Renovatebot](https://www.mend.io/free-developer-tools/renovate/) will scan your repository and offer PRs when it finds dependencies out of date. Common dependencies it will discover and update are Flux, Ansible Galaxy Roles, Terraform Providers, Kubernetes Helm Charts, Kubernetes Container Images, Pre-commit hooks updates, and more!
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: jetstack
|
name: jetstack
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
installCRDs: true
|
installCRDs: true
|
||||||
extraArgs:
|
extraArgs:
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: bjw-s
|
name: bjw-s
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
controller:
|
controller:
|
||||||
strategy: RollingUpdate
|
strategy: RollingUpdate
|
||||||
@@ -52,7 +56,6 @@ spec:
|
|||||||
enabled: true
|
enabled: true
|
||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-staging
|
|
||||||
external-dns.alpha.kubernetes.io/target: "ipv4.${SECRET_DOMAIN}"
|
external-dns.alpha.kubernetes.io/target: "ipv4.${SECRET_DOMAIN}"
|
||||||
external-dns.home.arpa/enabled: "true"
|
external-dns.home.arpa/enabled: "true"
|
||||||
hajimari.io/icon: video-input-antenna
|
hajimari.io/icon: video-input-antenna
|
||||||
@@ -64,7 +67,6 @@ spec:
|
|||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- *host
|
- *host
|
||||||
secretName: echo-server-tls
|
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 5m
|
cpu: 5m
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: hajimari
|
name: hajimari
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
hajimari:
|
hajimari:
|
||||||
title: Apps
|
title: Apps
|
||||||
@@ -41,7 +45,6 @@ spec:
|
|||||||
enabled: true
|
enabled: true
|
||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-staging
|
|
||||||
nginx.ingress.kubernetes.io/whitelist-source-range: |
|
nginx.ingress.kubernetes.io/whitelist-source-range: |
|
||||||
10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
|
10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
|
||||||
hajimari.io/enable: "false"
|
hajimari.io/enable: "false"
|
||||||
@@ -53,7 +56,6 @@ spec:
|
|||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- *host
|
- *host
|
||||||
secretName: hajimari-tls
|
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
configmap.reloader.stakater.com/reload: hajimari-settings
|
configmap.reloader.stakater.com/reload: hajimari-settings
|
||||||
persistence:
|
persistence:
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ metadata:
|
|||||||
name: flux-webhook
|
name: flux-webhook
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-staging
|
|
||||||
external-dns.alpha.kubernetes.io/target: "ipv4.${SECRET_DOMAIN}"
|
external-dns.alpha.kubernetes.io/target: "ipv4.${SECRET_DOMAIN}"
|
||||||
external-dns.home.arpa/enabled: "true"
|
external-dns.home.arpa/enabled: "true"
|
||||||
hajimari.io/enable: "false"
|
hajimari.io/enable: "false"
|
||||||
@@ -25,4 +24,3 @@ spec:
|
|||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- *host
|
- *host
|
||||||
secretName: flux-webhook-tls
|
|
||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: weave-gitops
|
name: weave-gitops
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
adminUser:
|
adminUser:
|
||||||
create: true
|
create: true
|
||||||
@@ -29,7 +33,6 @@ spec:
|
|||||||
enabled: true
|
enabled: true
|
||||||
className: nginx
|
className: nginx
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-staging
|
|
||||||
nginx.ingress.kubernetes.io/whitelist-source-range: |
|
nginx.ingress.kubernetes.io/whitelist-source-range: |
|
||||||
10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
|
10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
|
||||||
hajimari.io/icon: sawtooth-wave
|
hajimari.io/icon: sawtooth-wave
|
||||||
@@ -41,7 +44,6 @@ spec:
|
|||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- *host
|
- *host
|
||||||
secretName: weave-gitops-tls
|
|
||||||
networkPolicy:
|
networkPolicy:
|
||||||
create: false
|
create: false
|
||||||
metrics:
|
metrics:
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: metrics-server
|
name: metrics-server
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
args:
|
args:
|
||||||
- --kubelet-insecure-tls
|
- --kubelet-insecure-tls
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: stakater
|
name: stakater
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
fullnameOverride: reloader
|
fullnameOverride: reloader
|
||||||
reloader:
|
reloader:
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: kubernetes-dashboard
|
name: kubernetes-dashboard
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
env:
|
env:
|
||||||
TZ: "${TIMEZONE}"
|
TZ: "${TIMEZONE}"
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: bjw-s
|
name: bjw-s
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
controller:
|
controller:
|
||||||
type: cronjob
|
type: cronjob
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: external-dns
|
name: external-dns
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
interval: 2m
|
interval: 2m
|
||||||
# logLevel: debug
|
# logLevel: debug
|
||||||
@@ -43,8 +47,7 @@ spec:
|
|||||||
sources: ["ingress"]
|
sources: ["ingress"]
|
||||||
txtPrefix: k8s.
|
txtPrefix: k8s.
|
||||||
txtOwnerId: default
|
txtOwnerId: default
|
||||||
domainFilters:
|
domainFilters: ["${SECRET_DOMAIN}"]
|
||||||
- "${SECRET_DOMAIN}"
|
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: true
|
enabled: true
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
|
|||||||
@@ -14,17 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: ingress-nginx
|
name: ingress-nginx
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
interval: 15m
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
dependsOn:
|
uninstall:
|
||||||
- name: cert-manager
|
keepHistory: false
|
||||||
namespace: cert-manager
|
|
||||||
values:
|
values:
|
||||||
controller:
|
controller:
|
||||||
extraEnvs:
|
extraEnvs:
|
||||||
@@ -32,8 +32,7 @@ spec:
|
|||||||
value: "${TIMEZONE}"
|
value: "${TIMEZONE}"
|
||||||
service:
|
service:
|
||||||
annotations:
|
annotations:
|
||||||
metallb.universe.tf/loadBalancerIPs: |-
|
metallb.universe.tf/loadBalancerIPs: "${METALLB_INGRESS_ADDR}"
|
||||||
${METALLB_INGRESS_ADDR}
|
|
||||||
externalTrafficPolicy: Local
|
externalTrafficPolicy: Local
|
||||||
publishService:
|
publishService:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -43,8 +42,7 @@ spec:
|
|||||||
client-header-timeout: 120
|
client-header-timeout: 120
|
||||||
client-body-buffer-size: "100M"
|
client-body-buffer-size: "100M"
|
||||||
client-body-timeout: 120
|
client-body-timeout: 120
|
||||||
custom-http-errors: |-
|
custom-http-errors: 400,401,403,404,500,502,503,504
|
||||||
401,403,404,500,501,502,503
|
|
||||||
enable-brotli: "true"
|
enable-brotli: "true"
|
||||||
forwarded-for-header: "CF-Connecting-IP"
|
forwarded-for-header: "CF-Connecting-IP"
|
||||||
hsts-max-age: "31449600"
|
hsts-max-age: "31449600"
|
||||||
@@ -53,10 +51,21 @@ spec:
|
|||||||
proxy-body-size: "100M"
|
proxy-body-size: "100M"
|
||||||
ssl-protocols: "TLSv1.3 TLSv1.2"
|
ssl-protocols: "TLSv1.3 TLSv1.2"
|
||||||
use-forwarded-headers: "true"
|
use-forwarded-headers: "true"
|
||||||
|
log-format-escape-json: "true"
|
||||||
|
log-format-upstream: >-
|
||||||
|
{"time": "$time_iso8601", "remote_addr": "$proxy_protocol_addr",
|
||||||
|
"x_forwarded_for": "$proxy_add_x_forwarded_for", "request_id": "$req_id",
|
||||||
|
"remote_user": "$remote_user", "bytes_sent": $bytes_sent, "request_time": $request_time,
|
||||||
|
"status": $status, "vhost": "$host", "request_proto": "$server_protocol",
|
||||||
|
"path": "$uri", "request_query": "$args", "request_length": $request_length,
|
||||||
|
"duration": $request_time,"method": "$request_method", "http_referrer": "$http_referer",
|
||||||
|
"http_user_agent": "$http_user_agent"}
|
||||||
metrics:
|
metrics:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
extraArgs:
|
||||||
|
default-ssl-certificate: "networking/${SECRET_DOMAIN/./-}-production-tls"
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
configmap.reloader.stakater.com/reload: "cloudflare-networks"
|
configmap.reloader.stakater.com/reload: cloudflare-networks
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: "${SECRET_DOMAIN/./-}-production"
|
||||||
|
namespace: networking
|
||||||
|
spec:
|
||||||
|
secretName: "${SECRET_DOMAIN/./-}-production-tls"
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-production
|
||||||
|
kind: ClusterIssuer
|
||||||
|
commonName: "${SECRET_DOMAIN}"
|
||||||
|
dnsNames:
|
||||||
|
- "${SECRET_DOMAIN}"
|
||||||
|
- "*.${SECRET_DOMAIN}"
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: "${SECRET_DOMAIN/./-}-staging"
|
||||||
|
namespace: networking
|
||||||
|
spec:
|
||||||
|
secretName: "${SECRET_DOMAIN/./-}-staging-tls"
|
||||||
|
issuerRef:
|
||||||
|
name: letsencrypt-staging
|
||||||
|
kind: ClusterIssuer
|
||||||
|
commonName: "${SECRET_DOMAIN}"
|
||||||
|
dnsNames:
|
||||||
|
- "${SECRET_DOMAIN}"
|
||||||
|
- "*.${SECRET_DOMAIN}"
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
resources:
|
||||||
|
- ./certificates.yaml
|
||||||
@@ -1,6 +1,26 @@
|
|||||||
---
|
---
|
||||||
apiVersion: kustomize.toolkit.fluxcd.io/v1beta2
|
apiVersion: kustomize.toolkit.fluxcd.io/v1beta2
|
||||||
kind: Kustomization
|
kind: Kustomization
|
||||||
|
metadata:
|
||||||
|
name: cluster-apps-ingress-nginx-certificates
|
||||||
|
namespace: flux-system
|
||||||
|
labels:
|
||||||
|
substitution.flux.home.arpa/enabled: "true"
|
||||||
|
spec:
|
||||||
|
dependsOn:
|
||||||
|
- name: cluster-apps-cert-manager-issuers
|
||||||
|
path: ./kubernetes/apps/networking/ingress-nginx/certificates
|
||||||
|
prune: true
|
||||||
|
sourceRef:
|
||||||
|
kind: GitRepository
|
||||||
|
name: home-kubernetes
|
||||||
|
wait: true
|
||||||
|
interval: 30m
|
||||||
|
retryInterval: 1m
|
||||||
|
timeout: 3m
|
||||||
|
---
|
||||||
|
apiVersion: kustomize.toolkit.fluxcd.io/v1beta2
|
||||||
|
kind: Kustomization
|
||||||
metadata:
|
metadata:
|
||||||
name: cluster-apps-ingress-nginx
|
name: cluster-apps-ingress-nginx
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
@@ -8,9 +28,7 @@ metadata:
|
|||||||
substitution.flux.home.arpa/enabled: "true"
|
substitution.flux.home.arpa/enabled: "true"
|
||||||
spec:
|
spec:
|
||||||
dependsOn:
|
dependsOn:
|
||||||
- name: cluster-apps-cert-manager
|
- name: cluster-apps-ingress-nginx-certificates
|
||||||
- name: cluster-apps-cert-manager-issuers
|
|
||||||
- name: cluster-apps-metallb
|
|
||||||
- name: cluster-apps-metallb-config
|
- name: cluster-apps-metallb-config
|
||||||
path: ./kubernetes/apps/networking/ingress-nginx/app
|
path: ./kubernetes/apps/networking/ingress-nginx/app
|
||||||
prune: true
|
prune: true
|
||||||
|
|||||||
@@ -14,16 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: k8s-gateway
|
name: k8s-gateway
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
interval: 15m
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 5
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 5
|
retries: 3
|
||||||
dependsOn:
|
uninstall:
|
||||||
- name: metallb
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
fullnameOverride: k8s-gateway
|
fullnameOverride: k8s-gateway
|
||||||
domain: "${SECRET_DOMAIN}"
|
domain: "${SECRET_DOMAIN}"
|
||||||
|
|||||||
@@ -14,13 +14,17 @@ spec:
|
|||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: metallb
|
name: metallb
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
maxHistory: 3
|
||||||
install:
|
install:
|
||||||
createNamespace: true
|
createNamespace: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
upgrade:
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
remediation:
|
remediation:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
crds:
|
crds:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|||||||
Reference in new issue
Block a user