| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 1 | input: { |
| gio | 44f621b | 2024-04-29 09:44:38 +0400 | [diff] [blame] | 2 | network: #Network @name(Network) |
| 3 | subdomain: string @name(Subdomain) |
| 4 | auth: #Auth @name(Authentication) |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 5 | } |
| 6 | |
| 7 | _domain: "\(input.subdomain).\(input.network.domain)" |
| gio | 09a3e5b | 2024-04-26 14:11:06 +0400 | [diff] [blame] | 8 | url: "https://\(_domain)" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 9 | |
| gio | 44f621b | 2024-04-29 09:44:38 +0400 | [diff] [blame] | 10 | name: "URL Shortener" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 11 | namespace: "app-url-shortener" |
| 12 | readme: "URL shortener application will be installed on \(input.network.name) network and be accessible at https://\(_domain)" |
| 13 | description: "Provides URL shortening service. Can be configured to be reachable only from private network or publicly." |
| gio | 8c942d2 | 2024-07-17 13:43:02 +0400 | [diff] [blame] | 14 | icon: """ |
| 15 | <svg width='50px' height='50px' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36.43807123 39.68503937'> |
| 16 | <defs> |
| 17 | <style> |
| 18 | .cls-1 { |
| 19 | fill: currentColor; |
| 20 | } |
| 21 | |
| 22 | .cls-2 { |
| 23 | fill: none; |
| 24 | stroke: #3a3a3a; |
| 25 | stroke-miterlimit: 10; |
| 26 | stroke-width: .98133445px; |
| 27 | } |
| 28 | </style> |
| 29 | </defs> |
| 30 | <rect class='cls-2' x='-11.59787432' y='-9.97439025' width='59.63381987' height='59.63381987'/> |
| 31 | <g> |
| 32 | <circle class='cls-1' cx='3.31578123' cy='26.42191445' r='3.31578123'/> |
| 33 | <circle class='cls-1' cx='3.31578123' cy='13.15878954' r='3.31578123'/> |
| 34 | <path class='cls-1' d='m11.6052343,39.68503937c-.19894668,0-.36473638,0-.56368306-.09947255-.85909349-.31306169-1.30368349-1.26152142-.994735-2.12210113L23.30994116.98987217c.37099907-.83910142,1.3519786-1.21857512,2.19107766-.84757764.75807463.33517241,1.1530841,1.1778629.92575531,1.97494297l-13.26312492,36.47359431c-.23210526.66315561-.89526087,1.09420755-1.55841648,1.09420755m9.94734369,0c-.19894668,0-.36473638,0-.56368306-.09947255-.85909349-.31306169-1.3036827-1.26152142-.994735-2.12210113L33.25728168.98987217c.37099907-.83910142,1.3519786-1.21857512,2.19107766-.84757764.75807463.33517241,1.1530841,1.1778629.92575531,1.97494297l-13.26312492,36.47359431c-.23210526.66315561-.89526087,1.09420755-1.55841648,1.09420755'/> |
| 35 | </g> |
| 36 | </svg>""" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 37 | |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 38 | _httpPortName: "http" |
| 39 | |
| gio | 1de4958 | 2024-04-21 08:33:57 +0400 | [diff] [blame] | 40 | ingress: { |
| 41 | "url-shorteners": { |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 42 | auth: input.auth |
| 43 | network: input.network |
| 44 | subdomain: input.subdomain |
| gio | 1de4958 | 2024-04-21 08:33:57 +0400 | [diff] [blame] | 45 | service: { |
| 46 | name: "url-shortener" |
| 47 | port: name: _httpPortName |
| 48 | } |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 49 | } |
| 50 | } |
| 51 | |
| gio | 1de4958 | 2024-04-21 08:33:57 +0400 | [diff] [blame] | 52 | images: { |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 53 | urlShortener: { |
| 54 | repository: "giolekva" |
| 55 | name: "url-shortener" |
| 56 | tag: "latest" |
| 57 | pullPolicy: "Always" |
| 58 | } |
| 59 | } |
| 60 | |
| gio | 1de4958 | 2024-04-21 08:33:57 +0400 | [diff] [blame] | 61 | charts: { |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 62 | urlShortener: { |
| gio | f884341 | 2024-05-22 16:38:05 +0400 | [diff] [blame] | 63 | kind: "GitRepository" |
| gio | 9877f29 | 2024-08-17 15:11:15 +0400 | [diff] [blame] | 64 | address: "https://code.v1.dodo.cloud/helm-charts" |
| gio | f884341 | 2024-05-22 16:38:05 +0400 | [diff] [blame] | 65 | branch: "main" |
| 66 | path: "charts/url-shortener" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 67 | } |
| 68 | } |
| 69 | |
| gio | 1de4958 | 2024-04-21 08:33:57 +0400 | [diff] [blame] | 70 | helm: { |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 71 | "url-shortener": { |
| Giorgi Lekveishvili | b4fcaa2 | 2024-03-13 16:34:49 +0400 | [diff] [blame] | 72 | chart: charts.urlShortener |
| gio | f9f0bee | 2024-06-11 20:10:05 +0400 | [diff] [blame] | 73 | info: "Installing server" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 74 | values: { |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 75 | storage: { |
| 76 | size: "1Gi" |
| 77 | } |
| 78 | image: { |
| 79 | repository: images.urlShortener.fullName |
| 80 | tag: images.urlShortener.tag |
| 81 | pullPolicy: images.urlShortener.pullPolicy |
| 82 | } |
| Giorgi Lekveishvili | 0ba5e40 | 2024-03-20 15:56:30 +0400 | [diff] [blame] | 83 | portName: _httpPortName |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 84 | requireAuth: input.auth.enabled |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 85 | } |
| 86 | } |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 87 | } |