@@ -16,3 +16,96 @@ export DRONE_TAG="1.0.0" # trigger this script on drone t
1616
1717go run ./ coverage.xml
1818```
19+
20+ ## Postgresql
21+
22+ To create a Postgres instance with the ` coverage_analytics ` database by Helm
23+
24+ ### Install postgresql
25+ ``` sh
26+ helm upgrade -i postgres-coverage bitnami/postgresql -f ./values.yml -n core
27+ ```
28+
29+ values.yml
30+ ``` yaml
31+ image :
32+ tag : 14.5.0
33+
34+ auth :
35+ database : coverage_analytics
36+ enablePostgresUser : true
37+ existingSecret : " "
38+ password : changeme
39+ postgresPassword : changeme
40+ replicationPassword : " "
41+ replicationUsername : repl_user
42+ secretKeys :
43+ adminPasswordKey : postgres-password
44+ replicationPasswordKey : replication-password
45+ userPasswordKey : password
46+ usePasswordFiles : false
47+ username : coverage_analytics
48+ ` ` `
49+
50+ ### Expose postgresql service (optional)
51+
52+ ` ` ` sh
53+ kubectl apply -f ./service.yml -n ${your-namespace}
54+ kubectl apply -f ./ingress.yml -n ${your-namespace}
55+ ```
56+
57+ service.yml
58+ ``` yml
59+ apiVersion : v1
60+ kind : Service
61+ metadata :
62+ name : postgres-coverage-postgresql
63+ labels :
64+ app.kubernetes.io/component : primary
65+ app.kubernetes.io/instance : postgres-coverage
66+ app.kubernetes.io/managed-by : Helm
67+ app.kubernetes.io/name : postgresql
68+ helm.sh/chart : postgresql-12.1.2
69+ annotations :
70+ meta.helm.sh/release-name : postgres-coverage
71+ meta.helm.sh/release-namespace : core
72+ spec :
73+ ports :
74+ - protocol : TCP
75+ port : 5432
76+ targetPort : 5432
77+ nodePort : 30432
78+ selector :
79+ app.kubernetes.io/component : primary
80+ app.kubernetes.io/instance : postgres-coverage
81+ app.kubernetes.io/name : postgresql
82+ type : NodePort
83+ sessionAffinity : None
84+ externalTrafficPolicy : Cluster
85+ ` ` `
86+
87+ ingress.yml
88+ ` ` ` yml
89+ apiVersion : networking.k8s.io/v1beta1
90+ kind : Ingress
91+ metadata :
92+ name : postgres-coverage
93+ labels :
94+ app : postgres-coverage
95+ annotations :
96+ kubernetes.io/ingress.class : nginx
97+ kubernetes.io/tls-acme : ' true'
98+ spec :
99+ tls :
100+ - hosts :
101+ - pg.example.app
102+ secretName : postgres-coverage-tls
103+ rules :
104+ - host : pg.example.app
105+ http :
106+ paths :
107+ - path : /
108+ backend :
109+ serviceName : postgres-coverage-postgresql
110+ servicePort : 5432
111+ ` ` `
0 commit comments