Update templates and deploy to develop

- proof of concept that this works!
This commit is contained in:
mattwr18 2020-01-28 20:55:08 +01:00
parent 2363c285e1
commit b05e997743
14 changed files with 134 additions and 121 deletions

View File

@ -1,19 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}-configmap
data:
GRAPHQL_URI: "http://{{ .Release.Name }}-backend:4000"
NEO4J_URI: "bolt://{{ .Release.Name }}-neo4j:7687"
CLIENT_URI: "https://{{ .Values.domain }}"
VERSION: {{ .Chart.AppVersion }}
SENTRY_DSN_WEBAPP: {{ .Values.sentryDsnWebapp }}
SENTRY_DSN_BACKEND: {{ .Values.sentryDsnBackend }}
COMMIT: {{ .Values.commit }}
{{- if .Values.developmentMailserverDomain }}
SMTP_HOST: {{ .Release.Name }}-mailserver
SMTP_PORT: "25"
{{- else }}
SMTP_HOST: {{ .Values.smtpHost }}
SMTP_PORT: {{ .Values.smtpPort }}
{{- end }}

View File

@ -1,7 +1,8 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-backend
namespace: human-connection
spec:
replicas: 1
minReadySeconds: 15
@ -23,23 +24,33 @@ spec:
human-connection.org/selector: deployment-backend
spec:
containers:
- name: backend
image: humanconnection/nitro-backend:latest
imagePullPolicy: {{ .Values.pullPolicy }}
ports:
- containerPort: 4000
envFrom:
- envFrom:
- configMapRef:
name: {{ .Release.Name }}-configmap
- secretRef:
name: {{ .Release.Name }}-secrets
# volumeMounts:
# - mountPath: /nitro-backend/public/uploads
# name: uploads
# volumes:
# - name: uploads
# persistentVolumeClaim:
# claimName: uploads-claim
image: humanconnection/nitro-backend:latest
imagePullPolicy: {{ .Values.pullPolicy }}
name: nitro-backend
ports:
- containerPort: 4000
protocol: TCP
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /nitro-backend/public/uploads
name: uploads
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
volumes:
- name: uploads
persistentVolumeClaim:
claimName: uploads-claim
dnsPolicy: ClusterFirst
restartPolicy: Always
terminationGracePeriodSeconds: 30
status: {}

View File

@ -1,8 +1,9 @@
{{- if .Values.developmentMailserverDomain }}
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-mailserver
namespace: human-connection
spec:
replicas: 1
minReadySeconds: 15

View File

@ -1,7 +1,8 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-maintenance
namespace: human-connection
spec:
selector:
matchLabels:

View File

@ -1,7 +1,8 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-neo4j
namespace: human-connection
spec:
replicas: 1
strategy:
@ -44,14 +45,12 @@ spec:
envFrom:
- configMapRef:
name: {{ .Release.Name }}-configmap
- secretRef:
name: {{ .Release.Name }}-secrets
# volumeMounts:
# - mountPath: /data/
# name: neo4j-data
# volumes:
# - name: neo4j-data
# persistentVolumeClaim:
# claimName: neo4j-data-claim
volumeMounts:
- mountPath: /data/
name: neo4j-data
volumes:
- name: neo4j-data
persistentVolumeClaim:
claimName: neo4j-data-claim
restartPolicy: Always
terminationGracePeriodSeconds: 30

View File

@ -1,7 +1,8 @@
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-webapp
namespace: human-connection
spec:
replicas: 2
minReadySeconds: 15

View File

@ -2,15 +2,15 @@ apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-ingress
namespace: human-connection
annotations:
kubernetes.io/ingress.class: "nginx"
certmanager.k8s.io/issuer: {{ .Values.letsencryptIssuer }}
certmanager.k8s.io/acme-challenge-type: http01
nginx.ingress.kubernetes.io/proxy-body-size: 6m
cert-manager.io/cluster-issuer: {{ .Values.letsencryptIssuer }}
nginx.ingress.kubernetes.io/proxy-body-size: 10m
spec:
tls:
- hosts:
- {{ .Values.humanConnectionDomain }}
- {{ .Values.humanConnectionDomain }}
secretName: tls
rules:
- host: {{ .Values.humanConnectionDomain }}
@ -18,7 +18,7 @@ spec:
paths:
- path: /
backend:
serviceName: webapp
serviceName: {{ .Release.Name }}-webapp
servicePort: 3000
{{- if .Values.developmentMailserverDomain }}
- host: {{ .Values.developmentMailserverDomain }}

View File

@ -1,11 +1,14 @@
apiVersion: certmanager.k8s.io/v1alpha1
kind: Issuer
apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
name: {{ .Release.Name }}-letsencrypt-prod
name: letsencrypt-prod
spec:
acme:
server: https://acme-v02.api.letsencrypt.org/directory
email: {{ .Values.supportEmail }}
privateKeySecretRef:
name: letsencrypt-prod
http01: {}
solvers:
- http01:
ingress:
class: nginx

View File

@ -1,11 +1,14 @@
apiVersion: certmanager.k8s.io/v1alpha1
kind: Issuer
apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
name: {{ .Release.Name }}-letsencrypt-staging
name: letsencrypt-staging
spec:
acme:
server: https://acme-staging-v02.api.letsencrypt.org/directory
email: {{ .Values.supportEmail }}
privateKeySecretRef:
name: letsencrypt-staging
http01: {}
solvers:
- http01:
ingress:
class: nginx

