Skip to content

Commit 0ade2c9

Browse files
committed
feat(helmchart): add web as a new helm template
1 parent 8c1caec commit 0ade2c9

File tree

8 files changed

+140
-22
lines changed

8 files changed

+140
-22
lines changed

helm/templates/_helpers.tpl

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
{{- define "app.labels" -}}
2+
app: {{ .Chart.Name }}
3+
component: gpt-app
4+
{{- end -}}
5+
6+
{{- define "app.deploymentName" -}}
7+
{{ .Release.Name }}-app-deployment
8+
{{- end -}}
9+
10+
{{- define "app.serviceName" -}}
11+
{{ .Release.Name }}-app-service
12+
{{- end -}}
13+
14+
{{- define "app.secretName" -}}
15+
{{ .Release.Name }}-app-secret
16+
{{- end -}}
17+
18+
{{- define "app.ingressName" -}}
19+
{{ .Release.Name }}-app-ingress
20+
{{- end -}}
21+
22+
{{- define "web.labels" -}}
23+
app: {{ .Chart.Name }}
24+
component: gpt-web
25+
{{- end -}}
26+
27+
{{- define "web.deploymentName" -}}
28+
{{ .Release.Name }}-web-deployment
29+
{{- end -}}
30+
31+
{{- define "web.serviceName" -}}
32+
{{ .Release.Name }}-web-service
33+
{{- end -}}
34+
35+
{{- define "web.ingressName" -}}
36+
{{ .Release.Name }}-web-ingress
37+
{{- end -}}

helm/templates/app/_helpers.tpl

Lines changed: 0 additions & 17 deletions
This file was deleted.

helm/templates/app/ingress.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{{- if .Values.ingress.enabled }}
2+
apiVersion: networking.k8s.io/v1
3+
kind: Ingress
4+
metadata:
5+
name: {{ include "app.ingressName" . }}
6+
spec:
7+
ingressClassName: {{ .Values.ingress.ingressClassName }}
8+
rules:
9+
- host: {{ .Values.ingress.host }}
10+
http:
11+
paths:
12+
- path: /api
13+
pathType: Prefix
14+
backend:
15+
service:
16+
name: {{ include "app.serviceName" . }}
17+
port:
18+
number: {{ .Values.app.service.port }}
19+
{{- end }}

helm/templates/app/service.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,5 @@ spec:
1010
- port: {{ .Values.app.service.port }}
1111
targetPort: {{ .Values.app.service.targetPort }}
1212
protocol: {{ .Values.app.service.protocol }}
13-
{{- if eq .Values.app.service.type "NodePort" }}
14-
nodePort: {{ .Values.app.service.nodePort }}
15-
{{- end }}
1613
selector:
1714
{{- include "app.labels" . | nindent 4 }}

helm/templates/web/deployment.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: {{ include "web.deploymentName" . }}
5+
labels:
6+
{{- include "web.labels" . | nindent 4 }}
7+
spec:
8+
replicas: {{ .Values.web.replicaCount }}
9+
selector:
10+
matchLabels:
11+
{{- include "web.labels" . | nindent 8 }}
12+
template:
13+
metadata:
14+
labels:
15+
{{- include "web.labels" . | nindent 8 }}
16+
spec:
17+
containers:
18+
- name: {{ include "web.deploymentName" . }}
19+
image: {{ .Values.web.image.repository }}:{{ .Values.web.image.tag }}
20+
ports:
21+
- containerPort: {{ .Values.web.service.targetPort }}
22+
{{- if .Values.web.nodeSelector }}
23+
nodeSelector: {{ .Values.web.nodeSelector | toYaml | nindent 8 }}
24+
{{- end }}
25+
26+
{{- if .Values.web.affinity }}
27+
affinity: {{ .Values.web.affinity | toYaml | nindent 8 }}
28+
{{- end }}

helm/templates/web/ingress.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{{- if .Values.ingress.enabled }}
2+
apiVersion: networking.k8s.io/v1
3+
kind: Ingress
4+
metadata:
5+
name: {{ include "web.ingressName" . }}
6+
spec:
7+
ingressClassName: {{ .Values.ingress.ingressClassName }}
8+
rules:
9+
- host: {{ .Values.ingress.host }}
10+
http:
11+
paths:
12+
- path: /
13+
pathType: Prefix
14+
backend:
15+
service:
16+
name: {{ include "web.serviceName" . }}
17+
port:
18+
number: {{ .Values.web.service.port }}
19+
{{- end }}

helm/templates/web/service.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: {{ include "web.serviceName" . }}
5+
labels:
6+
{{- include "web.labels" . | nindent 4 }}
7+
spec:
8+
type: {{ .Values.web.service.type }}
9+
ports:
10+
- port: {{ .Values.web.service.port }}
11+
targetPort: {{ .Values.web.service.targetPort }}
12+
protocol: {{ .Values.web.service.protocol }}
13+
{{- if eq .Values.web.service.type "NodePort" }}
14+
nodePort: {{ .Values.web.service.nodePort }}
15+
{{- end }}
16+
selector:
17+
{{- include "web.labels" . | nindent 4 }}

helm/values.yaml

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,29 @@ app:
55
tag: latest
66
service:
77
type: ClusterIP
8-
port: 80
8+
port: 8080
99
targetPort: 8080
1010
protocol: TCP
11-
nodePort: 30080
1211
environment:
1312
OPENAI_API_KEY: ""
1413
nodeSelector: {}
1514
affinity: {}
15+
16+
web:
17+
replicaCount: 1
18+
image:
19+
repository: 81318131/web_gpt
20+
tag: kubernetes-local
21+
service:
22+
type: ClusterIP
23+
port: 80
24+
targetPort: 4173
25+
protocol: TCP
26+
nodePort: 30080
27+
nodeSelector: {}
28+
affinity: {}
29+
30+
ingress:
31+
enabled: true
32+
host: "devopsgpt.local"
33+
ingressClassName: "nginx"

0 commit comments

Comments
 (0)