Added provider and invoker

Change-Id: I443b8b11a2304621109a9729473e05af8461f4f0
diff --git a/rapps/postgres.yaml b/rapps/postgres.yaml
new file mode 100644
index 0000000..8508e64
--- /dev/null
+++ b/rapps/postgres.yaml
@@ -0,0 +1,135 @@
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+  name: postgres-storage-pv-volume
+  namespace: default
+  labels:
+    type: local
+    app: postgres
+spec:
+  storageClassName: manual
+  capacity:
+    storage: 2Gi
+  accessModes:
+    - ReadWriteOnce
+  hostPath:
+    path: "/var/keycloak/data2"
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: postgres-storage-pv-claim
+  namespace: default
+  labels:
+    app: postgres
+spec:
+  storageClassName: manual
+  accessModes:
+    - ReadWriteOnce
+  resources:
+    requests:
+      storage: 2Gi
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: db-init
+data:
+  init.sql: |
+    SELECT 'CREATE DATABASE capif'
+    WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'capif')\gexec
+    DO $$
+    BEGIN
+      IF NOT EXISTS (SELECT FROM pg_user WHERE  usename = 'capif') THEN
+         CREATE USER capif WITH PASSWORD 'capif'; 
+         GRANT ALL PRIVILEGES ON DATABASE capif TO capif;
+      END IF;
+    END
+    $$;
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: postgres
+  namespace: default
+spec:
+  type: NodePort
+  selector:
+    app: postgres
+  ports:
+    - protocol: TCP
+      port: 5432 
+      nodePort: 30032
+      targetPort: 5432 
+---
+apiVersion: apps/v1 
+kind: Deployment
+metadata:
+  name: postgres
+  namespace: default
+spec:
+  selector:
+    matchLabels:
+      app: postgres
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app: postgres
+    spec:
+      hostname: postgres
+      containers:
+      - image: nexus3.onap.org:10001/postgres
+        name: postgres
+        imagePullPolicy: IfNotPresent 
+        env:
+        - name: POSTGRES_DB
+          value: keycloak 
+        - name: POSTGRES_USER
+          value: keycloak 
+        - name: POSTGRES_PASSWORD
+          value: keycloak 
+        - name: PGDATA
+          value: /var/lib/pgsql/data 
+        lifecycle:  
+          postStart:
+            exec:
+              command: [ "/bin/sh", "-c", "sleep 10 && psql -U $POSTGRES_USER -f /init.sql" ]
+        livenessProbe:
+          exec:
+            command:
+              - /bin/sh
+              - -c
+              - exec pg_isready -U "keycloak" -h 127.0.0.1 -p 5432
+          initialDelaySeconds: 30
+          periodSeconds: 10
+          timeoutSeconds: 5
+        readinessProbe:
+          exec:
+            command: ["psql", "-w", "-U", $(POSTGRES_USER), "-d", $(POSTGRES_DB), "-c", "SELECT 1"]
+          initialDelaySeconds: 15
+          timeoutSeconds: 2
+        ports:
+        - containerPort: 5432 
+          name: postgres
+        volumeMounts:
+        - name: postgres-persistent-storage
+          mountPath: /var/lib/pgsql/data 
+        - name : tmp-dir  
+          mountPath: /tmp
+        - name: db-init
+          mountPath: /init.sql 
+          subPath: init.sql 
+      volumes:
+      - name: postgres-persistent-storage
+        persistentVolumeClaim:
+          claimName: postgres-storage-pv-claim
+      - name: tmp-dir
+        hostPath:
+          path: /tmp
+          type: Directory 
+      - name: db-init
+        configMap:
+          name: db-init
+          defaultMode: 0755