Files
awx-operator/roles/tower/templates/tower_postgres.yaml.j2
2019-11-05 13:07:27 -06:00

79 lines
1.6 KiB
Django/Jinja

# Postgres Secret.
---
apiVersion: v1
kind: Secret
metadata:
name: '{{ meta.name }}-postgres-pass'
namespace: {{ meta.namespace }}
data:
password: {{ tower_postgres_pass | b64encode }}
# Postgres StatefulSet.
---
apiVersion: v1
kind: StatefulSet
metadata:
name: '{{ meta.name }}-postgres'
namespace: '{{ meta.namespace }}'
labels:
app: tower-postgres
spec:
selector:
matchLabels:
app: tower-postgres
serviceName: '{{ meta.name }}'
replicas: 1
updateStrategy:
type: RollingUpdate
template:
metadata:
labels:
app: tower-postgres
spec:
containers:
- image: '{{ tower_postgres_image }}'
name: postgres
env:
- name: POSTGRES_DB
value: awx
- name: POSTGRES_USER
value: awx
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
name: '{{ meta.name }}-postgres-pass'
key: password
ports:
- containerPort: 3306
name: postgres
volumeMounts:
- name: postgres
mountPath: /var/lib/postgresql/data
subPath: data
volumeClaimTemplates:
- metadata:
name: postgres
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: '{{ tower_postgres_storage_request }}'
# Postgres Service.
---
apiVersion: v1
kind: Service
metadata:
name: '{{ meta.name }}-postgres'
namespace: '{{ meta.namespace }}'
labels:
app: tower-postgres
spec:
ports:
- port: 5432
clusterIP: None
selector:
app: tower-postgres