#!/bin/bash
 
-HELM_APPS=('mso' 'message-router' 'sdnc' 'vid' 'robot')
-ONAP_APPS=('sdc' 'aai' 'portal' 'policy' 'appc')
+HELM_APPS=('mso' 'message-router' 'sdnc' 'vid' 'robot' 'portal')
+ONAP_APPS=('sdc' 'aai' 'policy' 'appc')
 ONAP_DOCKER_REGISTRY_KEY=${ONAP_DOCKER_REGISTRY_KEY:-onap-docker-registry-key}
 ONAP_DOCKER_REGISTRY=${ONAP_DOCKER_REGISTRY:-nexus3.onap.org:10001}
 ONAP_DOCKER_USER=${ONAP_DOCKER_USER:-docker}
 
--- /dev/null
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+
+# docker folder
+docker/
 
--- /dev/null
+apiVersion: v1
+description: A Helm chart for Kubernetes
+name: portal
+version: 0.1.0
 
 kind: Service
 metadata:
   name: portaldb
+  namespace: {{ .Values.NS }}
   labels:
     app: portaldb
 spec:
   labels:
     app: portalapps
   name: portalapps
+  namespace: {{ .Values.NS }}
 spec:
   ports:
   - name: portal-1
   labels:
     app: vnc-portal
   name: vnc-portal
+  namespace: {{ .Values.NS }}
 spec:
   ports:
   - name: tcp-1
 kind: Service
 metadata:
   name: portalwidgets
+  namespace: {{ .Values.NS }}
   labels:
     app: portalwidgets
 spec:
 
 kind: Deployment
 metadata:
   name: portalapps
+  namespace: {{ .Values.NS }}
 spec:
   selector:
     matchLabels:
                        }
                    }
                ],
-               "image": "oomk8s/readiness-check:1.0.0",
-               "imagePullPolicy": "Always",
+               "image": "{{ .Values.image.readiness }}",
+               "imagePullPolicy": "{{ .Values.pullPolicy }}",
                "name": "portalapps-readiness"
            },
            {
                    "name": "portal-root"
                  }
                ],
-               "image": "oomk8s/mariadb-client-init:1.0.0",
-               "imagePullPolicy": "Always",
+               "image": "{{ .Values.image.mariadbClient }}",
+               "imagePullPolicy": "{{ .Values.pullPolicy }}",
                "name": "provision-portaldb-users"
            }
            ]'
     spec:
       containers:
-      - image: nexus3.onap.org:10001/openecomp/portalapps:1.1-STAGING-latest
+      - image: {{ .Values.image.portalapps }}
+        imagePullPolicy: {{ .Values.pullPolicy }}
         lifecycle:
           postStart:
             exec:
       volumes:
         - name: portal-fusion-properties
           hostPath:
-            path:  /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/fusion.properties
+            path:  /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/fusion.properties
         - name: portal-openid-connect-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/openid-connect.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/openid-connect.properties
         - name: portal-system-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/system.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/system.properties
         - name: portal-portal-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/portal.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPPORTALAPP/portal.properties
         - name: dbcapp-fusion-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPDBCAPP/fusion.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPDBCAPP/fusion.properties
         - name: dbcapp-system-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPDBCAPP/system.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPDBCAPP/system.properties
         - name: dbcapp-portal-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPDBCAPP/portal.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPDBCAPP/portal.properties
         - name: dbcapp-dbcapp-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPDBCAPP/dbcapp.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPDBCAPP/dbcapp.properties
         - name: sdkapp-system-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPSDKAPP/system.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPSDKAPP/system.properties
         - name: sdkapp-portal-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPSDKAPP/portal.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPSDKAPP/portal.properties
         - name: sdkapp-fusion-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPSDKAPP/fusion.properties            
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPSDKAPP/fusion.properties            
         - name: portal-mariadb-onboarding-sql
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/mariadb/oom_updates.sql
+            path: /dockerdata-nfs/onap/portal/mariadb/oom_updates.sql
         - name: portal-root
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal
+            path: /dockerdata-nfs/onap/portal
         - name: portal-logs
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/logs
+            path: /dockerdata-nfs/onap/portal/logs
       imagePullSecrets:
       - name: onap-docker-registry-key
 
 kind: Deployment
 metadata:
   name: portaldb
+  namespace: {{ .Values.NS }}
 spec:
   selector:
     matchLabels:
       name: portaldb
     spec:
       containers:
-      - image: nexus3.onap.org:10001/openecomp/portaldb:1.1-STAGING-latest
+      - image: {{ .Values.image.portaldb}} 
+        imagePullPolicy: {{ .Values.pullPolicy }}
         name: "portaldb"
         env:
         - name: MYSQL_HOST
       volumes:
       - name: portal-mariadb-data
         hostPath:
-          path: /dockerdata-nfs/onapdemo/portal/mariadb/data
+          path: /dockerdata-nfs/onap/portal/mariadb/data
       imagePullSecrets:
       - name: onap-docker-registry-key
 
   labels:
     app: vnc-portal
   name: vnc-portal
