blob: c247191cee4a5c59782a86c7a87eeedb5ee29893 [file] [log] [blame]
Giorgi Lekveishvili2c1253c2023-06-13 12:06:42 +04001apiVersion: v1
2kind: PersistentVolumeClaim
3metadata:
4 name: tailscale
5 namespace: {{ .Release.Namespace }}
6 annotations:
7 helm.sh/resource-policy: keep
8spec:
9 accessModes:
10 - ReadWriteOnce
11 resources:
12 requests:
13 storage: 1Gi
14---
Giorgi Lekveishvili81ba75e2023-06-15 21:14:21 +040015apiVersion: headscale.dodo.cloud/v1
16kind: HeadscaleUser
17metadata:
18 name: {{ .Values.username }}
19 namespace: {{ .Release.Namespace }}
20spec:
21 name: {{ .Values.username }}
22 preAuthKey:
23 enabled: true
24 secretName: {{ .Values.preAuthKeySecret }}
25---
Giorgi Lekveishvili2c1253c2023-06-13 12:06:42 +040026apiVersion: apps/v1
27kind: Deployment
28metadata:
29 name: tailscale
30 namespace: {{ .Release.Namespace }}
31spec:
32 selector:
33 matchLabels:
34 app: tailscale
35 replicas: 1
36 template:
37 metadata:
38 labels:
39 app: tailscale
40 spec:
41 volumes:
42 - name: tailscale
43 persistentVolumeClaim:
44 claimName: tailscale
45 containers:
46 - name: tailscale
47 image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
48 imagePullPolicy: {{ .Values.image.pullPolicy }}
49 securityContext:
50 privileged: true
51 capabilities:
52 add:
53 - NET_ADMIN
54 env:
55 - name: TS_KUBE_SECRET
56 value: ""
57 - name: TS_STATE_DIR
58 value: /tailscale-state
Giorgi Lekveishvili81ba75e2023-06-15 21:14:21 +040059 - name: TS_AUTHKEY
60 valueFrom:
61 secretKeyRef:
62 name: {{ .Values.preAuthKeySecret }}
63 key: key
64 - name: TS_HOSTNAME
65 value: {{ .Values.hostname }}
66 - name: TS_ROUTES
67 value: {{ .Values.ipSubnet }}
Giorgi Lekveishvili2c1253c2023-06-13 12:06:42 +040068 - name: TS_EXTRA_ARGS
Giorgi Lekveishvili81ba75e2023-06-15 21:14:21 +040069 value: --hostname= --login-server={{ .Values.loginServer }}
Giorgi Lekveishvili2c1253c2023-06-13 12:06:42 +040070 volumeMounts:
71 - name: tailscale
72 mountPath: /tailscale-state