blob: 6e98d5ecee22711fce5d4bddc1a4d78fc0b891c6 [file] [log] [blame]
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +04001import (
2 "encoding/base64"
3)
4
5input: {
6 repoAddr: string
7 sshPrivateKey: string
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +04008 authGroups: string
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +04009}
10
gio44f621b2024-04-29 09:44:38 +040011name: "App Manager"
Giorgi Lekveishvili03d6f4b2024-03-08 13:05:21 +040012namespace: "appmanager"
gio09a3e5b2024-04-26 14:11:06 +040013icon: "<svg xmlns='http://www.w3.org/2000/svg' width='50' height='50' viewBox='0 0 24 24'><path fill='currentColor' d='M19 6h-2c0-2.8-2.2-5-5-5S7 3.2 7 6H5c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m-7-3c1.7 0 3 1.3 3 3H9c0-1.7 1.3-3 3-3m7 17H5V8h14zm-7-8c-1.7 0-3-1.3-3-3H7c0 2.8 2.2 5 5 5s5-2.2 5-5h-2c0 1.7-1.3 3-3 3'/></svg>"
Giorgi Lekveishvili03d6f4b2024-03-08 13:05:21 +040014
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040015_subdomain: "apps"
16_httpPortName: "http"
17
gio09a3e5b2024-04-26 14:11:06 +040018_domain: "\(_subdomain).\(networks.private.domain)"
19url: "https://\(_domain)"
20
gio1de49582024-04-21 08:33:57 +040021ingress: {
22 appmanager: {
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040023 auth: {
24 enabled: true
25 groups: input.authGroups
26 }
27 network: networks.private
28 subdomain: _subdomain
gio1de49582024-04-21 08:33:57 +040029 service: {
30 name: "appmanager"
31 port: name: _httpPortName
32 }
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040033 }
34}
35
gio1de49582024-04-21 08:33:57 +040036images: {
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040037 appmanager: {
38 repository: "giolekva"
39 name: "pcloud-installer"
40 tag: "latest"
41 pullPolicy: "Always"
42 }
43}
44
gio1de49582024-04-21 08:33:57 +040045charts: {
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040046 appmanager: {
47 chart: "charts/appmanager"
48 sourceRef: {
49 kind: "GitRepository"
50 name: "pcloud"
51 namespace: global.id
52 }
53 }
54}
55
gio1de49582024-04-21 08:33:57 +040056helm: {
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040057 appmanager: {
58 chart: charts.appmanager
59 values: {
60 repoAddr: input.repoAddr
61 sshPrivateKey: base64.Encode(null, input.sshPrivateKey)
62 ingress: {
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040063 className: networks.private.ingressClass
gio09a3e5b2024-04-26 14:11:06 +040064 domain: _domain
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040065 certificateIssuer: ""
66 }
67 clusterRoleName: "\(global.id)-appmanager"
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040068 portName: _httpPortName
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040069 image: {
70 repository: images.appmanager.fullName
71 tag: images.appmanager.tag
72 pullPolicy: images.appmanager.pullPolicy
73 }
74 }
75 }
76}