Compare commits
468 Commits
32151cc8e8
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ff37139e60 | ||
|
|
6ceb66e69d | ||
|
|
21f4924efd | ||
|
|
e5c4709d27 | ||
|
|
a4efed8410 | ||
|
|
92c45d5f05 | ||
|
|
50fcbcc497 | ||
|
|
f062a8fe1f | ||
|
|
9a996b4d99 | ||
|
|
fe034fb705 | ||
|
|
3e82db3fba | ||
|
|
7719c99958 | ||
|
|
9c7033d629 | ||
|
|
b8357a915c | ||
|
|
283436e790 | ||
|
|
d025b860dd | ||
|
|
b142953cff | ||
|
|
2a3a3e8d11 | ||
|
|
8655d5a9e5 | ||
|
|
ff85469bab | ||
|
|
b7f9964565 | ||
|
|
10e7b53895 | ||
|
|
e3b05e7d57 | ||
|
|
e314a952e3 | ||
|
|
55f2b83ab0 | ||
|
|
40ff0e928c | ||
|
|
9ab0c46284 | ||
|
|
dbc8026f82 | ||
|
|
3f3d7d82c5 | ||
|
|
cdf1793130 | ||
|
|
4b589b8568 | ||
|
|
dc50a5a554 | ||
|
|
642b724d52 | ||
|
|
ec2c94bc46 | ||
|
|
03d86085a8 | ||
|
|
028200031f | ||
|
|
50d884aa37 | ||
|
|
0a2d367d99 | ||
|
|
3b613196f5 | ||
|
|
dd8dbc1bad | ||
|
|
7abe2297c5 | ||
|
|
b2e4fd495c | ||
|
|
49a08906a6 | ||
|
|
80c76321da | ||
|
|
a81c8b4db1 | ||
|
|
24c75e7d6d | ||
|
|
e312a3a3dc | ||
|
|
9cd531b8e7 | ||
|
|
6f63c9a401 | ||
|
|
289475238d | ||
|
|
d799c9d2e5 | ||
|
|
ee67e8321a | ||
|
|
19350a8225 | ||
|
|
96d37f6bce | ||
|
|
7b1c10f08f | ||
|
|
d95dfd183c | ||
|
|
0bbf61f17a | ||
|
|
28dfbe3dac | ||
|
|
a0953ed1ea | ||
|
|
e993f2c4ae | ||
|
|
916e14eb48 | ||
|
|
ab34aa34bf | ||
|
|
f83d048194 | ||
|
|
bd7ab329ed | ||
|
|
1eaebaefd8 | ||
|
|
85abac7aa2 | ||
| cbf676e398 | |||
|
|
a378ed3819 | ||
|
|
3847c3e00b | ||
|
|
4555d1e253 | ||
|
|
7c43ff89ab | ||
|
|
05af340442 | ||
|
|
a19484a912 | ||
|
|
3b649b450d | ||
|
|
5cb59ee386 | ||
|
|
0115a12528 | ||
|
|
1a65ad0ab9 | ||
|
|
8c4288a43d | ||
|
|
5e320302cf | ||
|
|
6599364cae | ||
|
|
5b3602ae31 | ||
|
|
a85114a837 | ||
|
|
56c2c436ed | ||
|
|
40f63782f4 | ||
|
|
7793e4ddce | ||
|
|
8f6afc9fe0 | ||
|
|
2e0b7602f2 | ||
|
|
f8df6fee7c | ||
|
|
8fe2fff63e | ||
|
|
a58fb06956 | ||
|
|
4f416da13d | ||
|
|
de8da2ac4f | ||
|
|
666bcbe0f5 | ||
|
|
a13fe4f96a | ||
|
|
5a238f424b | ||
|
|
a0c9d50c02 | ||
|
|
4a9d8ac3e6 | ||
|
|
2ce53a28b6 | ||
|
|
4ced07d3ae | ||
|
|
f0e761b0da | ||
|
|
0b7303db3c | ||
|
|
014bab0796 | ||
|
|
a4319f8ba4 | ||
|
|
14967b00ca | ||
|
|
41e97a5388 | ||
|
|
d982de3812 | ||
|
|
4ca839068e | ||
|
|
40d7ad96dd | ||
|
|
3e8baf7510 | ||
|
|
907fcb8c1b | ||
|
|
dfa8286257 | ||
|
|
42f88b2e40 | ||
|
|
18958088f4 | ||
|
|
6d4fbd0303 | ||
|
|
8c86f0c28d | ||
|
|
fedaa71f45 | ||
|
|
21393a6886 | ||
|
|
9e26992c3d | ||
|
|
bc355774c0 | ||
|
|
98cf580690 | ||
|
|
e6f017aeac | ||
|
|
d73acc4019 | ||
|
|
df83365de5 | ||
|
|
3c4a742065 | ||
|
|
26be70538e | ||
|
|
e7003d7759 | ||
|
|
698557fd98 | ||
|
|
084752982a | ||
|
|
70ea8bdd09 | ||
|
|
158fb02eab | ||
|
|
3fe60801a2 | ||
|
|
4c30f348a1 | ||
|
|
79fa04dfc3 | ||
|
|
adac716dab | ||
|
|
d54829d30e | ||
|
|
d26867d204 | ||
|
|
8eb0f75120 | ||
|
|
5041f51e3c | ||
|
|
f8df01ef8a | ||
|
|
93d4316005 | ||
|
|
54f6c69e48 | ||
|
|
dad114c439 | ||
|
|
afae1c2d27 | ||
|
|
7b49f7f6cd | ||
|
|
3a1cd4c46b | ||
|
|
4ff2fda18e | ||
|
|
151bea1f18 | ||
|
|
dfcbf6b7a0 | ||
|
|
cc50cdcb4d | ||
|
|
d9c1f462b0 | ||
|
|
6773ebb7a3 | ||
|
|
11560978c0 | ||
|
|
226ea3f9bc | ||
|
|
095c1406f7 | ||
|
|
aeb0392f13 | ||
|
|
1bb0fc84a2 | ||
|
|
afb2879f93 | ||
|
|
76fdf31075 | ||
|
|
23fcf609be | ||
|
|
01529006f0 | ||
|
|
92c3e357fb | ||
|
|
9aeec286e8 | ||
|
|
26fdfa5e8c | ||
|
|
04fef9e43e | ||
|
|
347a40f80e | ||
|
|
4585e84bd1 | ||
|
|
3fb3bc558a | ||
|
|
573f752efa | ||
|
|
a1360dea24 | ||
|
|
4585f05c34 | ||
|
|
f30bcd82d2 | ||
|
|
4970f44bec | ||
|
|
a7e1bf7964 | ||
|
|
e7132a3196 | ||
|
|
969ef4c5be | ||
|
|
2b9daac6d6 | ||
|
|
3351f2d121 | ||
|
|
1b22e30994 | ||
|
|
096a9d9c9c | ||
|
|
fa29ca5c97 | ||
|
|
7c8e76d0eb | ||
|
|
da447748b5 | ||
|
|
c141119254 | ||
|
|
f33515163e | ||
|
|
9f1bab2419 | ||
| 103c422aeb | |||
|
|
96b8bcb588 | ||
|
|
d1d1c09810 | ||
|
|
3ddb9de27b | ||
|
|
41ea4c8a8d | ||
|
|
16e47cdd7a | ||
|
|
1b2f5a8f48 | ||
| c32bd51250 | |||
| d1aa23d3b0 | |||
|
|
a1b73b3bf4 | ||
| 742840e97b | |||
|
|
6d6be7c458 | ||
|
|
644df1afc1 | ||
|
|
543162500e | ||
|
|
158c607d65 | ||
|
|
4c172e1877 | ||
|
|
d1db84867c | ||
| 6358e9a3ff | |||
|
|
a15b0ceb8d | ||
|
|
eb998187e4 | ||
|
|
8a2d02a520 | ||
|
|
02451989c4 | ||
|
|
c08e120169 | ||
|
|
a1b26187bf | ||
|
|
7d742699be | ||
|
|
8728886e12 | ||
|
|
89b046d2d0 | ||
|
|
2d4eaa0784 | ||
|
|
85172a6ccd | ||
|
|
32340f7b60 | ||
|
|
4fc0f42bcc | ||
|
|
ea3e32140b | ||
|
|
dd82a75d2f | ||
|
|
91fb50cfa4 | ||
|
|
8e8059e7a9 | ||
|
|
5d55d8890e | ||
|
|
cfe813fd90 | ||
|
|
1eaad51985 | ||
|
|
fb16d23629 | ||
|
|
3dec3e4b8f | ||
|
|
a5a33a3312 | ||
|
|
a442a73561 | ||
|
|
133d30aaa9 | ||
|
|
59d94e7464 | ||
|
|
4848a5d86f | ||
|
|
1fd960298e | ||
|
|
4b2fee09ed | ||
|
|
7e08f3ab8b | ||
|
|
d30b1e597c | ||
|
|
2684e8c50c | ||
|
|
50e960658a | ||
|
|
2091143c50 | ||
|
|
f0f5bc2e08 | ||
|
|
049f5cd889 | ||
|
|
038980ff8c | ||
|
|
ba828a3ddb | ||
|
|
89fb7bcb32 | ||
|
|
90ade48e40 | ||
|
|
f25ba791c0 | ||
|
|
6f4cb78957 | ||
|
|
43410fd54d | ||
|
|
e43e5c17d5 | ||
|
|
1facdf3d23 | ||
|
|
2e727b9787 | ||
|
|
6d722dac50 | ||
|
|
ef2f008673 | ||
|
|
cf41b5e633 | ||
|
|
2d3b875423 | ||
|
|
cfbddb60f3 | ||
|
|
7567ca5cf5 | ||
|
|
b75c039a8e | ||
|
|
0c9f1ccc21 | ||
|
|
d270672ab3 | ||
|
|
08f2a46981 | ||
|
|
9035cf03d9 | ||
|
|
048478f3b4 | ||
|
|
15fee8ffb0 | ||
|
|
4ff31f5df2 | ||
|
|
3e9dfec1a7 | ||
|
|
edd0022a4b | ||
|
|
752680e3d9 | ||
|
|
f519a0e43f | ||
|
|
94d06752ce | ||
|
|
a4900984f3 | ||
|
|
fb20746128 | ||
|
|
6ea51fac5b | ||
|
|
e40dc7e120 | ||
|
|
788f66c4bc | ||
|
|
4ac870bf1b | ||
|
|
b4f498d40a | ||
|
|
21fa5480b0 | ||
|
|
885f4c0121 | ||
|
|
f6f4d7acbf | ||
|
|
044a21ef5d | ||
|
|
8236cc2195 | ||
|
|
c209d7358c | ||
|
|
11b8e3600c | ||
|
|
c0d86b4ac2 | ||
|
|
e2170dad21 | ||
|
|
2f6dddb3ff | ||
|
|
fb86b2ead0 | ||
|
|
b6cae3f408 | ||
|
|
c233827698 | ||
|
|
bb4d74ff8d | ||
|
|
453fc551b6 | ||
|
|
1bc6a99b53 | ||
|
|
bbc429dc8c | ||
|
|
83f7e09a2a | ||
|
|
be5bc36627 | ||
|
|
9a41dde8af | ||
|
|
599529b691 | ||
|
|
c44553da62 | ||
|
|
ed8bd4610c | ||
|
|
63e5b93f52 | ||
|
|
d08fc37f05 | ||
|
|
3ebb051650 | ||
|
|
32ec0d4403 | ||
|
|
734da3b9b6 | ||
|
|
e963118402 | ||
|
|
a35aedf0c4 | ||
|
|
82fd930297 | ||
|
|
62c481a661 | ||
|
|
089bcc83f0 | ||
|
|
2babeae837 | ||
|
|
43ee41e5a8 | ||
|
|
574543fd34 | ||
|
|
f535df3f8f | ||
|
|
5c4359a7a0 | ||
|
|
9444d89e8a | ||
|
|
fb2bd87439 | ||
|
|
6c13427f01 | ||
|
|
05673fa8f5 | ||
|
|
880cd095a5 | ||
|
|
99b665462d | ||
|
|
df6548789c | ||
|
|
175da64d5b | ||
|
|
0619b69a1c | ||
|
|
d89c95dde7 | ||
|
|
e45b73db68 | ||
|
|
ac96db81d0 | ||
|
|
01d58a98e8 | ||
|
|
7150d78a1b | ||
|
|
a17c4261f4 | ||
|
|
ec43c222a2 | ||
|
|
fb96f9028a | ||
|
|
c59217fea5 | ||
|
|
d2485f57cc | ||
|
|
e9e5a069eb | ||
|
|
fde65cddb6 | ||
|
|
16bc87b4bc | ||
|
|
c29bfc9708 | ||
|
|
3f672e30f6 | ||
|
|
516ef678d1 | ||
|
|
0c63701524 | ||
|
|
0107951b5b | ||
|
|
f6d12ce2aa | ||
|
|
461f1316e6 | ||
|
|
b5e4f603c0 | ||
|
|
6f27866a28 | ||
|
|
7b5b727267 | ||
|
|
a4db222ef0 | ||
|
|
fffbb3d9d0 | ||
|
|
beee76959a | ||
|
|
d9c907eb92 | ||
|
|
6a3bb2a586 | ||
|
|
b4c0484184 | ||
|
|
37d1f84d4f | ||
|
|
0f2e5e36f3 | ||
|
|
37ae2d556e | ||
|
|
882750e3bf | ||
|
|
e91eda06cb | ||
|
|
2c55c273b0 | ||
|
|
4bcbcfab2c | ||
|
|
e8b2f085d7 | ||
|
|
ea26d42f54 | ||
|
|
0fbc32f8f9 | ||
|
|
36f392fb18 | ||
|
|
78eb5f8d68 | ||
|
|
e03ca16ab1 | ||
|
|
fa4940a284 | ||
|
|
8b7fd979e9 | ||
|
|
02d7ee6612 | ||
|
|
b4c0de2704 | ||
|
|
11039f058a | ||
|
|
ee0bc4e663 | ||
|
|
c854facf03 | ||
|
|
4dc489ef39 | ||
|
|
7a7936747c | ||
|
|
fb0368e4fb | ||
|
|
da105993d4 | ||
|
|
9a5f53bf17 | ||
|
|
4b0b377925 | ||
|
|
5ceb9547a3 | ||
|
|
7aef0cfe3e | ||
|
|
f014870501 | ||
|
|
a4df3dec27 | ||
|
|
b1b5a8ebca | ||
|
|
56eb75475d | ||
|
|
67c0e7cfd7 | ||
|
|
3861d64f60 | ||
|
|
db66de06fc | ||
|
|
3a7de0c5dd | ||
|
|
48d6434c40 | ||
|
|
d050db7964 | ||
|
|
445d5814e3 | ||
|
|
019b18078d | ||
|
|
c5ee7f9ebb | ||
|
|
ec6f30d2e3 | ||
|
|
3cd3125d24 | ||
|
|
e2335c3607 | ||
|
|
f7841ff1f1 | ||
|
|
d2fa642b0f | ||
|
|
7fa49c8948 | ||
|
|
bbd52d2183 | ||
|
|
561c5df3e4 | ||
|
|
61fab2a23f | ||
|
|
31e4cc21e4 | ||
|
|
fea0be8b38 | ||
|
|
251c8ce79b | ||
|
|
6d48af3a1e | ||
|
|
9920fbaf2e | ||
|
|
f7286f49f5 | ||
| 2ba4a29060 | |||
| 5848ea2ee6 | |||
| f32a61a1f8 | |||
|
|
56b2966070 | ||
| cf7cd2fe47 | |||
|
|
34fc9c8404 | ||
| 020f2993e9 | |||
|
|
d6c9193f50 | ||
|
|
c6d3aa2f2f | ||
|
|
625411fb1d | ||
| 7460b245be | |||
| 5d8d0f90f3 | |||
| a8b644587d | |||
| a277d1357e | |||
| c92222aff7 | |||
| 9c36b4b378 | |||
| 0de10ea272 | |||
| 564cd75cdd | |||
| 671cde3727 | |||
| 96503ddaca | |||
| cf01e8133f | |||
|
|
73efc90a0a | ||
|
|
4acca04c3c | ||
|
|
d6d7794cac | ||
|
|
6cc1a2bad2 | ||
|
|
176b1a21a6 | ||
|
|
797eee2ecf | ||
|
|
cc9506b3cf | ||
|
|
3cda531fa8 | ||
|
|
dca0c8ff83 | ||
|
|
7d9189cd4a | ||
|
|
9d8c512560 | ||
|
|
fdaa305172 | ||
|
|
80a467a190 | ||
|
|
47b7713764 | ||
|
|
aa7c57505f | ||
|
|
d4b3c9e589 | ||
|
|
359d392493 | ||
|
|
b5843f93b2 | ||
|
|
e13da21e75 | ||
|
|
67dc9041ca | ||
|
|
80cf3496af | ||
|
|
646cc3caba | ||
|
|
e08edb9193 | ||
|
|
8f9ecd8b16 | ||
|
|
fc1d345721 | ||
|
|
144a2f8b2f | ||
|
|
0a4843c77c | ||
|
|
f31e32faaf | ||
|
|
9d80e0ee40 | ||
|
|
17b4198208 | ||
|
|
dd0c49e360 | ||
|
|
1d965efb5d | ||
|
|
f3725b7640 | ||
|
|
c9685a608f | ||
|
|
a3e0fbeb08 | ||
|
|
cf01d396c7 | ||
|
|
e261b15860 | ||
|
|
9d0ec4cc31 | ||
|
|
5ffb3b248d | ||
|
|
d18bd12ef1 |
14
index.yaml
14
index.yaml
@@ -1,14 +0,0 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
tatort:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.0.1
|
||||
created: "2025-03-07T10:48:39.173819+01:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: 73725798d0d322a74b51b61f6cd02c22f434256029ea2732884c727ac01d8bcb
|
||||
name: tatort
|
||||
type: application
|
||||
urls:
|
||||
- https://gitea.innohub.local:3000/innohub/charts/raw/main/tatort-0.1.1.tgz
|
||||
version: 0.1.1
|
||||
generated: "2025-03-07T10:48:39.173447+01:00"
|
||||
19
mantisbt/index.yaml
Normal file
19
mantisbt/index.yaml
Normal file
@@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
mantisbt:
|
||||
- apiVersion: v2
|
||||
appVersion: 2.27.0
|
||||
created: "2025-12-19T08:44:25.766178+01:00"
|
||||
dependencies:
|
||||
- condition: mariadb.enabled
|
||||
name: mariadb
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 19.*.*
|
||||
description: MantisBT Bug Tracker - A Helm chart for Kubernetes
|
||||
digest: 120476f60a1fb4d84ce06e50e4c57f75722e9fca06ac83fb353724ae0bb0b915
|
||||
name: mantisbt
|
||||
type: application
|
||||
urls:
|
||||
- https://gitea.innovation-hub-niedersachsen.de/innohub/charts/raw/main/mantisbt/mantisbt-0.4.3.tgz
|
||||
version: 0.4.3
|
||||
generated: "2025-12-19T08:44:25.763065+01:00"
|
||||
BIN
mantisbt/mantisbt-0.4.3.tgz
Normal file
BIN
mantisbt/mantisbt-0.4.3.tgz
Normal file
Binary file not shown.
12
mantisbt/mantisbt/Chart.yaml
Normal file
12
mantisbt/mantisbt/Chart.yaml
Normal file
@@ -0,0 +1,12 @@
|
||||
apiVersion: v2
|
||||
name: mantisbt
|
||||
description: MantisBT Bug Tracker - A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: "0.4.3"
|
||||
appVersion: "2.27.0"
|
||||
|
||||
dependencies:
|
||||
- name: mariadb
|
||||
version: "19.*.*"
|
||||
repository: "https://charts.bitnami.com/bitnami"
|
||||
condition: mariadb.enabled
|
||||
BIN
mantisbt/mantisbt/charts/mariadb-19.1.2.tgz
Normal file
BIN
mantisbt/mantisbt/charts/mariadb-19.1.2.tgz
Normal file
Binary file not shown.
117
mantisbt/mantisbt/templates/_helpers.tpl
Normal file
117
mantisbt/mantisbt/templates/_helpers.tpl
Normal file
@@ -0,0 +1,117 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "mantisbt.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "mantisbt.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "mantisbt.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "mantisbt.labels" -}}
|
||||
helm.sh/chart: {{ include "mantisbt.chart" . }}
|
||||
{{ include "mantisbt.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "mantisbt.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "mantisbt.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "mantisbt.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "mantisbt.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified database name.
|
||||
*/}}
|
||||
{{- define "mantisbt.databaseHost" -}}
|
||||
{{- if .Values.mariadb.enabled }}
|
||||
{{- printf "%s-mariadb" (include "mantisbt.fullname" .) }}
|
||||
{{- else }}
|
||||
{{- .Values.externalDatabase.host }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Get database port
|
||||
*/}}
|
||||
{{- define "mantisbt.databasePort" -}}
|
||||
{{- if .Values.mariadb.enabled }}
|
||||
{{- printf "3306" }}
|
||||
{{- else }}
|
||||
{{- .Values.externalDatabase.port | default "3306" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Get database name
|
||||
*/}}
|
||||
{{- define "mantisbt.databaseName" -}}
|
||||
{{- if .Values.mariadb.enabled }}
|
||||
{{- .Values.mariadb.auth.database }}
|
||||
{{- else }}
|
||||
{{- .Values.externalDatabase.database }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Get database user
|
||||
*/}}
|
||||
{{- define "mantisbt.databaseUser" -}}
|
||||
{{- if .Values.mariadb.enabled }}
|
||||
{{- .Values.mariadb.auth.username }}
|
||||
{{- else }}
|
||||
{{- .Values.externalDatabase.username }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Get database password
|
||||
*/}}
|
||||
{{- define "mantisbt.databasePassword" -}}
|
||||
{{- if .Values.mariadb.enabled }}
|
||||
{{- .Values.mariadb.auth.password }}
|
||||
{{- else }}
|
||||
{{- .Values.externalDatabase.password }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
158
mantisbt/mantisbt/templates/deployment.yaml
Normal file
158
mantisbt/mantisbt/templates/deployment.yaml
Normal file
@@ -0,0 +1,158 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "mantisbt.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
component: mantisbt
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- if .Values.deploymentLabels }}
|
||||
{{- toYaml .Values.deploymentLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
strategy:
|
||||
{{ toYaml .Values.updateStrategy | nindent 4 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
component: mantisbt
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
component: mantisbt
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
serviceAccountName: {{ template "mantisbt.serviceAccountName" . }}
|
||||
initContainers:
|
||||
- name: wait-for-db
|
||||
image: busybox:1.36
|
||||
command:
|
||||
- sh
|
||||
- -c
|
||||
- |
|
||||
echo "Waiting for database at {{ include "mantisbt.databaseHost" . }}:{{ include "mantisbt.databasePort" . }}..."
|
||||
until nc -z {{ include "mantisbt.databaseHost" . }} {{ include "mantisbt.databasePort" . }}; do
|
||||
echo "Database not ready, waiting..."
|
||||
sleep 3
|
||||
done
|
||||
echo "Database is ready!"
|
||||
sleep 5
|
||||
- name: fix-permissions
|
||||
image: busybox:1.36
|
||||
command:
|
||||
- sh
|
||||
- -c
|
||||
- |
|
||||
echo "Fixing permissions on config and uploads directories..."
|
||||
# www-data has UID 33 in Debian-based images
|
||||
chown -R 33:33 /var/www/html/config
|
||||
chown -R 33:33 /var/www/html/uploads
|
||||
chmod -R 755 /var/www/html/config
|
||||
chmod -R 755 /var/www/html/uploads
|
||||
echo "Permissions fixed:"
|
||||
ls -la /var/www/html/config
|
||||
ls -la /var/www/html/uploads
|
||||
volumeMounts:
|
||||
- name: config
|
||||
mountPath: /var/www/html/config
|
||||
{{- if .Values.persistence.enabled }}
|
||||
- name: uploads
|
||||
mountPath: /var/www/html/uploads
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 80
|
||||
env:
|
||||
# xlrl/mantisbt uses MANTIS_TIMEZONE and MANTIS_ENABLE_ADMIN
|
||||
- name: MANTIS_TIMEZONE
|
||||
value: {{ .Values.mantisbt.timezone | default "Europe/Berlin" | quote }}
|
||||
- name: MANTIS_ENABLE_ADMIN
|
||||
value: {{ .Values.mantisbt.enableAdmin | default "1" | quote }}
|
||||
# Master salt from secret - keeps crypto keys stable across deployments
|
||||
- name: MASTER_SALT
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "mantisbt.fullname" . }}-secret
|
||||
key: master-salt
|
||||
{{- range $key := .Values.env }}
|
||||
{{- if .value }}
|
||||
- name: {{ .name }}
|
||||
value: {{ .value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key := .Values.secretEnv }}
|
||||
- name: {{ .name }}
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "mantisbt.fullname" $ }}-secret
|
||||
key: {{ .name }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
{{- tpl . $ | nindent 10 }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
volumeMounts:
|
||||
# xlrl/mantisbt expects config as a volume mount - will be created on first run
|
||||
- name: config
|
||||
mountPath: /var/www/html/config
|
||||
{{- if .Values.persistence.enabled }}
|
||||
- name: uploads
|
||||
mountPath: /var/www/html/uploads
|
||||
{{- end }}
|
||||
livenessProbe:
|
||||
tcpSocket:
|
||||
port: http
|
||||
initialDelaySeconds: 180
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 6
|
||||
readinessProbe:
|
||||
tcpSocket:
|
||||
port: http
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 5
|
||||
timeoutSeconds: 3
|
||||
failureThreshold: 10
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
# Persistent config volume - xlrl expects this to be writable
|
||||
- name: config
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ template "mantisbt.fullname" . }}-config
|
||||
{{- if .Values.persistence.enabled }}
|
||||
- name: uploads
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ template "mantisbt.fullname" . }}-uploads
|
||||
{{- end }}
|
||||
18
mantisbt/mantisbt/templates/hpa.yaml
Normal file
18
mantisbt/mantisbt/templates/hpa.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.autoscaling.enabled -}}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "mantisbt.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
component: mantisbt
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "mantisbt.fullname" . }}
|
||||
{{ toYaml .Values.autoscaling.config | indent 2 }}
|
||||
{{- end -}}
|
||||
47
mantisbt/mantisbt/templates/ingress.yaml
Normal file
47
mantisbt/mantisbt/templates/ingress.yaml
Normal file
@@ -0,0 +1,47 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "mantisbt.fullname" . -}}
|
||||
{{- $servicePort := .Values.service.port -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
{{- $ingressPathType := .Values.ingress.pathtype -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
component: mantisbt
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.className }}
|
||||
ingressClassName: {{ .Values.ingress.className }}
|
||||
{{- end }}
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
pathType: {{ $ingressPathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: {{ $servicePort }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
57
mantisbt/mantisbt/templates/pvc.yaml
Normal file
57
mantisbt/mantisbt/templates/pvc.yaml
Normal file
@@ -0,0 +1,57 @@
|
||||
{{- if .Values.persistence.enabled -}}
|
||||
# Config PVC - xlrl/mantisbt needs writable config directory
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ template "mantisbt.fullname" . }}-config
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- with .Values.persistence.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .Values.persistence.accessMode | quote }}
|
||||
{{- if .Values.persistence.storageClass }}
|
||||
{{- if (eq "-" .Values.persistence.storageClass) }}
|
||||
storageClassName: ""
|
||||
{{- else }}
|
||||
storageClassName: {{ .Values.persistence.storageClass | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
resources:
|
||||
requests:
|
||||
storage: "100Mi"
|
||||
---
|
||||
# Uploads PVC
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ template "mantisbt.fullname" . }}-uploads
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- with .Values.persistence.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .Values.persistence.accessMode | quote }}
|
||||
{{- if .Values.persistence.storageClass }}
|
||||
{{- if (eq "-" .Values.persistence.storageClass) }}
|
||||
storageClassName: ""
|
||||
{{- else }}
|
||||
storageClassName: {{ .Values.persistence.storageClass | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.size | quote }}
|
||||
{{- end -}}
|
||||
17
mantisbt/mantisbt/templates/secret.yaml
Normal file
17
mantisbt/mantisbt/templates/secret.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ template "mantisbt.fullname" . }}-secret
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
type: Opaque
|
||||
stringData:
|
||||
database-password: {{ include "mantisbt.databasePassword" . | quote }}
|
||||
# Master salt - use provided value or generate random one
|
||||
master-salt: {{ .Values.mantisbt.masterSalt | default (randAlphaNum 64 | b64enc) | quote }}
|
||||
{{- range .Values.secretEnv }}
|
||||
{{ .name }}: {{ .value | quote }}
|
||||
{{- end }}
|
||||
25
mantisbt/mantisbt/templates/service.yaml
Normal file
25
mantisbt/mantisbt/templates/service.yaml
Normal file
@@ -0,0 +1,25 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "mantisbt.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
chart: {{ template "mantisbt.chart" . }}
|
||||
component: mantisbt
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 80
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
app: {{ template "mantisbt.name" . }}
|
||||
component: mantisbt
|
||||
release: {{ .Release.Name }}
|
||||
13
mantisbt/mantisbt/templates/serviceaccount.yaml
Normal file
13
mantisbt/mantisbt/templates/serviceaccount.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "mantisbt.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "mantisbt.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
114
mantisbt/mantisbt/values.yaml
Normal file
114
mantisbt/mantisbt/values.yaml
Normal file
@@ -0,0 +1,114 @@
|
||||
platform: kubernetes
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
annotations: {}
|
||||
automount: false
|
||||
|
||||
image:
|
||||
# xlrl/mantisbt - well maintained, PHP 8.3, good documentation
|
||||
repository: xlrl/mantisbt
|
||||
tag: "latest"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
annotations: {}
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
className: traefik
|
||||
annotations: {}
|
||||
path: /
|
||||
pathtype: Prefix
|
||||
hosts:
|
||||
- mantisbt.local
|
||||
tls: []
|
||||
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 100m
|
||||
limits:
|
||||
memory: 512Mi
|
||||
cpu: 500m
|
||||
|
||||
nodeSelector: {}
|
||||
tolerations: []
|
||||
affinity: {}
|
||||
|
||||
autoscaling:
|
||||
enabled: false
|
||||
config:
|
||||
minReplicas: 1
|
||||
maxReplicas: 5
|
||||
targetCPUUtilizationPercentage: 80
|
||||
|
||||
deploymentLabels: {}
|
||||
podLabels: {}
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
accessMode: ReadWriteOnce
|
||||
size: 5Gi
|
||||
storageClass: ""
|
||||
annotations: {}
|
||||
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
maxSurge: 1
|
||||
|
||||
podSecurityContext: {}
|
||||
securityContext: {}
|
||||
|
||||
# MantisBT specific configuration
|
||||
mantisbt:
|
||||
# Enable admin folder for installation (set to "0" after install!)
|
||||
enableAdmin: "1"
|
||||
|
||||
# Timezone (xlrl uses MANTIS_TIMEZONE)
|
||||
timezone: "Europe/Berlin"
|
||||
|
||||
# Master Salt for crypto - IMPORTANT: Set this to keep it stable across deployments!
|
||||
# If not set, a random one will be generated (but changes on each deploy)
|
||||
# Generate with: openssl rand -base64 32
|
||||
masterSalt: ""
|
||||
|
||||
# Environment variables
|
||||
env: []
|
||||
|
||||
secretEnv: []
|
||||
|
||||
extraEnvFrom: []
|
||||
|
||||
extraDeploy: []
|
||||
|
||||
# MariaDB subchart configuration
|
||||
mariadb:
|
||||
enabled: true
|
||||
auth:
|
||||
database: mantisbt
|
||||
username: mantisbt
|
||||
password: "mantisbt123"
|
||||
rootPassword: "rootpassword123"
|
||||
primary:
|
||||
persistence:
|
||||
enabled: true
|
||||
size: 8Gi
|
||||
storageClass: ""
|
||||
|
||||
# External database (if mariadb.enabled=false)
|
||||
externalDatabase:
|
||||
host: ""
|
||||
port: 3306
|
||||
database: mantisbt
|
||||
username: mantisbt
|
||||
password: ""
|
||||
existingSecret: ""
|
||||
existingSecretPasswordKey: ""
|
||||
BIN
praktikum/.DS_Store
vendored
Normal file
BIN
praktikum/.DS_Store
vendored
Normal file
Binary file not shown.
14
praktikum/index.yaml
Normal file
14
praktikum/index.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
praktikum:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.1.8
|
||||
created: "2026-01-09T09:43:57.521772+01:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: 24f32e8cc2654badaac189027e4fb612896f9283189fa6fd0f80b5eb4d1d17cf
|
||||
name: praktikum
|
||||
type: application
|
||||
urls:
|
||||
- https://gitea.innovation-hub-niedersachsen.de/innohub/charts/raw/main/praktikum/praktikum-0.1.6.tgz
|
||||
version: 0.1.6
|
||||
generated: "2026-01-09T09:43:57.521169+01:00"
|
||||
BIN
praktikum/praktikum-0.1.6.tgz
Normal file
BIN
praktikum/praktikum-0.1.6.tgz
Normal file
Binary file not shown.
6
praktikum/praktikum/Chart.yaml
Normal file
6
praktikum/praktikum/Chart.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: praktikum
|
||||
description: A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: "0.1.6"
|
||||
appVersion: "0.1.8"
|
||||
62
praktikum/praktikum/templates/_helpers.tpl
Normal file
62
praktikum/praktikum/templates/_helpers.tpl
Normal file
@@ -0,0 +1,62 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "praktikum.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "praktikum.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "praktikum.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "praktikum.labels" -}}
|
||||
helm.sh/chart: {{ include "praktikum.chart" . }}
|
||||
{{ include "praktikum.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "praktikum.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "praktikum.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "praktikum.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "praktikum.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
89
praktikum/praktikum/templates/deployment.yaml
Normal file
89
praktikum/praktikum/templates/deployment.yaml
Normal file
@@ -0,0 +1,89 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "praktikum.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
chart: {{ template "praktikum.chart" . }}
|
||||
component: praktikum
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- if .Values.deploymentLabels }}
|
||||
{{- toYaml .Values.deploymentLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
strategy:
|
||||
{{ toYaml .Values.updateStrategy | nindent 4 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
component: praktikum
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
labels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
component: praktikum
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
serviceAccountName: {{ template "praktikum.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
env:
|
||||
{{- range $key := .Values.env }}
|
||||
{{- if .value }}
|
||||
- name: {{ .name }}
|
||||
value: {{ .value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key := .Values.secretEnv }}
|
||||
- name: {{ .name }}
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "praktikum.fullname" $ }}-secret
|
||||
key: {{ .name }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
{{- tpl . $ | nindent 10 }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- if .Values.persistence.enabled }}
|
||||
volumeMounts:
|
||||
- name: data
|
||||
mountPath: {{ .Values.persistence.mountPath }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.persistence.enabled }}
|
||||
volumes:
|
||||
- name: data
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ template "praktikum.fullname" . }}-data
|
||||
{{- end }}
|
||||
18
praktikum/praktikum/templates/hpa.yaml
Normal file
18
praktikum/praktikum/templates/hpa.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.autoscaling.enabled -}}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "praktikum.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
chart: {{ template "praktikum.chart" . }}
|
||||
component: praktikum
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "praktikum.fullname" . }}
|
||||
{{ toYaml .Values.autoscaling.config | indent 2 }}
|
||||
{{- end -}}
|
||||
45
praktikum/praktikum/templates/ingress.yaml
Normal file
45
praktikum/praktikum/templates/ingress.yaml
Normal file
@@ -0,0 +1,45 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "praktikum.fullname" . -}}
|
||||
{{- $servicePort := .Values.service.port -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
{{- $ingressPathType := .Values.ingress.pathtype -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
chart: {{ template "praktikum.chart" . }}
|
||||
component: praktikum
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
pathType: {{ $ingressPathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: 3000
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
28
praktikum/praktikum/templates/pvc.yaml
Normal file
28
praktikum/praktikum/templates/pvc.yaml
Normal file
@@ -0,0 +1,28 @@
|
||||
{{- if .Values.persistence.enabled -}}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ template "praktikum.fullname" . }}-data
|
||||
labels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
chart: {{ template "praktikum.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- with .Values.persistence.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .Values.persistence.accessMode | quote }}
|
||||
{{- if .Values.persistence.storageClass }}
|
||||
{{- if (eq "-" .Values.persistence.storageClass) }}
|
||||
storageClassName: ""
|
||||
{{- else }}
|
||||
storageClassName: {{ .Values.persistence.storageClass | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.size | quote }}
|
||||
{{- end -}}
|
||||
26
praktikum/praktikum/templates/service.yaml
Normal file
26
praktikum/praktikum/templates/service.yaml
Normal file
@@ -0,0 +1,26 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "praktikum.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
chart: {{ template "praktikum.chart" . }}
|
||||
component: praktikum
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 3000
|
||||
protocol: TCP
|
||||
name: npm
|
||||
selector:
|
||||
app: {{ template "praktikum.name" . }}
|
||||
component: praktikum
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
13
praktikum/praktikum/templates/serviceaccount.yaml
Normal file
13
praktikum/praktikum/templates/serviceaccount.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "praktikum.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "praktikum.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
75
praktikum/praktikum/values.yaml
Normal file
75
praktikum/praktikum/values.yaml
Normal file
@@ -0,0 +1,75 @@
|
||||
platform: kubernetes
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
annotations: ""
|
||||
automount: false
|
||||
|
||||
image:
|
||||
repository: gitea.innovation-hub-niedersachsen.de/innohub/praktikum
|
||||
tag: v0.1.8
|
||||
pullPolicy: IfNotPresent
|
||||
insecure: true
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 3000
|
||||
annotations: {}
|
||||
|
||||
endpoint: praktikum.local
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
path: /
|
||||
pathtype: ImplementationSpecific
|
||||
hosts:
|
||||
- praktikum.innohub.local
|
||||
tls:
|
||||
|
||||
route:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 300m
|
||||
limits:
|
||||
memory: 1Gi
|
||||
cpu: 500m
|
||||
|
||||
nodeSelector: {}
|
||||
tolerations: []
|
||||
affinity: {}
|
||||
|
||||
autoscaling:
|
||||
enabled: true
|
||||
config:
|
||||
minReplicas: 1
|
||||
maxReplicas: 10
|
||||
targetCPUUtilizationPercentage: 80
|
||||
|
||||
deploymentLabels: {}
|
||||
podLabels: {}
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
mountPath: /app/data
|
||||
accessMode: ReadWriteOnce
|
||||
size: 5Gi
|
||||
storageClass: ""
|
||||
annotations: {}
|
||||
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
maxSurge: 1
|
||||
|
||||
podSecurityContext: {}
|
||||
securityContext: {}
|
||||
|
||||
extraDeploy: []
|
||||
14
qr-formlink/index.yaml
Normal file
14
qr-formlink/index.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
qr-formlink:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.0.3
|
||||
created: "2025-09-30T10:45:36.24599+02:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: e5749a306ec24b7c1194a4a41a69ec8dd31f59fa627db00e673797a83d5dde13
|
||||
name: qr-formlink
|
||||
type: application
|
||||
urls:
|
||||
- https://gitea.innovation-hub-niedersachsen.de/innohub/charts/raw/main/qr-formlink/qr-formlink-0.0.3.tgz
|
||||
version: 0.0.3
|
||||
generated: "2025-09-30T10:45:36.245443+02:00"
|
||||
BIN
qr-formlink/qr-formlink-0.0.3.tgz
Normal file
BIN
qr-formlink/qr-formlink-0.0.3.tgz
Normal file
Binary file not shown.
6
qr-formlink/qr-formlink/Chart.yaml
Normal file
6
qr-formlink/qr-formlink/Chart.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: qr-formlink
|
||||
description: A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: "0.0.3"
|
||||
appVersion: "0.0.3"
|
||||
62
qr-formlink/qr-formlink/templates/_helpers.tpl
Normal file
62
qr-formlink/qr-formlink/templates/_helpers.tpl
Normal file
@@ -0,0 +1,62 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "qr-formlink.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "qr-formlink.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "qr-formlink.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "qr-formlink.labels" -}}
|
||||
helm.sh/chart: {{ include "qr-formlink.chart" . }}
|
||||
{{ include "qr-formlink.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "qr-formlink.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "qr-formlink.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "qr-formlink.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "qr-formlink.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
78
qr-formlink/qr-formlink/templates/deployment.yaml
Normal file
78
qr-formlink/qr-formlink/templates/deployment.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "qr-formlink.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
chart: {{ template "qr-formlink.chart" . }}
|
||||
component: qr-formlink
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- if .Values.deploymentLabels }}
|
||||
{{- toYaml .Values.deploymentLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
strategy:
|
||||
{{ toYaml .Values.updateStrategy | nindent 4 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
component: qr-formlink
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
labels:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
component: qr-formlink
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
serviceAccountName: {{ template "qr-formlink.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
env:
|
||||
{{- range $key := .Values.env }}
|
||||
{{- if .value }}
|
||||
- name: {{ .name }}
|
||||
value: {{ .value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key := .Values.secretEnv }}
|
||||
- name: {{ .name }}
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "qr-formlink.fullname" $ }}-secret
|
||||
key: {{ .name }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
{{- tpl . $ | nindent 10 }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
18
qr-formlink/qr-formlink/templates/hpa.yaml
Normal file
18
qr-formlink/qr-formlink/templates/hpa.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.autoscaling.enabled -}}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "qr-formlink.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
chart: {{ template "qr-formlink.chart" . }}
|
||||
component: qr-formlink
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "qr-formlink.fullname" . }}
|
||||
{{ toYaml .Values.autoscaling.config | indent 2 }}
|
||||
{{- end -}}
|
||||
45
qr-formlink/qr-formlink/templates/ingress.yaml
Normal file
45
qr-formlink/qr-formlink/templates/ingress.yaml
Normal file
@@ -0,0 +1,45 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "qr-formlink.fullname" . -}}
|
||||
{{- $servicePort := .Values.service.port -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
{{- $ingressPathType := .Values.ingress.pathtype -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
chart: {{ template "qr-formlink.chart" . }}
|
||||
component: qr-formlink
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
pathType: {{ $ingressPathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: 80
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
26
qr-formlink/qr-formlink/templates/service.yaml
Normal file
26
qr-formlink/qr-formlink/templates/service.yaml
Normal file
@@ -0,0 +1,26 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "qr-formlink.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
chart: {{ template "qr-formlink.chart" . }}
|
||||
component: qr-formlink
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 80
|
||||
protocol: TCP
|
||||
name: npm
|
||||
selector:
|
||||
app: {{ template "qr-formlink.name" . }}
|
||||
component: qr-formlink
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
13
qr-formlink/qr-formlink/templates/serviceaccount.yaml
Normal file
13
qr-formlink/qr-formlink/templates/serviceaccount.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "qr-formlink.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "qr-formlink.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
76
qr-formlink/qr-formlink/values.yaml
Normal file
76
qr-formlink/qr-formlink/values.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
platform: kubernetes
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
annotations: ""
|
||||
automount: false
|
||||
|
||||
image:
|
||||
repository: gitea.innovation-hub-niedersachsen.de/innohub/qr-formlink
|
||||
tag: v0.0.3
|
||||
pullPolicy: IfNotPresent
|
||||
insecure: true
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
annotations: {}
|
||||
|
||||
endpoint: qr-formlink.local
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
path: /
|
||||
pathtype: ImplementationSpecific
|
||||
hosts:
|
||||
- qr-formlink.innohub.local
|
||||
tls:
|
||||
|
||||
route:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 300m
|
||||
limits:
|
||||
memory: 1Gi
|
||||
cpu: 500m
|
||||
|
||||
nodeSelector: {}
|
||||
tolerations: []
|
||||
affinity: {}
|
||||
|
||||
autoscaling:
|
||||
enabled: true
|
||||
config:
|
||||
minReplicas: 1
|
||||
maxReplicas: 10
|
||||
targetCPUUtilizationPercentage: 80
|
||||
|
||||
deploymentLabels: {}
|
||||
podLabels: {}
|
||||
|
||||
sharedDataFolder:
|
||||
enabled: true
|
||||
path: /daten
|
||||
accessMode: ReadWriteOnce
|
||||
storageClass:
|
||||
resources:
|
||||
requests:
|
||||
storage: 5Gi
|
||||
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
maxSurge: 1
|
||||
|
||||
podSecurityContext: {}
|
||||
securityContext: {}
|
||||
|
||||
extraDeploy: []
|
||||
25
streifencheck-dev/index.yaml
Normal file
25
streifencheck-dev/index.yaml
Normal file
@@ -0,0 +1,25 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
streifencheck-backend:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.185-dev.1
|
||||
created: "2026-01-15T11:22:05.236308925+01:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: 5fb7a5782425ebd18cd83ab4bff63ad1302250f72e08c45280ff5f83453bf82d
|
||||
name: streifencheck-backend
|
||||
type: application
|
||||
urls:
|
||||
- streifencheck-backend-0.185-dev.1.tgz
|
||||
version: 0.185-dev.1
|
||||
streifencheck-frontend:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.224-dev.1
|
||||
created: "2026-01-15T11:22:05.236702571+01:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: a7a1faf471acb8cb975bff88a778d813db10002d5cbdd4ea5073ec091fecbe3e
|
||||
name: streifencheck-frontend
|
||||
type: application
|
||||
urls:
|
||||
- streifencheck-frontend-0.224-dev.1.tgz
|
||||
version: 0.224-dev.1
|
||||
generated: "2026-01-15T11:22:05.235834355+01:00"
|
||||
BIN
streifencheck-dev/streifencheck-backend-0.185-dev.1.tgz
Normal file
BIN
streifencheck-dev/streifencheck-backend-0.185-dev.1.tgz
Normal file
Binary file not shown.
6
streifencheck-dev/streifencheck-backend/Chart.yaml
Normal file
6
streifencheck-dev/streifencheck-backend/Chart.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: streifencheck-backend
|
||||
description: A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: 0.185-dev.1
|
||||
appVersion: 0.185-dev.1
|
||||
@@ -0,0 +1,62 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "streifencheck-backend.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "streifencheck-backend.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "streifencheck-backend.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "streifencheck-backend.labels" -}}
|
||||
helm.sh/chart: {{ include "streifencheck-backend.chart" . }}
|
||||
{{ include "streifencheck-backend.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "streifencheck-backend.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "streifencheck-backend.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "streifencheck-backend.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "streifencheck-backend.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,78 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "streifencheck-backend.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
chart: {{ template "streifencheck-backend.chart" . }}
|
||||
component: streifencheck-backend
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- if .Values.deploymentLabels }}
|
||||
{{- toYaml .Values.deploymentLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
strategy:
|
||||
{{ toYaml .Values.updateStrategy | nindent 4 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
component: streifencheck-backend
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
labels:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
component: streifencheck-backend
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
serviceAccountName: {{ template "streifencheck-backend.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
env:
|
||||
{{- range $key := .Values.env }}
|
||||
{{- if .value }}
|
||||
- name: {{ .name }}
|
||||
value: {{ .value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key := .Values.secretEnv }}
|
||||
- name: {{ .name }}
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "streifencheck-backend.fullname" $ }}-secret
|
||||
key: {{ .name }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
{{- tpl . $ | nindent 10 }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
18
streifencheck-dev/streifencheck-backend/templates/hpa.yaml
Normal file
18
streifencheck-dev/streifencheck-backend/templates/hpa.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.autoscaling.enabled -}}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "streifencheck-backend.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
chart: {{ template "streifencheck-backend.chart" . }}
|
||||
component: streifencheck-backend
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "streifencheck-backend.fullname" . }}
|
||||
{{ toYaml .Values.autoscaling.config | indent 2 }}
|
||||
{{- end -}}
|
||||
@@ -0,0 +1,45 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "streifencheck-backend.fullname" . -}}
|
||||
{{- $servicePort := .Values.service.port -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
{{- $ingressPathType := .Values.ingress.pathtype -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
chart: {{ template "streifencheck-backend.chart" . }}
|
||||
component: streifencheck-backend
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
pathType: {{ $ingressPathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: 80
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "streifencheck-backend.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
chart: {{ template "streifencheck-backend.chart" . }}
|
||||
component: streifencheck-backend
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 80
|
||||
protocol: TCP
|
||||
name: nginx
|
||||
selector:
|
||||
app: {{ template "streifencheck-backend.name" . }}
|
||||
component: streifencheck-backend
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "streifencheck-backend.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "streifencheck-backend.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
76
streifencheck-dev/streifencheck-backend/values.yaml
Normal file
76
streifencheck-dev/streifencheck-backend/values.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
platform: kubernetes
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
annotations: ""
|
||||
automount: false
|
||||
|
||||
image:
|
||||
repository: gitea.innovation-hub-niedersachsen.de/innohub/streifencheck-backend
|
||||
tag: 0.185-dev.1
|
||||
pullPolicy: IfNotPresent
|
||||
insecure: true
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
annotations: {}
|
||||
|
||||
endpoint: streifencheck-backend.local
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
path: /
|
||||
pathtype: ImplementationSpecific
|
||||
hosts:
|
||||
- streifencheck-backend.innohub.local
|
||||
tls:
|
||||
|
||||
route:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 300m
|
||||
limits:
|
||||
memory: 1Gi
|
||||
cpu: 500m
|
||||
|
||||
nodeSelector: {}
|
||||
tolerations: []
|
||||
affinity: {}
|
||||
|
||||
autoscaling:
|
||||
enabled: true
|
||||
config:
|
||||
minReplicas: 1
|
||||
maxReplicas: 10
|
||||
targetCPUUtilizationPercentage: 80
|
||||
|
||||
deploymentLabels: {}
|
||||
podLabels: {}
|
||||
|
||||
sharedDataFolder:
|
||||
enabled: true
|
||||
path: /daten
|
||||
accessMode: ReadWriteOnce
|
||||
storageClass:
|
||||
resources:
|
||||
requests:
|
||||
storage: 5Gi
|
||||
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
maxSurge: 1
|
||||
|
||||
podSecurityContext: {}
|
||||
securityContext: {}
|
||||
|
||||
extraDeploy: []
|
||||
BIN
streifencheck-dev/streifencheck-frontend-0.224-dev.1.tgz
Normal file
BIN
streifencheck-dev/streifencheck-frontend-0.224-dev.1.tgz
Normal file
Binary file not shown.
6
streifencheck-dev/streifencheck-frontend/Chart.yaml
Normal file
6
streifencheck-dev/streifencheck-frontend/Chart.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: streifencheck-frontend
|
||||
description: A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: 0.224-dev.1
|
||||
appVersion: 0.224-dev.1
|
||||
@@ -0,0 +1,62 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "streifencheck-frontend.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "streifencheck-frontend.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "streifencheck-frontend.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "streifencheck-frontend.labels" -}}
|
||||
helm.sh/chart: {{ include "streifencheck-frontend.chart" . }}
|
||||
{{ include "streifencheck-frontend.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "streifencheck-frontend.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "streifencheck-frontend.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "streifencheck-frontend.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "streifencheck-frontend.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,78 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "streifencheck-frontend.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
chart: {{ template "streifencheck-frontend.chart" . }}
|
||||
component: streifencheck-frontend
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- if .Values.deploymentLabels }}
|
||||
{{- toYaml .Values.deploymentLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
strategy:
|
||||
{{ toYaml .Values.updateStrategy | nindent 4 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
component: streifencheck-frontend
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
labels:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
component: streifencheck-frontend
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
serviceAccountName: {{ template "streifencheck-frontend.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
env:
|
||||
{{- range $key := .Values.env }}
|
||||
{{- if .value }}
|
||||
- name: {{ .name }}
|
||||
value: {{ .value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key := .Values.secretEnv }}
|
||||
- name: {{ .name }}
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "streifencheck-frontend.fullname" $ }}-secret
|
||||
key: {{ .name }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
{{- tpl . $ | nindent 10 }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
18
streifencheck-dev/streifencheck-frontend/templates/hpa.yaml
Normal file
18
streifencheck-dev/streifencheck-frontend/templates/hpa.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.autoscaling.enabled -}}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "streifencheck-frontend.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
chart: {{ template "streifencheck-frontend.chart" . }}
|
||||
component: streifencheck-frontend
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "streifencheck-frontend.fullname" . }}
|
||||
{{ toYaml .Values.autoscaling.config | indent 2 }}
|
||||
{{- end -}}
|
||||
@@ -0,0 +1,45 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "streifencheck-frontend.fullname" . -}}
|
||||
{{- $servicePort := .Values.service.port -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
{{- $ingressPathType := .Values.ingress.pathtype -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
chart: {{ template "streifencheck-frontend.chart" . }}
|
||||
component: streifencheck-frontend
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
pathType: {{ $ingressPathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: 80
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "streifencheck-frontend.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
chart: {{ template "streifencheck-frontend.chart" . }}
|
||||
component: streifencheck-frontend
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 80
|
||||
protocol: TCP
|
||||
name: nginx
|
||||
selector:
|
||||
app: {{ template "streifencheck-frontend.name" . }}
|
||||
component: streifencheck-frontend
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "streifencheck-frontend.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "streifencheck-frontend.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
76
streifencheck-dev/streifencheck-frontend/values.yaml
Normal file
76
streifencheck-dev/streifencheck-frontend/values.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
platform: kubernetes
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
annotations: ""
|
||||
automount: false
|
||||
|
||||
image:
|
||||
repository: gitea.innovation-hub-niedersachsen.de/innohub/streifencheck-frontend
|
||||
tag: 0.224-dev.1
|
||||
pullPolicy: IfNotPresent
|
||||
insecure: true
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
annotations: {}
|
||||
|
||||
endpoint: streifencheck-frontend.local
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
path: /
|
||||
pathtype: ImplementationSpecific
|
||||
hosts:
|
||||
- streifencheck-frontend.innohub.local
|
||||
tls:
|
||||
|
||||
route:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 300m
|
||||
limits:
|
||||
memory: 1Gi
|
||||
cpu: 500m
|
||||
|
||||
nodeSelector: {}
|
||||
tolerations: []
|
||||
affinity: {}
|
||||
|
||||
autoscaling:
|
||||
enabled: true
|
||||
config:
|
||||
minReplicas: 1
|
||||
maxReplicas: 10
|
||||
targetCPUUtilizationPercentage: 80
|
||||
|
||||
deploymentLabels: {}
|
||||
podLabels: {}
|
||||
|
||||
sharedDataFolder:
|
||||
enabled: true
|
||||
path: /daten
|
||||
accessMode: ReadWriteOnce
|
||||
storageClass:
|
||||
resources:
|
||||
requests:
|
||||
storage: 5Gi
|
||||
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
maxSurge: 1
|
||||
|
||||
podSecurityContext: {}
|
||||
securityContext: {}
|
||||
|
||||
extraDeploy: []
|
||||
BIN
tatort-0.1.1.tgz
BIN
tatort-0.1.1.tgz
Binary file not shown.
14
tatort-dev/index.yaml
Normal file
14
tatort-dev/index.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
tatort:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.101-dev.1
|
||||
created: "2025-12-16T13:28:33.660511461+01:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: 3a3928ec03ac75126a55abee9cc96b46a24a39dff0148cc24a47681124e212db
|
||||
name: tatort
|
||||
type: application
|
||||
urls:
|
||||
- tatort-0.101-dev.1.tgz
|
||||
version: 0.101-dev.1
|
||||
generated: "2025-12-16T13:28:33.659944585+01:00"
|
||||
BIN
tatort-dev/tatort-0.101-dev.1.tgz
Normal file
BIN
tatort-dev/tatort-0.101-dev.1.tgz
Normal file
Binary file not shown.
6
tatort-dev/tatort/Chart.yaml
Normal file
6
tatort-dev/tatort/Chart.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
apiVersion: v2
|
||||
name: tatort
|
||||
description: A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: 0.101-dev.1
|
||||
appVersion: 0.101-dev.1
|
||||
@@ -62,6 +62,11 @@ spec:
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
{{ if .Values.sharedDataFolder.enabled }}
|
||||
volumeMounts:
|
||||
- name: shared-data-volume
|
||||
mountPath: /daten
|
||||
{{ end }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
@@ -76,3 +81,9 @@ spec:
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{ if .Values.sharedDataFolder.enabled }}
|
||||
volumes:
|
||||
- name: shared-data-volume
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ template "tatort.fullname" . }}-shared-data
|
||||
{{ end }}
|
||||
@@ -39,7 +39,7 @@ spec:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: 4173
|
||||
number: 3000
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
26
tatort-dev/tatort/templates/pvc.yaml
Normal file
26
tatort-dev/tatort/templates/pvc.yaml
Normal file
@@ -0,0 +1,26 @@
|
||||
{{- if .Values.sharedDataFolder.enabled }}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ template "tatort.fullname" . }}-shared-data
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
chart: {{ template "tatort.chart" . }}
|
||||
component: tatort
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
accessModes:
|
||||
{{- if .Values.sharedDataFolder.accessMode }}
|
||||
- {{ .Values.sharedDataFolder.accessMode }}
|
||||
{{- else }}
|
||||
- ReadWriteMany
|
||||
{{- end }}
|
||||
{{- if .Values.sharedDataFolder.storageClass }}
|
||||
storageClassName: {{ .Values.sharedDataFolder.storageClass | quote }}
|
||||
{{- end }}
|
||||
{{- with .Values.sharedDataFolder.resources }}
|
||||
resources:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{ end }}
|
||||
@@ -16,7 +16,7 @@ spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 4173
|
||||
targetPort: 3000
|
||||
protocol: TCP
|
||||
name: npm
|
||||
selector:
|
||||
76
tatort-dev/tatort/values.yaml
Normal file
76
tatort-dev/tatort/values.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
platform: kubernetes
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
annotations: ""
|
||||
automount: false
|
||||
|
||||
image:
|
||||
repository: gitea.innovation-hub-niedersachsen.de/innohub/tatort-dev
|
||||
tag: 0.101-dev.1
|
||||
pullPolicy: IfNotPresent
|
||||
insecure: true
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 3000
|
||||
annotations: {}
|
||||
|
||||
endpoint: tatort.local
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
path: /
|
||||
pathtype: ImplementationSpecific
|
||||
hosts:
|
||||
- tatort.innohub.local
|
||||
tls:
|
||||
|
||||
route:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
memory: 128Mi
|
||||
cpu: 300m
|
||||
limits:
|
||||
memory: 1Gi
|
||||
cpu: 500m
|
||||
|
||||
nodeSelector: {}
|
||||
tolerations: []
|
||||
affinity: {}
|
||||
|
||||
autoscaling:
|
||||
enabled: true
|
||||
config:
|
||||
minReplicas: 1
|
||||
maxReplicas: 10
|
||||
targetCPUUtilizationPercentage: 80
|
||||
|
||||
deploymentLabels: {}
|
||||
podLabels: {}
|
||||
|
||||
sharedDataFolder:
|
||||
enabled: true
|
||||
path: /daten
|
||||
accessMode: ReadWriteOnce
|
||||
storageClass:
|
||||
resources:
|
||||
requests:
|
||||
storage: 5Gi
|
||||
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
maxSurge: 1
|
||||
|
||||
podSecurityContext: {}
|
||||
securityContext: {}
|
||||
|
||||
extraDeploy: []
|
||||
14
tatort/index.yaml
Normal file
14
tatort/index.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
tatort:
|
||||
- apiVersion: v2
|
||||
appVersion: 0.3.8
|
||||
created: "2025-12-16T15:42:03.636665+01:00"
|
||||
description: A Helm chart for Kubernetes
|
||||
digest: df74d4ae5835dd37b9dee472b08491384b619a310a5e247980fd2fe17997c1c6
|
||||
name: tatort
|
||||
type: application
|
||||
urls:
|
||||
- https://gitea.innovation-hub-niedersachsen.de/innohub/charts/raw/main/tatort/tatort-0.1.4.tgz
|
||||
version: 0.1.4
|
||||
generated: "2025-12-16T15:42:03.635841+01:00"
|
||||
BIN
tatort/tatort-0.1.4.tgz
Normal file
BIN
tatort/tatort-0.1.4.tgz
Normal file
Binary file not shown.
@@ -2,5 +2,5 @@ apiVersion: v2
|
||||
name: tatort
|
||||
description: A Helm chart for Kubernetes
|
||||
type: application
|
||||
version: "0.1.1"
|
||||
appVersion: "0.0.1"
|
||||
version: 0.1.4
|
||||
appVersion: 0.3.8
|
||||
62
tatort/tatort/templates/_helpers.tpl
Normal file
62
tatort/tatort/templates/_helpers.tpl
Normal file
@@ -0,0 +1,62 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "tatort.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "tatort.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "tatort.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "tatort.labels" -}}
|
||||
helm.sh/chart: {{ include "tatort.chart" . }}
|
||||
{{ include "tatort.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "tatort.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "tatort.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "tatort.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "tatort.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
89
tatort/tatort/templates/deployment.yaml
Normal file
89
tatort/tatort/templates/deployment.yaml
Normal file
@@ -0,0 +1,89 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "tatort.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
chart: {{ template "tatort.chart" . }}
|
||||
component: tatort
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- if .Values.deploymentLabels }}
|
||||
{{- toYaml .Values.deploymentLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
strategy:
|
||||
{{ toYaml .Values.updateStrategy | nindent 4 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
component: tatort
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
component: tatort
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
serviceAccountName: {{ template "tatort.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
terminationMessagePolicy: FallbackToLogsOnError
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
env:
|
||||
{{- range $key := .Values.env }}
|
||||
{{- if .value }}
|
||||
- name: {{ .name }}
|
||||
value: {{ .value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key := .Values.secretEnv }}
|
||||
- name: {{ .name }}
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "tatort.fullname" $ }}-secret
|
||||
key: {{ .name }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
{{- tpl . $ | nindent 10 }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
{{ if .Values.sharedDataFolder.enabled }}
|
||||
volumeMounts:
|
||||
- name: shared-data-volume
|
||||
mountPath: /daten
|
||||
{{ end }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{ if .Values.sharedDataFolder.enabled }}
|
||||
volumes:
|
||||
- name: shared-data-volume
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ template "tatort.fullname" . }}-shared-data
|
||||
{{ end }}
|
||||
18
tatort/tatort/templates/hpa.yaml
Normal file
18
tatort/tatort/templates/hpa.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
{{- if .Values.autoscaling.enabled -}}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "tatort.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
chart: {{ template "tatort.chart" . }}
|
||||
component: tatort
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "tatort.fullname" . }}
|
||||
{{ toYaml .Values.autoscaling.config | indent 2 }}
|
||||
{{- end -}}
|
||||
45
tatort/tatort/templates/ingress.yaml
Normal file
45
tatort/tatort/templates/ingress.yaml
Normal file
@@ -0,0 +1,45 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "tatort.fullname" . -}}
|
||||
{{- $servicePort := .Values.service.port -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
{{- $ingressPathType := .Values.ingress.pathtype -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
chart: {{ template "tatort.chart" . }}
|
||||
component: tatort
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
pathType: {{ $ingressPathType }}
|
||||
backend:
|
||||
service:
|
||||
name: {{ $fullName }}
|
||||
port:
|
||||
number: 3000
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
26
tatort/tatort/templates/pvc.yaml
Normal file
26
tatort/tatort/templates/pvc.yaml
Normal file
@@ -0,0 +1,26 @@
|
||||
{{- if .Values.sharedDataFolder.enabled }}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ template "tatort.fullname" . }}-shared-data
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
chart: {{ template "tatort.chart" . }}
|
||||
component: tatort
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
accessModes:
|
||||
{{- if .Values.sharedDataFolder.accessMode }}
|
||||
- {{ .Values.sharedDataFolder.accessMode }}
|
||||
{{- else }}
|
||||
- ReadWriteMany
|
||||
{{- end }}
|
||||
{{- if .Values.sharedDataFolder.storageClass }}
|
||||
storageClassName: {{ .Values.sharedDataFolder.storageClass | quote }}
|
||||
{{- end }}
|
||||
{{- with .Values.sharedDataFolder.resources }}
|
||||
resources:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{ end }}
|
||||
26
tatort/tatort/templates/service.yaml
Normal file
26
tatort/tatort/templates/service.yaml
Normal file
@@ -0,0 +1,26 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "tatort.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "tatort.name" . }}
|
||||
chart: {{ template "tatort.chart" . }}
|
||||
component: tatort
|
||||
heritage: {{ .Release.Service }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: 3000
|
||||
protocol: TCP
|
||||
name: npm
|
||||
selector:
|
||||
app: {{ template "tatort.name" . }}
|
||||
component: tatort
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
13
tatort/tatort/templates/serviceaccount.yaml
Normal file
13
tatort/tatort/templates/serviceaccount.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "tatort.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "tatort.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
||||
@@ -7,8 +7,8 @@ serviceAccount:
|
||||
automount: false
|
||||
|
||||
image:
|
||||
repository: gitea.innohub.local:3000/innohub/tatort
|
||||
tag: v0.2.2
|
||||
repository: gitea.innovation-hub-niedersachsen.de/innohub/tatort
|
||||
tag: v0.3.8
|
||||
pullPolicy: IfNotPresent
|
||||
insecure: true
|
||||
|
||||
@@ -16,7 +16,7 @@ replicaCount: 1
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 4173
|
||||
port: 3000
|
||||
annotations: {}
|
||||
|
||||
endpoint: tatort.local
|
||||
Reference in New Issue
Block a user