| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 1 | input: { |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 2 | network: #Network @name(Network) |
| 3 | subdomain: string @name(Subdomain) |
| 4 | auth: #Auth @name(Authentication) |
| 5 | storageSize: string @name(Storage Size) |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 6 | } |
| 7 | |
| 8 | _domain: "\(input.subdomain).\(input.network.domain)" |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 9 | url: "https://\(_domain)" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 10 | |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 11 | name: "URL Shortener" |
| 12 | namespace: "app-url-shortener" |
| 13 | readme: "URL shortener application will be installed on \(input.network.name) network and be accessible at https://\(_domain)" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 14 | 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] | 15 | icon: """ |
| gio | d2d2df0 | 2025-05-03 19:15:17 +0400 | [diff] [blame] | 16 | <svg width='50px' height='50px' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36.43807123 39.68503937'> |
| 17 | <defs> |
| 18 | <style> |
| 19 | .cls-1 { |
| 20 | fill: currentColor; |
| 21 | } |
| 22 | |
| 23 | .cls-2 { |
| 24 | fill: none; |
| 25 | stroke: #3a3a3a; |
| 26 | stroke-miterlimit: 10; |
| 27 | stroke-width: .98133445px; |
| 28 | } |
| 29 | </style> |
| 30 | </defs> |
| 31 | <rect class='cls-2' x='-11.59787432' y='-9.97439025' width='59.63381987' height='59.63381987'/> |
| 32 | <g> |
| 33 | <circle class='cls-1' cx='3.31578123' cy='26.42191445' r='3.31578123'/> |
| 34 | <circle class='cls-1' cx='3.31578123' cy='13.15878954' r='3.31578123'/> |
| 35 | <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'/> |
| 36 | </g> |
| 37 | </svg>""" |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 38 | |
| gio | 24312cc | 2025-04-20 15:53:15 +0400 | [diff] [blame] | 39 | _webPort: 8080 |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 40 | |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 41 | out: { |
| 42 | ingress: { |
| 43 | "url-shorteners": { |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 44 | auth: input.auth |
| 45 | network: input.network |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 46 | subdomain: input.subdomain |
| 47 | service: { |
| 48 | name: "url-shortener" |
| gio | 24312cc | 2025-04-20 15:53:15 +0400 | [diff] [blame] | 49 | port: _webPort |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 50 | } |
| gio | 1de4958 | 2024-04-21 08:33:57 +0400 | [diff] [blame] | 51 | } |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 52 | } |
| Giorgi Lekveishvili | 6738396 | 2024-03-22 19:27:34 +0400 | [diff] [blame] | 53 | |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 54 | images: { |
| 55 | urlShortener: { |
| 56 | repository: "giolekva" |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 57 | name: "url-shortener" |
| 58 | tag: "latest" |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 59 | pullPolicy: "Always" |
| 60 | } |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 61 | } |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 62 | |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 63 | charts: { |
| 64 | urlShortener: { |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 65 | kind: "GitRepository" |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 66 | address: "https://code.v1.dodo.cloud/helm-charts" |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 67 | branch: "main" |
| 68 | path: "charts/url-shortener" |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 69 | } |
| 70 | } |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 71 | |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 72 | volume: data: size: input.storageSize |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 73 | |
| 74 | helm: { |
| 75 | "url-shortener": { |
| 76 | chart: charts.urlShortener |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 77 | info: "Installing server" |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 78 | values: { |
| 79 | image: { |
| 80 | repository: images.urlShortener.fullName |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 81 | tag: images.urlShortener.tag |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 82 | pullPolicy: images.urlShortener.pullPolicy |
| 83 | } |
| gio | 24312cc | 2025-04-20 15:53:15 +0400 | [diff] [blame] | 84 | port: _webPort |
| gio | fc441e3 | 2024-11-11 16:26:14 +0400 | [diff] [blame] | 85 | persistentVolumeClaimNama: volume.data.name |
| gio | 9bd87ca | 2025-04-20 08:05:34 +0400 | [diff] [blame] | 86 | requireAuth: input.auth.enabled |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 87 | } |
| gio | 7fbd4ad | 2024-08-27 10:06:39 +0400 | [diff] [blame] | 88 | } |
| 89 | } |
| DTabidze | 0993581 | 2024-03-13 13:47:39 +0400 | [diff] [blame] | 90 | } |