diff --git a/deploy/templates/ingress.yaml b/deploy/templates/ingress.yaml new file mode 100644 index 0000000..3809a82 --- /dev/null +++ b/deploy/templates/ingress.yaml @@ -0,0 +1,32 @@ +{{- if .Values.ingress.enabled }} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }} + annotations: + external-dns.alpha.kubernetes.io/target: omegamaestro.{{ .Values.ingress.domain }} + cert-manager.io/cluster-issuer: {{ .Values.ingress.issuer }} + nginx.ingress.kubernetes.io/backend-protocol: "HTTP" + {{- if .Values.ingress.geoip }} + nginx.ingress.kubernetes.io/server-snippet: | + if ($lan = yes) { set $allowed_country yes; } + if ($allowed_country = no) { return 451; } + {{- end }} +spec: + ingressClassName: {{ .Values.ingress.class }} + tls: + - hosts: + - {{ .Values.ingress.subdomain }}.{{ .Values.ingress.domain }} + secretName: {{ .Release.Name }}-tls + rules: + - host: "{{ .Values.ingress.subdomain }}.{{ .Values.ingress.domain }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: "{{ .Release.Name }}-{{ .Values.service.name }}" + port: + name: {{ .Values.service.name }} +{{- end }} \ No newline at end of file diff --git a/deploy/templates/service.yaml b/deploy/templates/service.yaml new file mode 100644 index 0000000..41111a1 --- /dev/null +++ b/deploy/templates/service.yaml @@ -0,0 +1,15 @@ +{{- if .Values.service.enabled }} +apiVersion: v1 +kind: Service +metadata: + name: "{{ .Release.Name }}-{{ .Values.service.name }}" +spec: + type: {{ .Values.service.type }} + ports: + - name: {{ .Values.service.name }} + port: {{ .Values.deployment.env.TWURPLE_PORT | default .Values.service.port }} + targetPort: {{ .Values.deployment.env.TWURPLE_PORT | default .Values.service.port }} + protocol: TCP + selector: + {{ .Release.Name }} +{{- end }} \ No newline at end of file diff --git a/deploy/values.yaml b/deploy/values.yaml index 2039b78..a678e1c 100644 --- a/deploy/values.yaml +++ b/deploy/values.yaml @@ -15,4 +15,17 @@ deployment: # Memory: "500Mi" requests: Cpu: "0.1" - Memory: "50Mi" \ No newline at end of file + Memory: "50Mi" + +service: + enabled: true + type: ClusterIP + name: twurple + +ingress: + enabled: true + class: nginx + subdomain: dcb-chantier.prd + domain: angels-dev.fr + issuer: letsencrypt-prod + geoip: false \ No newline at end of file