blob: d63827d3aba9d5475836c18372763dbc25662947 [file] [log] [blame]
Giorgi Lekveishvilida912e72023-07-06 18:48:55 +04001apiVersion: v1
2kind: Secret
3metadata:
4 name: ssh-key
5type: Opaque
6data:
7 private: {{ .Values.sshPrivateKey }}
8---
9apiVersion: v1
10kind: Service
11metadata:
12 name: appmanager
13 namespace: {{ .Release.Namespace }}
14spec:
15 type: ClusterIP
16 selector:
17 app: appmanager
18 ports:
19 - name: http
20 port: 80
21 targetPort: http
22 protocol: TCP
23---
24apiVersion: networking.k8s.io/v1
25kind: Ingress
26metadata:
27 name: ingress
28 namespace: {{ .Release.Namespace }}
29 annotations:
30 acme.cert-manager.io/http01-edit-in-place: "true"
31 cert-manager.io/cluster-issuer: {{ .Values.ingress.certificateIssuer}}
32spec:
33 ingressClassName: {{ .Values.ingress.className }}
34 tls:
35 - hosts:
36 - {{ .Values.ingress.domain }}
37 secretName: cert-appmanager
38 rules:
39 - host: {{ .Values.ingress.domain }}
40 http:
41 paths:
42 - path: /
43 pathType: Prefix
44 backend:
45 service:
46 name: appmanager
47 port:
48 name: http
49---
50apiVersion: apps/v1
51kind: Deployment
52metadata:
53 name: appmanager
54 namespace: {{ .Release.Namespace }}
55spec:
56 selector:
57 matchLabels:
58 app: appmanager
59 replicas: 1
60 template:
61 metadata:
62 labels:
63 app: appmanager
64 spec:
65 volumes:
66 - name: ssh-key
67 secret:
68 secretName: ssh-key
69 containers:
70 - name: appmanager
71 image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
72 imagePullPolicy: {{ .Values.image.pullPolicy }}
73 ports:
74 - name: http
75 containerPort: 8080
76 protocol: TCP
77 command:
78 - pcloud-installer
79 - appmanager
80 - --repo-addr={{ .Values.repoAddr }}
81 - --ssh-key=/pcloud/ssh-key/private
82 - --port=8080
83 volumeMounts:
84 - name: ssh-key
85 readOnly: true
86 mountPath: /pcloud/ssh-key