+  namespace: {{ .Values.NS }}
 spec:
   selector:
     matchLabels:
                       }
                   }
               ],
-              "image": "oomk8s/readiness-check:1.0.0",
-              "imagePullPolicy": "Always",
+              "image": "{{ .Values.image.readiness }}",
+              "imagePullPolicy": "{{ .Values.pullPolicy }}",
               "name": "vnc-portal-readiness"
           },
           {
                       "value": "onap-policy"
                   }
               ],
-              "image": "oomk8s/readiness-check:1.0.0",
-              "imagePullPolicy": "Always",
+              "image": "{{ .Values.image.readiness }}",
+              "imagePullPolicy": "{{ .Values.pullPolicy }}",
               "name": "vnc-pap-readiness"
           },
           {
                       "value": "onap-sdc"
                   }
               ],
-              "image": "oomk8s/readiness-check:1.0.0",
-              "imagePullPolicy": "Always",
+              "image": "{{ .Values.image.readiness }}",
+              "imagePullPolicy": "{{ .Values.pullPolicy }}",
               "name": "vnc-sdc-readiness"
           },
           {
                       "value": "onap-vid"
                   }
               ],
-              "image": "oomk8s/readiness-check:1.0.0",
-              "imagePullPolicy": "Always",
+              "image": "{{ .Values.image.readiness }}",
+              "imagePullPolicy": "{{ .Values.pullPolicy }}",
               "name": "vnc-vid-readiness"
           },
           {
               "command": ["/bin/sh","-c"],
               "args": ["echo `host sdc-be.onap-sdc | awk ''{print$4}''` sdc.api.be.simpledemo.openecomp.org  >> /ubuntu-init/hosts; echo `host portalapps.onap-portal | awk ''{print$4}''` portal.api.simpledemo.openecomp.org  >> /ubuntu-init/hosts; echo `host pap.onap-policy | awk ''{print$4}''` policy.api.simpledemo.openecomp.org  >> /ubuntu-init/hosts; echo `host sdc-fe.onap-sdc | awk ''{print$4}''` sdc.ui.simpledemo.openecomp.org  >> /ubuntu-init/hosts; echo `host vid-server.onap-vid | awk ''{print$4}''` vid.api.simpledemo.openecomp.org >> /ubuntu-init/hosts; echo `host sparky-fe.onap-aai | awk ''{print$4}''` aai.api.simpledemo.openecomp.org  >> /ubuntu-init/hosts"],
-              "image": "oomk8s/ubuntu-init:1.0.0",
-              "imagePullPolicy": "Always",
+              "image": "{{ .Values.image.ubuntuInit }}",
+              "imagePullPolicy": "{{ .Values.pullPolicy }}",
               "name": "vnc-init-hosts",
               "volumeMounts": [
                 {
           ]'
     spec:
       containers:
-      - image: dorowu/ubuntu-desktop-lxde-vnc
+      - image: {{ .Values.image.ubuntuDesktop }}
+        imagePullPolicy: {{ .Values.pullPolicy }}
         lifecycle:
           postStart:
             exec:
 
 kind: Deployment
 metadata:
   name: portalwidgets
+  namespace: {{ .Values.NS }}
 spec:
   selector:
     matchLabels:
                        }
                    }
                ],
-               "image": "oomk8s/readiness-check:1.0.0",
-               "imagePullPolicy": "Always",
+               "image": "{{ .Values.image.readiness }}",
+               "imagePullPolicy": "{{ .Values.pullPolicy }}",
                "name": "portalapps-readiness"
            }
            ]'
     spec:
       containers:
-      - image: nexus3.onap.org:10001/openecomp/portalwms:1.1-STAGING-latest
+      - image: {{ .Values.image.portalwms }}
+        imagePullPolicy: {{ .Values.pullPolicy }} 
         name: portalwidgets
         volumeMounts:
         - mountPath: /application.properties
       volumes:
         - name: portalwidgets-application-properties
           hostPath:
-            path: /dockerdata-nfs/onapdemo/portal/portal-fe/webapps/etc/ECOMPWIDGETMS/application.properties
+            path: /dockerdata-nfs/onap/portal/portal-fe/webapps/etc/ECOMPWIDGETMS/application.properties
 
--- /dev/null
+NS: onap-portal
+pullPolicy: Always
+image:
+  readiness: oomk8s/readiness-check:1.0.0
+  portalapps: nexus3.onap.org:10001/openecomp/portalapps:1.1-STAGING-latest
+  portaldb: nexus3.onap.org:10001/openecomp/portaldb:1.1-STAGING-latest
+  mariadbClient: oomk8s/mariadb-client-init:1.0.0
+  portalwms: nexus3.onap.org:10001/openecomp/portalwms:1.1-STAGING-latest
+  ubuntuInit: oomk8s/ubuntu-init:1.0.0
+  ubuntuDesktop: dorowu/ubuntu-desktop-lxde-vnc