blob: 7ce72e2b17cb0b47eca3772c2978d3d267ff2c67 [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: {
giof8843412024-05-22 16:38:05 +040047 kind: "GitRepository"
48 address: "https://github.com/giolekva/pcloud.git"
49 branch: "main"
50 path: "charts/appmanager"
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040051 }
52}
53
gio1de49582024-04-21 08:33:57 +040054helm: {
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040055 appmanager: {
56 chart: charts.appmanager
57 values: {
58 repoAddr: input.repoAddr
59 sshPrivateKey: base64.Encode(null, input.sshPrivateKey)
60 ingress: {
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040061 className: networks.private.ingressClass
gio09a3e5b2024-04-26 14:11:06 +040062 domain: _domain
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040063 certificateIssuer: ""
64 }
65 clusterRoleName: "\(global.id)-appmanager"
Giorgi Lekveishvili3c91e8b2024-03-25 20:20:14 +040066 portName: _httpPortName
Giorgi Lekveishvilie009a5d2024-01-05 14:10:11 +040067 image: {
68 repository: images.appmanager.fullName
69 tag: images.appmanager.tag
70 pullPolicy: images.appmanager.pullPolicy
71 }
72 }
73 }
74}