blob: 55405ac30a3e91a45d78f7dfcf1411f72fbfe6dc [file] [log] [blame]
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: namespaces-ingress-private
namespace: {{ .Global.Id }}
spec:
chart:
spec:
chart: charts/namespaces
sourceRef:
kind: GitRepository
name: pcloud
namespace: {{ .Global.Id }}
interval: 1m0s
values:
pcloudInstanceId: {{ .Global.Id }}
namespacePrefix: {{ .Global.NamespacePrefix }}
namespaces:
- app-ingress-private
---
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: volumes-ingress-private
namespace: {{ .Global.Id }}
spec:
targetNamespace: {{ .Global.NamespacePrefix }}ingress-private
dependsOn:
- name: namespaces-ingress-private
namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/volumes
sourceRef:
kind: GitRepository
name: pcloud
namespace: {{ .Global.Id }}
interval: 1m0s
values:
name: tailscale
size: 1Gi
---
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: ingress-private
namespace: {{ .Global.Id }}
spec:
targetNamespace: {{ .Global.NamespacePrefix }}ingress-private
dependsOn:
- name: volumes-ingress-private
namespace: {{ .Global.Id }}
chart:
spec:
chart: charts/ingress-nginx
sourceRef:
kind: GitRepository
name: pcloud
namespace: {{ .Global.Id }}
interval: 1m0s
values:
fullnameOverride: {{ .Global.Id }}-nginx-private
controller:
service:
enabled: true
type: ClusterIP
ingressClassByName: true
ingressClassResource:
name: {{ .Global.Id }}-ingress-private
enabled: true
default: false
controllerValue: k8s.io/{{ .Global.Id }}-ingress-private
extraArgs:
default-ssl-certificate: "{{ .Global.Id }}-ingress-private/cert-wildcard.p.{{ .Global.Domain }}"
extraVolumes:
- name: tailscale
persistentVolumeClaim:
claimName: tailscale
extraVolumeMounts:
- name: tailscale
mountPath: /tailscale-state
extraContainers:
- name: tailscale
image: tailscale/tailscale:v1.42.0
imagePullPolicy: IfNotPresent
securityContext:
privileged: true
capabilities:
add:
- NET_ADMIN
env:
- name: TS_KUBE_SECRET
value: ""
- name: TS_STATE_DIR
value: /tailscale-state
- name: TS_EXTRA_ARGS
value: --hostname={{ .Global.PCloudEnvName }}-ingress --login-server=headscale.{{ .Global.Domain }} # TODO(gio): take headscale subdomain from configuration