From 678709077bae7e48c1a4578dabcb1349bed9b04e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lukas=20K=C3=B6hler?= <lukas.koehler@h-da.de>
Date: Mon, 24 Sep 2018 12:07:10 +0200
Subject: [PATCH] updated openshifttemplate with postgres database

---
 openshiftTemplate.yml | 95 ++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 94 insertions(+), 1 deletion(-)

diff --git a/openshiftTemplate.yml b/openshiftTemplate.yml
index f717516..1d114db 100644
--- a/openshiftTemplate.yml
+++ b/openshiftTemplate.yml
@@ -11,8 +11,83 @@ metadata:
     tags: hda,hdapad
 objects:
 
-# init container definitions
+# student postgres
+- apiVersion: v1
+  kind: PersistentVolumeClaim
+  metadata:
+    name: studentpostgres-volume
+  spec:
+    accessModes:
+    - ReadWriteOnce
+    resources:
+      requests:
+        storage: ${STUDENT_POSTGRES_SIZE}Gi
+  status: {}
+
+- apiVersion: v1
+  kind: DeploymentConfig
+  metadata:
+    name: studentdb
+  spec:
+    replicas: 0
+    selector:
+      app: studentdb
+      deploymentconfig: studentdb
+    template:
+      metadata:
+        labels:
+          app: studentdb
+          deploymentconfig: studentdb
+      spec:
+        containers:
+        - env:
+          - name: POSTGRESQL_USER
+            value: ${STUDENT_DB_USERNAME}
+          - name: POSTGRESQL_PASSWORD
+            value: ${STUDENT_DB_PASSWORD}
+          - name: POSTGRESQL_DATABASE
+            value: studentdbdefault
+          image: ' '
+          name: studentdb
+          ports:
+          - containerPort: 5432
+            protocol: TCP
+          volumeMounts:
+          - mountPath: /var/lib/pgsql/data
+            name: studentpostgres-volume
+        volumes:
+        - name: studentpostgres-volume
+          persistentVolumeClaim:
+            claimName: studentpostgres-volume
+    test: false
+    triggers:
+    - type: ConfigChange
+    - imageChangeParams:
+        automatic: true
+        containerNames:
+        - studentdb
+        from:
+          kind: ImageStreamTag
+          namespace: openshift
+          name: postgresql:9.6
+      type: ImageChange
+
+- apiVersion: v1
+  kind: Service
+  metadata:
+    labels:
+      app: studentdb
+    name: studentdb
+  spec:
+    ports:
+    - name: studentdb-5432
+      port: 5432
+      protocol: TCP
+      targetPort: 5432
+    selector:
+      deploymentconfig: studentdb
 
+# init container definitions
 - apiVersion: v1
   kind: DeploymentConfig
   metadata:
@@ -825,12 +900,30 @@ parameters:
   required: true
   name: POSTGRES_SIZE
 
+- displayName: student postgres volume size in GB
+  from: '[0-9]{4}'
+  value: '50'
+  required: true
+  name: STUDENT_POSTGRES_SIZE
+
 - displayName: opensubmit-web volume size in GB
   from: '[0-9]{4}'
   required: true
   value: '15'
   name: WEB_VOLUME_SIZE
 
+- displayName: student database username
+  name: STUDENT_DB_USERNAME
+  from: user[a-zA-Z0-9]{3}
+  generate: expression
+  required: true
+
+- displayName: student database password
+  name: STUDENT_DB_PASSWORD
+  from: '[a-zA-Z0-9]{8}'
+  generate: expression
+  required: true
+
 # jenkins parameter
 - name: JENKINS_VOLUME_CAPACITY
   displayName: jenkins volume size in GB
-- 
GitLab