Initial commit
This commit is contained in:
commit
b944d19534
17 changed files with 403 additions and 0 deletions
12
templates/cache-configmap.yaml
Normal file
12
templates/cache-configmap.yaml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-cache-configmap
|
||||
namespace: {{ .Release.Namespace }}
|
||||
data:
|
||||
{{- if and (eq .Values.cache.type "redis") (.Values.cache.create) }}
|
||||
hostname: {{ .Release.Name }}-redis
|
||||
{{- else }}
|
||||
hostname: {{ .Values.cache.hostname }}
|
||||
{{- end }}
|
||||
port: {{ .Values.cache.port | quote }}
|
||||
7
templates/cache-credentials-secret.yaml
Normal file
7
templates/cache-credentials-secret.yaml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-cache-credentials
|
||||
type: Opaque
|
||||
data:
|
||||
password: {{ .Values.cache.password | b64enc }}
|
||||
29
templates/database.yaml
Normal file
29
templates/database.yaml
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{{- if and (eq .Values.database.type "postgres") (.Values.database.create) -}}
|
||||
apiVersion: postgresql.org/v1
|
||||
kind: PostgresDatabase
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-db
|
||||
namespace: {{ .Release.Namespace }}
|
||||
spec:
|
||||
dbName:
|
||||
envFrom:
|
||||
configMapKeyRef:
|
||||
- name: {{ .Release.Name }}-db-credentials
|
||||
namespace: postgres-controller
|
||||
key: db-name
|
||||
dbRoleName:
|
||||
envFrom:
|
||||
configMapKeyRef:
|
||||
- name: {{ .Release.Name }}-db-credentials
|
||||
namespace: postgres-controller
|
||||
key: db-user
|
||||
dbRolePassword:
|
||||
envFrom:
|
||||
secretKeyRef:
|
||||
- name: {{ .Release.Name }}-db-password
|
||||
namespace: postgres-controller
|
||||
key: password
|
||||
{{- if .Values.database.instance_id }}
|
||||
dbInstanceId: {{ .Values.database.instance_id }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
16
templates/db-credentials-config-map-postgres-controller.yaml
Normal file
16
templates/db-credentials-config-map-postgres-controller.yaml
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{{- if and (eq .Values.database.type "postgres") (.Values.database.create) -}}
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-db-credentials
|
||||
namespace: postgres-controller
|
||||
data:
|
||||
db-host: {{ .Values.database.host }}
|
||||
db-name: {{ .Values.database.name }}
|
||||
db-user: {{ .Values.database.user }}
|
||||
{{- if .Values.database.port }}
|
||||
db-port: {{ .Values.database.port | quote }}
|
||||
{{- else }}
|
||||
db-port: "5432"
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
13
templates/db-credentials-config-map.yaml
Normal file
13
templates/db-credentials-config-map.yaml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-db-credentials
|
||||
data:
|
||||
db-host: {{ .Values.database.host }}
|
||||
db-name: {{ .Values.database.name }}
|
||||
db-user: {{ .Values.database.user }}
|
||||
{{- if .Values.database.port }}
|
||||
db-port: {{ .Values.database.port | quote }}
|
||||
{{- else }}
|
||||
db-port: "5432"
|
||||
{{- end }}
|
||||
10
templates/db-password-secret-postgres-controller.yaml
Normal file
10
templates/db-password-secret-postgres-controller.yaml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{{- if and (eq .Values.database.type "postgres") (.Values.database.create) -}}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-db-password
|
||||
namespace: postgres-controller
|
||||
type: Opaque
|
||||
data:
|
||||
password: {{ .Values.database.password | b64enc }}
|
||||
{{- end -}}
|
||||
7
templates/db-password-secret.yaml
Normal file
7
templates/db-password-secret.yaml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-db-password
|
||||
type: Opaque
|
||||
data:
|
||||
password: {{ .Values.database.password | b64enc }}
|
||||
75
templates/deployment.yaml
Normal file
75
templates/deployment.yaml
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ .Release.Name }}
|
||||
labels:
|
||||
app: {{ .Release.Name }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ .Release.Name }}
|
||||
spec:
|
||||
containers:
|
||||
- name: {{ .Release.Name }}
|
||||
image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.container.port }}
|
||||
env:
|
||||
- name: NODE_ENV
|
||||
value: {{ .Values.container.env }}
|
||||
- name: PORT
|
||||
value: "{{ .Values.container.port }}"
|
||||
- name: COMPANY
|
||||
value: "Bridgeman Accessible"
|
||||
- name: WEBSITE_TITLE_SUFFIX
|
||||
value: " - Bridgeman Accessible Helm Repo"
|
||||
- name: HOSTNAME
|
||||
value: "helm.bridgemanaccessible.ca"
|
||||
# Database credentials
|
||||
- name: DB_HOST
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ .Release.Name }}-db-credentials
|
||||
key: db-host
|
||||
- name: DB_NAME
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ .Release.Name }}-db-credentials
|
||||
key: db-name
|
||||
- name: DB_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ .Release.Name }}-db-password
|
||||
key: password
|
||||
- name: DB_PORT
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ .Release.Name }}-db-credentials
|
||||
key: db-port
|
||||
- name: DB_USER
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ .Release.Name }}-db-credentials
|
||||
key: db-user
|
||||
# Caching Server Variables
|
||||
- name: CACHE_HOSTNAME
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ .Release.Name }}-cache-configmap
|
||||
key: hostname
|
||||
- name: CACHE_PORT
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ .Release.Name }}-cache-configmap
|
||||
key: port
|
||||
- name: CACHE_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ .Release.Name }}-cache-credentials
|
||||
key: password
|
||||
21
templates/ingress.yaml
Normal file
21
templates/ingress.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{{- if .Values.ingress.enabled -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ .Release.Name }}
|
||||
annotations:
|
||||
nginx.ingress.kubernetes.io/rewrite-target: /
|
||||
spec:
|
||||
rules:
|
||||
- host: {{ .Values.ingress.host }}
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: {{ .Release.Name }}
|
||||
port:
|
||||
number: 80
|
||||
ingressClassName: {{ .Values.ingress.class }}
|
||||
{{- end -}}
|
||||
49
templates/redis-deployment.yaml
Normal file
49
templates/redis-deployment.yaml
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
{{- if and (eq .Values.cache.type "redis") (.Values.cache.create) -}}
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-redis
|
||||
labels:
|
||||
app: redis
|
||||
spec:
|
||||
replicas: {{ .Values.cache.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: redis
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: redis
|
||||
spec:
|
||||
containers:
|
||||
- name: redis
|
||||
image: {{ .Values.cache.image.repository | default "bitnami/redis" }}:{{ .Values.cache.image.tag | default "7.0.5" }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.cache.port }}
|
||||
{{- if .Values.cache.tls.enabled }}
|
||||
- containerPort: {{ .Values.cache.tls.port }}
|
||||
{{- end }}
|
||||
env:
|
||||
- name: ALLOW_EMPTY_PASSWORD
|
||||
value: "false"
|
||||
- name: REDIS_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ .Release.Name }}-cache-credentials
|
||||
key: password
|
||||
- name: REDIS_DISABLE_COMMANDS
|
||||
value: "FLUSHDB,FLUSHALL"
|
||||
# TLS configuration
|
||||
#- name: REDIS_TLS_ENABLED
|
||||
# value: "{{ .Values.cache.tls.enabled }}"
|
||||
#- name: REDIS_TLS_AUTH_CLIENTS
|
||||
# value: "yes"
|
||||
#- name: REDIS_TLS_PORT_NUMBER
|
||||
# value: "{{ .Values.cache.tls.port }}"
|
||||
volumeMounts:
|
||||
- name: redis-data
|
||||
mountPath: /bitnami/redis
|
||||
volumes:
|
||||
- name: redis-data
|
||||
emptyDir: {}
|
||||
{{- end -}}
|
||||
15
templates/redis-service.yaml
Normal file
15
templates/redis-service.yaml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{{- if and (eq .Values.cache.type "redis") (.Values.cache.create) -}}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Release.Name }}-redis
|
||||
labels:
|
||||
app: redis
|
||||
spec:
|
||||
ports:
|
||||
- port: {{ .Values.cache.port }}
|
||||
targetPort: {{ .Values.cache.port }}
|
||||
selector:
|
||||
app: redis
|
||||
type: ClusterIP
|
||||
{{- end -}}
|
||||
11
templates/service.yaml
Normal file
11
templates/service.yaml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Release.Name }}
|
||||
spec:
|
||||
selector:
|
||||
app: {{ .Release.Name }}
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 80
|
||||
targetPort: {{ .Values.container.port }}
|
||||
Loading…
Add table
Add a link
Reference in a new issue