View File

@ -2,6 +2,7 @@ apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-backend
namespace: human-connection
spec:
ports:
- name: graphql

View File

@ -2,6 +2,7 @@ apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-neo4j
namespace: human-connection
spec:
ports:
- name: bolt

View File

@ -2,10 +2,12 @@ apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-webapp
namespace: human-connection
spec:
ports:
- name: web
- name: {{ .Release.Name }}-webapp
port: 3000
protocol: TCP
targetPort: 3000
selector:
human-connection.org/selector: deployment-webapp

View File

@ -1,20 +1,20 @@
domain: nitro-staging.human-connection.org
domain: develop.human-connection.org
commit: 889a7cdd24dda04a139b2b77d626e984d6db6781
pullPolicy: Always
# configs
developmentMailserverDomain: "helm-nitro-mailserver.human-connection.org"
humanConnectionDomain: "helm-staging.human-connection.org"
supportEmail: "developer@human-connection.org"
letsencryptIssuer: "letsencrypt-staging"
developmentMailserverDomain: "mailserver.human-connection.org"
humanConnectionDomain: "develop.human-connection.org"
supportEmail: "devcom@human-connection.org"
letsencryptIssuer: "letsencrypt-prod"
smtpHost: "mailserver.human-connection"
smtpPort: "25"
smtpUsername:
smtpPassword:
sentryDsnWebapp:
sentryDsnBackend:
sentryDsnWebapp: "https://f6a31aa8f406426187cb45ae6dacdbeb@nitro-sentry.human-connection.org/7"
sentryDsnBackend: "https://44e0f3fb04894fbfbcf898f2bcf652de@nitro-sentry.human-connection.org/6"
neo4jResourceRequestsMemory: "1G"
neo4jResourceLimitsMemory: "1G"
neo4jResourceLimitsMemory: "2G"
neo4jConfig:
apoc_import_file_enabled: "true"
dbms_memory_pagecache_size: "490M"
@ -22,10 +22,6 @@ neo4jConfig:
dbms_memory_heap_initial__size: "500M"
# secrets
jwtSecret: b/&&7b78BF&fv/Vd
privateKeyPassphrase: a7dsf78sadg87ad87sfagsadg78
mapboxToken: pk.eyJ1IjoiaHVtYW4tY29ubmVjdGlvbiIsImEiOiJjajl0cnBubGoweTVlM3VwZ2lzNTNud3ZtIn0.KZ8KK9l70omjXbEkkbHGsQ
mongodbUsername:
mongodbPassword:
neo4jUsername: neo4j
neo4jPassword: neo4j
jwtSecret: "Yi8mJjdiNzhCRiZmdi9WZA=="
privateKeyPassphrase: "YTdkc2Y3OHNhZGc4N2FkODdzZmFnc2FkZzc4"
mapboxToken: "cGsuZXlKMUlqb2lhSFZ0WVc0dFkyOXVibVZqZEdsdmJpSXNJbUVpT2lKamFqbDBjbkJ1Ykdvd2VUVmxNM1Z3WjJsek5UTnVkM1p0SW4wLktaOEtLOWw3MG9talhiRWtrYkhHc1E="

View File

@ -1,47 +1,60 @@
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nitro-backend
namespace: human-connection
spec:
replicas: 1
minReadySeconds: 15
progressDeadlineSeconds: 60
strategy:
rollingUpdate:
maxSurge: 0
maxUnavailable: "100%"
selector:
matchLabels:
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
human-connection.org/commit: COMMIT
human-connection.org/selector: deployment-human-connection-backend
name: nitro-backend
namespace: human-connection
spec:
minReadySeconds: 15
progressDeadlineSeconds: 60
replicas: 1
revisionHistoryLimit: 2147483647
selector:
matchLabels:
human-connection.org/selector: deployment-human-connection-backend
strategy:
rollingUpdate:
maxSurge: 0
maxUnavailable: 100%
type: RollingUpdate
template:
metadata:
annotations:
backup.velero.io/backup-volumes: uploads
creationTimestamp: null
labels:
human-connection.org/commit: COMMIT
human-connection.org/selector: deployment-human-connection-backend
template:
metadata:
annotations:
backup.velero.io/backup-volumes: uploads
labels:
human-connection.org/commit: COMMIT
human-connection.org/selector: deployment-human-connection-backend
name: "nitro-backend"
spec:
containers:
- name: nitro-backend
image: humanconnection/nitro-backend:latest
imagePullPolicy: Always
ports:
- containerPort: 4000
envFrom:
- configMapRef:
name: configmap
- secretRef:
name: human-connection
volumeMounts:
- mountPath: /nitro-backend/public/uploads
name: uploads
volumes:
- name: uploads
persistentVolumeClaim:
claimName: uploads-claim
restartPolicy: Always
terminationGracePeriodSeconds: 30
status: {}
name: nitro-backend
spec:
containers:
- envFrom:
- configMapRef:
name: configmap
- secretRef:
name: human-connection
image: humanconnection/nitro-backend:latest
imagePullPolicy: Always
name: nitro-backend
ports:
- containerPort: 4000
protocol: TCP
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /nitro-backend/public/uploads
name: uploads
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
volumes:
- name: uploads
persistentVolumeClaim:
claimName: uploads-claim
status: {}