-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #229 from jackstockley89/helm-temp
feat(helm): Update charts adding new features
- Loading branch information
Showing
10 changed files
with
290 additions
and
59 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,115 @@ | ||
# Declare variables to be passed into your templates. | ||
envAWS: [true/false] | ||
envRDS: [true/false] | ||
canary: [true/false] | ||
namespace: [name of the namespace to be deployed to] | ||
|
||
annotations: | ||
hookDeletePolicy: hook-succeeded ## used for jobs to delete after success deployment | ||
setIdentifier: [<ingress name>-<namespace name>-green] ## used for ingress | ||
app_service: | ||
name: [application service name] | ||
ports: | ||
name: [protocol name] | ||
protocol: [TCP/] | ||
port: [port number] | ||
|
||
db_service: | ||
name: [database service name] | ||
## secret name and key should only be used for rds instances | ||
secretName: [rds secret output name] | ||
key: [rds endpoint secret value] | ||
## ports section is only needed for none rds db instances | ||
ports: | ||
name: [protocol name] | ||
protocol: [TCP/] | ||
port: [port number] | ||
|
||
ingress: | ||
enabled: true | ||
name: [ingress name] | ||
hosts: | ||
- host: [application frontend address] | ||
secretName: [certificate secret name] | ||
path: / | ||
serviceName: [application service name] | ||
servicePort: [application port number] | ||
|
||
## only set db_deployment when not using a rds instance | ||
db_deployment: | ||
replicas: [number of pods] | ||
app: [name of database] | ||
template: | ||
containers: | ||
image: [image address] | ||
imagePullPolicy: [Always/] | ||
resources: | ||
requests: | ||
memory: [min pod memory] | ||
cpu: [min pod cpu] | ||
limits: | ||
memory: [max pod memory] | ||
cpu: [max pod cpu] | ||
ports: | ||
- containerPort: [database port number] | ||
|
||
app_deployment: | ||
replicas: [number of pods] | ||
app: [name of application] | ||
template: | ||
containers: | ||
image: [image address] | ||
imagePullPolicy: [Always/] | ||
resources: | ||
requests: | ||
memory: [min pod memory] | ||
cpu: [min pod cpu] | ||
limits: | ||
memory: [max pod memory] | ||
cpu: [max pod cpu] | ||
ports: | ||
- containerPort: [application port number] | ||
|
||
cycling_blog_db_create: | ||
name: [job name] | ||
app: [application name] | ||
template: | ||
containers: | ||
imagePullPolicy: Always | ||
command: ["psql"] | ||
args: ["-h", "$(CYCLING_BLOG_DB_SERVICE_SERVICE_HOST)", "-U", "$(POSTGRES_USER)", "-d", "$(POSTGRES_DB)", "-w", "-a", "-f", "[file name]"] | ||
restartPolicy: Never | ||
|
||
cycling_blog_db_insert: | ||
name: [job name] | ||
app: [application name] | ||
template: | ||
containers: | ||
imagePullPolicy: Always | ||
command: ["psql"] | ||
args: ["-h", "$(CYCLING_BLOG_DB_SERVICE_SERVICE_HOST)", "-U", "$(POSTGRES_USER)", "-d", "$(POSTGRES_DB)", "-w", "-a", "-f", "[file name]"] | ||
restartPolicy: Never | ||
|
||
db_env: | ||
- name: POSTGRES_USER | ||
secretName: [database secret output name] | ||
key: [database username value] | ||
- name: PGPASSWORD | ||
secretName: [database secret output name] | ||
key: [database password value] | ||
- name: POSTGRESQL_PASSWORD | ||
secretName: [database secret output name] | ||
key: [database password value] | ||
- name: POSTGRES_DB | ||
secretName: [database secret output name] | ||
key: [database name value] | ||
|
||
secret: | ||
data: | ||
auth: [encrypted secret] | ||
connect: [encrypted secret] | ||
hostname: [encrypted secret] | ||
username: [encrypted secret] | ||
password: [encrypted secret] | ||
dbname: [encrypted secret] | ||
port: [encrypted secret] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,118 @@ | ||
{{- $canary := .Values.canary -}} | ||
{{- $envAWS := .Values.envAWS -}} | ||
{{- $path := .Values.canary_ingress.path -}} | ||
{{- $serviceName := .Values.canary_ingress.serviceName -}} | ||
{{- $servicePort := .Values.canary_ingress.servicePort -}} | ||
|
||
{{- if eq $canary true -}} | ||
apiVersion: apps/v1 | ||
kind: Deployment | ||
metadata: | ||
name: {{ .Values.canary_deployment.app }} | ||
namespace: {{ .Values.namespace }} | ||
labels: | ||
app: {{ .Values.canary_deployment.app }} | ||
spec: | ||
replicas: {{ .Values.canary_deployment.replicas }} | ||
selector: | ||
matchLabels: | ||
app: {{ .Values.canary_deployment.app }} | ||
template: | ||
metadata: | ||
labels: | ||
app: {{ .Values.canary_deployment.app }} | ||
spec: | ||
containers: | ||
- name: {{ .Values.canary_deployment.app }} | ||
image: {{ .Values.canary_deployment.template.containers.image }} | ||
imagePullPolicy: {{ .Values.canary_deployment.template.containers.imagePullPolicy }} | ||
resources: | ||
requests: | ||
memory: {{ .Values.canary_deployment.template.containers.resources.requests.memory }} | ||
cpu: {{ .Values.canary_deployment.template.containers.resources.requests.cpu }} | ||
limits: | ||
memory: {{ .Values.canary_deployment.template.containers.resources.limits.memory }} | ||
cpu: {{ .Values.canary_deployment.template.containers.resources.limits.cpu }} | ||
ports: | ||
- containerPort: {{ .Values.canary_service.ports.port }} | ||
env: | ||
{{- range .Values.db_env }} | ||
- name: {{ .name }} | ||
valueFrom: | ||
secretKeyRef: | ||
name: {{ .secretName }} | ||
key: {{ .key }} | ||
{{- end }} | ||
--- | ||
{{- if eq $envAWS true -}} | ||
apiVersion: networking.k8s.io/v1 | ||
kind: Ingress | ||
metadata: | ||
name: {{ .Values.canary_ingress.name }} | ||
namespace: {{ .Values.namespace }} | ||
annotations: | ||
nginx.ingress.kubernetes.io/canary: "true" | ||
nginx.ingress.kubernetes.io/canary-weight: "20" | ||
nginx.ingress.kubernetes.io/canary-by-header: "X-Canary" | ||
spec: | ||
ingressClassName: default | ||
tls: | ||
{{- range .Values.canary_ingress.hosts }} | ||
- hosts: | ||
- {{ .host }} | ||
secretName: {{ .secretName }} | ||
{{- end }} | ||
rules: | ||
{{- range .Values.canary_ingress.hosts }} | ||
- host: {{ .host }} | ||
http: | ||
paths: | ||
- path: {{ $path }} | ||
pathType: ImplementationSpecific | ||
backend: | ||
service: | ||
name: {{ $serviceName }} | ||
port: | ||
number: {{ $servicePort }} | ||
{{- end }} | ||
{{- else if eq $envAWS false -}} | ||
apiVersion: networking.k8s.io/v1 | ||
kind: Ingress | ||
metadata: | ||
name: {{ .Values.canary_ingress.name }} | ||
namespace: {{ .Values.namespace }} | ||
annotations: | ||
kubernetes.io/ingress.class: nginx | ||
nginx.ingress.kubernetes.io/canary: "true" | ||
nginx.ingress.kubernetes.io/canary-weight: "20" | ||
nginx.ingress.kubernetes.io/canary-by-header: "X-Canary" | ||
spec: | ||
rules: | ||
- host: {{ .Values.canary_ingress.host }} | ||
- http: | ||
paths: | ||
- path: {{ $path }} | ||
pathType: Prefix | ||
backend: | ||
service: | ||
name: {{ $serviceName }} | ||
port: | ||
number: {{ $servicePort }} | ||
{{- end }} | ||
--- | ||
apiVersion: v1 | ||
kind: Service | ||
metadata: | ||
name: {{ .Values.canary_service.name }} | ||
namespace: {{ .Values.namespace }} | ||
labels: | ||
app: {{ .Values.canary_deployment.app }} | ||
spec: | ||
ports: | ||
- name: {{ .Values.canary_service.ports.name }} | ||
protocol: {{ .Values.canary_service.ports.protocol }} | ||
port: {{ .Values.canary_service.ports.port }} | ||
targetPort: {{ .Values.canary_service.ports.port }} | ||
selector: | ||
app: {{ .Values.canary_deployment.app }} | ||
{{- end }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.