XOS/NEM charts, use a global registry var, split docker image name/tag/pullPolicy

Change-Id: I7f3457882830de050d1357254fc5483faf91d03f
diff --git a/xos-services/addressmanager/Chart.yaml b/xos-services/addressmanager/Chart.yaml
index 8598325..2d43e4e 100644
--- a/xos-services/addressmanager/Chart.yaml
+++ b/xos-services/addressmanager/Chart.yaml
@@ -15,4 +15,8 @@
 
 name: addressmanager
 description: A Helm chart for XOS's "addressmanager" service
-version: 2.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.0.1
+appVersion: 2.0.1
+
diff --git a/xos-services/addressmanager/templates/_helpers.tpl b/xos-services/addressmanager/templates/_helpers.tpl
index dbf02ef..b85862a 100644
--- a/xos-services/addressmanager/templates/_helpers.tpl
+++ b/xos-services/addressmanager/templates/_helpers.tpl
@@ -67,10 +67,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.addressmanager
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/addressmanager/templates/deployment.yaml b/xos-services/addressmanager/templates/deployment.yaml
index 7610ca4..61f1900 100644
--- a/xos-services/addressmanager/templates/deployment.yaml
+++ b/xos-services/addressmanager/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.addressmanager_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/addressmanager/values.yaml b/xos-services/addressmanager/values.yaml
index eb570da..cc9b4e6 100644
--- a/xos-services/addressmanager/values.yaml
+++ b/xos-services/addressmanager/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/addressmanager-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-addressmanager_synchronizerImage: "xosproject/addressmanager-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/att-workflow-driver/Chart.yaml b/xos-services/att-workflow-driver/Chart.yaml
index 5918548..a9cec7c 100644
--- a/xos-services/att-workflow-driver/Chart.yaml
+++ b/xos-services/att-workflow-driver/Chart.yaml
@@ -16,4 +16,7 @@
 
 name: att-workflow-driver
 description: A Helm chart for XOS's "att-workflow-driver" service
-version: 1.0.0-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.2
+appVersion: 1.0.2
diff --git a/xos-services/att-workflow-driver/templates/deployment.yaml b/xos-services/att-workflow-driver/templates/deployment.yaml
index 2f1f479..2b7b439 100644
--- a/xos-services/att-workflow-driver/templates/deployment.yaml
+++ b/xos-services/att-workflow-driver/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.attWorkflowDriver_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/att-workflow-driver/values.yaml b/xos-services/att-workflow-driver/values.yaml
index d6335d3..d1c0289 100644
--- a/xos-services/att-workflow-driver/values.yaml
+++ b/xos-services/att-workflow-driver/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/att-workflow-driver-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-attWorkflowDriver_synchronizerImage: "xosproject/att-workflow-driver-synchronizer:master"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/epc-service/Chart.yaml b/xos-services/epc-service/Chart.yaml
index 47e6af6..fc914fe 100644
--- a/xos-services/epc-service/Chart.yaml
+++ b/xos-services/epc-service/Chart.yaml
@@ -16,4 +16,7 @@
 
 name: epc-service
 description: A Helm chart for XOS's "epc-service" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.1.1
+appVersion: 1.1.1
diff --git a/xos-services/epc-service/templates/_helpers.tpl b/xos-services/epc-service/templates/_helpers.tpl
index d87ebba..531bb40 100644
--- a/xos-services/epc-service/templates/_helpers.tpl
+++ b/xos-services/epc-service/templates/_helpers.tpl
@@ -62,10 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.epc-service
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
+
 {{- end -}}
diff --git a/xos-services/epc-service/templates/deployment.yaml b/xos-services/epc-service/templates/deployment.yaml
index f6e7203..6b487ba 100644
--- a/xos-services/epc-service/templates/deployment.yaml
+++ b/xos-services/epc-service/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/epc-service/values.yaml b/xos-services/epc-service/values.yaml
index 1bbf5be..5788f24 100644
--- a/xos-services/epc-service/values.yaml
+++ b/xos-services/epc-service/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/vepc-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-synchronizerImage: "xosproject/vepc-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/exampleservice/Chart.yaml b/xos-services/exampleservice/Chart.yaml
index cf29f5d..2583804 100644
--- a/xos-services/exampleservice/Chart.yaml
+++ b/xos-services/exampleservice/Chart.yaml
@@ -15,4 +15,8 @@
 
 name: exampleservice
 description: A Helm chart for XOS's "exampleservice" service
-version: 2.1.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.1.2
+appVersion: 2.1.2
+
diff --git a/xos-services/exampleservice/templates/_helpers.tpl b/xos-services/exampleservice/templates/_helpers.tpl
index 7caad77..c33f782 100644
--- a/xos-services/exampleservice/templates/_helpers.tpl
+++ b/xos-services/exampleservice/templates/_helpers.tpl
@@ -58,11 +58,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.exampleservice
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/exampleservice/templates/deployment.yaml b/xos-services/exampleservice/templates/deployment.yaml
index 4fdce2f..8a42d38 100644
--- a/xos-services/exampleservice/templates/deployment.yaml
+++ b/xos-services/exampleservice/templates/deployment.yaml
@@ -36,8 +36,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.exampleservice_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/exampleservice/values.yaml b/xos-services/exampleservice/values.yaml
index 3ae9782..6fea766 100644
--- a/xos-services/exampleservice/values.yaml
+++ b/xos-services/exampleservice/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-exampleservice_synchronizerImage: "xosproject/exampleservice-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: "xosproject/exampleservice-synchronizer"
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -46,3 +47,4 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
diff --git a/xos-services/fabric-crossconnect/Chart.yaml b/xos-services/fabric-crossconnect/Chart.yaml
index 0df5df0..caeb202 100644
--- a/xos-services/fabric-crossconnect/Chart.yaml
+++ b/xos-services/fabric-crossconnect/Chart.yaml
@@ -15,4 +15,9 @@
 
 name: fabric-crossconnect
 description: A Helm chart for XOS's "fabric-crossconnect" service
-version: 1.0.0-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.1.1
+appVersion: 1.1.1
+
+
diff --git a/xos-services/fabric-crossconnect/templates/deployment.yaml b/xos-services/fabric-crossconnect/templates/deployment.yaml
index e657d34..9017f21 100644
--- a/xos-services/fabric-crossconnect/templates/deployment.yaml
+++ b/xos-services/fabric-crossconnect/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.fabric_crossconnect_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/fabric-crossconnect/values.yaml b/xos-services/fabric-crossconnect/values.yaml
index cac52c3..4994d5a 100644
--- a/xos-services/fabric-crossconnect/values.yaml
+++ b/xos-services/fabric-crossconnect/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/fabric-crossconnect-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-fabric_crossconnect_synchronizerImage: "xosproject/fabric-crossconnect-synchronizer:master"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/fabric/Chart.yaml b/xos-services/fabric/Chart.yaml
index de60496..85981f0 100644
--- a/xos-services/fabric/Chart.yaml
+++ b/xos-services/fabric/Chart.yaml
@@ -16,4 +16,8 @@
 
 name: fabric
 description: A Helm chart for XOS's "fabric" service
-version: 2.0.1-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.1.3
+appVersion: 2.1.3
+
diff --git a/xos-services/fabric/templates/deployment.yaml b/xos-services/fabric/templates/deployment.yaml
index 031abc1..6c666b8 100644
--- a/xos-services/fabric/templates/deployment.yaml
+++ b/xos-services/fabric/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.fabric_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/fabric/values.yaml b/xos-services/fabric/values.yaml
index 2f6122c..de47cc9 100644
--- a/xos-services/fabric/values.yaml
+++ b/xos-services/fabric/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: xosproject/fabric-synchronizer
+  tag: "{{ .Chart.AppVersion }}"
+  pullPolicy: Always
 
-fabric_synchronizerImage: "xosproject/fabric-synchronizer:master"
+global:
+  registry: ""
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/hippie-oss/Chart.yaml b/xos-services/hippie-oss/Chart.yaml
index 1da9cf9..2a96022 100644
--- a/xos-services/hippie-oss/Chart.yaml
+++ b/xos-services/hippie-oss/Chart.yaml
@@ -1,5 +1,4 @@
 ---
-
 # Copyright 2018-present Open Networking Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,4 +15,7 @@
 
 name: hippie-oss
 description: A Helm chart for XOS's "hippie-oss" service
-version: 1.1.0-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.1.0
+appVersion: 1.1.0
diff --git a/xos-services/hippie-oss/templates/_helpers.tpl b/xos-services/hippie-oss/templates/_helpers.tpl
index f6f87b8..5f5aa5d 100644
--- a/xos-services/hippie-oss/templates/_helpers.tpl
+++ b/xos-services/hippie-oss/templates/_helpers.tpl
@@ -65,10 +65,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.hippie-oss
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/hippie-oss/templates/deployment.yaml b/xos-services/hippie-oss/templates/deployment.yaml
index 3d31bad..ed3d534 100644
--- a/xos-services/hippie-oss/templates/deployment.yaml
+++ b/xos-services/hippie-oss/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.hippieOSS_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/hippie-oss/values.yaml b/xos-services/hippie-oss/values.yaml
index 9c67f03..46f89c6 100644
--- a/xos-services/hippie-oss/values.yaml
+++ b/xos-services/hippie-oss/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/hippie-oss-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-hippieOSS_synchronizerImage: "xosproject/hippie-oss-synchronizer:master"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/hssdb/Chart.yaml b/xos-services/hssdb/Chart.yaml
index 08c1ec0..be71c23 100644
--- a/xos-services/hssdb/Chart.yaml
+++ b/xos-services/hssdb/Chart.yaml
@@ -16,4 +16,8 @@
 
 name: hssdb
 description: A Helm chart for XOS's "hssdb" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
+
diff --git a/xos-services/hssdb/templates/_helpers.tpl b/xos-services/hssdb/templates/_helpers.tpl
index 28a0acb..9cadd45 100644
--- a/xos-services/hssdb/templates/_helpers.tpl
+++ b/xos-services/hssdb/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.hssdb
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/hssdb/templates/deployment.yaml b/xos-services/hssdb/templates/deployment.yaml
index ece871e..a71be99 100644
--- a/xos-services/hssdb/templates/deployment.yaml
+++ b/xos-services/hssdb/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/hssdb/values.yaml b/xos-services/hssdb/values.yaml
index c412926..410178e 100644
--- a/xos-services/hssdb/values.yaml
+++ b/xos-services/hssdb/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/hssdb-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/hssdb-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -40,6 +41,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/internetemulator/Chart.yaml b/xos-services/internetemulator/Chart.yaml
index 188d767..95edca9 100644
--- a/xos-services/internetemulator/Chart.yaml
+++ b/xos-services/internetemulator/Chart.yaml
@@ -15,4 +15,8 @@
 
 name: internetemulator
 description: A Helm chart for XOS's "internetemulator" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
+
diff --git a/xos-services/internetemulator/templates/_helpers.tpl b/xos-services/internetemulator/templates/_helpers.tpl
index 04a008e..13a5e2c 100644
--- a/xos-services/internetemulator/templates/_helpers.tpl
+++ b/xos-services/internetemulator/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.internetemulator
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/internetemulator/templates/deployment.yaml b/xos-services/internetemulator/templates/deployment.yaml
index 33e24ce..2e57bbe 100644
--- a/xos-services/internetemulator/templates/deployment.yaml
+++ b/xos-services/internetemulator/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/internetemulator/values.yaml b/xos-services/internetemulator/values.yaml
index 4a21056..48d8ae7 100644
--- a/xos-services/internetemulator/values.yaml
+++ b/xos-services/internetemulator/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/internetemulator-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/internetemulator-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -39,6 +40,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/vepcservice/Chart.yaml b/xos-services/k8sepcservice/Chart.yaml
similarity index 78%
rename from xos-services/vepcservice/Chart.yaml
rename to xos-services/k8sepcservice/Chart.yaml
index 2d874fd..a8ff283 100644
--- a/xos-services/vepcservice/Chart.yaml
+++ b/xos-services/k8sepcservice/Chart.yaml
@@ -13,6 +13,9 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-name: vepcservice
-description: A Helm chart for XOS's "vepcservice" service
-version: 1.0.0
+name: k8sepcservice
+description: A Helm chart for XOS's "k8sepcservice" service
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.2
+appVersion: 1.0.2
diff --git a/xos-services/vepcservice/templates/_helpers.tpl b/xos-services/k8sepcservice/templates/_helpers.tpl
similarity index 100%
rename from xos-services/vepcservice/templates/_helpers.tpl
rename to xos-services/k8sepcservice/templates/_helpers.tpl
diff --git a/xos-services/vepcservice/templates/_tosca.tpl b/xos-services/k8sepcservice/templates/_tosca.tpl
similarity index 100%
rename from xos-services/vepcservice/templates/_tosca.tpl
rename to xos-services/k8sepcservice/templates/_tosca.tpl
diff --git a/xos-services/vepcservice/templates/configmap.yaml b/xos-services/k8sepcservice/templates/configmap.yaml
similarity index 100%
rename from xos-services/vepcservice/templates/configmap.yaml
rename to xos-services/k8sepcservice/templates/configmap.yaml
diff --git a/xos-services/vepcservice/templates/deployment.yaml b/xos-services/k8sepcservice/templates/deployment.yaml
similarity index 93%
rename from xos-services/vepcservice/templates/deployment.yaml
rename to xos-services/k8sepcservice/templates/deployment.yaml
index 548c018..c017457 100644
--- a/xos-services/vepcservice/templates/deployment.yaml
+++ b/xos-services/k8sepcservice/templates/deployment.yaml
@@ -36,8 +36,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.vepcservice_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vepcservice/values.yaml b/xos-services/k8sepcservice/values.yaml
similarity index 82%
rename from xos-services/vepcservice/values.yaml
rename to xos-services/k8sepcservice/values.yaml
index f5a6fda..35ae662 100644
--- a/xos-services/vepcservice/values.yaml
+++ b/xos-services/k8sepcservice/values.yaml
@@ -22,10 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/k8sepcservice-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-vepcservice_synchronizerImage: "xosproject/k8sepcservice-synchronizer:{{ .Chart.Version }}"
-#vepcservice_synchronizerImage: "gopinatht/k8sepcservice-synchronizer:candidate"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/kubernetes/Chart.yaml b/xos-services/kubernetes/Chart.yaml
index e565a0e..1377a99 100644
--- a/xos-services/kubernetes/Chart.yaml
+++ b/xos-services/kubernetes/Chart.yaml
@@ -15,4 +15,10 @@
 
 name: kubernetes
 description: A Helm chart for XOS's "kubernetes" service
-version: 1.0.1-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.4
+appVersion: 1.0.4
+
+
+
diff --git a/xos-services/kubernetes/templates/deployment.yaml b/xos-services/kubernetes/templates/deployment.yaml
index 5c4a96a..83763ca 100644
--- a/xos-services/kubernetes/templates/deployment.yaml
+++ b/xos-services/kubernetes/templates/deployment.yaml
@@ -40,8 +40,8 @@
       serviceAccountName: kubernetes-synchronizer
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.kubernetes_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/kubernetes/values.yaml b/xos-services/kubernetes/values.yaml
index 3b0634b..a1383be 100644
--- a/xos-services/kubernetes/values.yaml
+++ b/xos-services/kubernetes/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/kubernetes-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-kubernetes_synchronizerImage: "xosproject/kubernetes-synchronizer:master"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/mcord-subscriber/Chart.yaml b/xos-services/mcord-subscriber/Chart.yaml
index ab2afd4..01109e5 100644
--- a/xos-services/mcord-subscriber/Chart.yaml
+++ b/xos-services/mcord-subscriber/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: mcord-subscriber
 description: A Helm chart that creates a subscriber for the "mcord" service
-version: 2.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.0.1
+appVersion: 2.0.1
diff --git a/xos-services/mcord-subscriber/templates/_helpers.tpl b/xos-services/mcord-subscriber/templates/_helpers.tpl
index 3957742..cf10579 100644
--- a/xos-services/mcord-subscriber/templates/_helpers.tpl
+++ b/xos-services/mcord-subscriber/templates/_helpers.tpl
@@ -62,10 +62,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.mcord-subscriber
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/mcord-subscriber/templates/job.yaml b/xos-services/mcord-subscriber/templates/job.yaml
index ab6051a..6e1ce5e 100644
--- a/xos-services/mcord-subscriber/templates/job.yaml
+++ b/xos-services/mcord-subscriber/templates/job.yaml
@@ -34,8 +34,8 @@
       restartPolicy: Never
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/mcord-subscriber/values.yaml b/xos-services/mcord-subscriber/values.yaml
index 8889d0f..709c506 100644
--- a/xos-services/mcord-subscriber/values.yaml
+++ b/xos-services/mcord-subscriber/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/mcord-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-synchronizerImage: "xosproject/mcord-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/onos-service/Chart.yaml b/xos-services/onos-service/Chart.yaml
index 248ffbf..8c92ab6 100644
--- a/xos-services/onos-service/Chart.yaml
+++ b/xos-services/onos-service/Chart.yaml
@@ -15,4 +15,5 @@
 
 description: A Helm chart for XOS's "onos-service" service, which configures ONOS
 name: onos-service
-version: 2.0.2-dev
+version: 2.0.5
+appVersion: 2.0.5
diff --git a/xos-services/onos-service/templates/deployment.yaml b/xos-services/onos-service/templates/deployment.yaml
index 967d501..0398ee0 100644
--- a/xos-services/onos-service/templates/deployment.yaml
+++ b/xos-services/onos-service/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.onos_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image:  {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/onos-service/values.yaml b/xos-services/onos-service/values.yaml
index ab52be0..21c4bbe 100644
--- a/xos-services/onos-service/values.yaml
+++ b/xos-services/onos-service/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/onos-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-onos_synchronizerImage: "xosproject/onos-synchronizer:master"
+global:
+  registry: ""
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/openstack/Chart.yaml b/xos-services/openstack/Chart.yaml
index bd187f7..c9084d5 100644
--- a/xos-services/openstack/Chart.yaml
+++ b/xos-services/openstack/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: openstack
 description: A Helm chart for XOS's "openstack" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.2
+appVersion: 1.0.2
diff --git a/xos-services/openstack/templates/_helpers.tpl b/xos-services/openstack/templates/_helpers.tpl
index 7a5e6d4..fdca6e8 100644
--- a/xos-services/openstack/templates/_helpers.tpl
+++ b/xos-services/openstack/templates/_helpers.tpl
@@ -57,11 +57,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.openstack
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 nova:
   ca_ssl_cert: "/etc/ssl/certs/ca-certificates.crt"
diff --git a/xos-services/openstack/templates/deployment.yaml b/xos-services/openstack/templates/deployment.yaml
index 6b985f5..0e94850 100644
--- a/xos-services/openstack/templates/deployment.yaml
+++ b/xos-services/openstack/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.openstack_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/openstack/values.yaml b/xos-services/openstack/values.yaml
index bf45148..e619da0 100644
--- a/xos-services/openstack/values.yaml
+++ b/xos-services/openstack/values.yaml
@@ -24,7 +24,13 @@
 
 imagePullPolicy: 'Always'
 
-openstack_synchronizerImage: "xosproject/openstack-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: xosproject/openstack-synchronizer
+  tag: "{{ .Chart.AppVersion }}"
+  pullPolicy: Always
+
+global:
+  registry: ""
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/progran/Chart.yaml b/xos-services/progran/Chart.yaml
index 0d386c3..ddf1ad2 100644
--- a/xos-services/progran/Chart.yaml
+++ b/xos-services/progran/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: progran
 description: A Helm chart for XOS's "progran" service
-version: 2.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.0.2
+appVersion: 2.0.2
diff --git a/xos-services/progran/templates/_helpers.tpl b/xos-services/progran/templates/_helpers.tpl
index 1ee8fa4..8c2404d 100644
--- a/xos-services/progran/templates/_helpers.tpl
+++ b/xos-services/progran/templates/_helpers.tpl
@@ -62,10 +62,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.progran
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/progran/templates/deployment.yaml b/xos-services/progran/templates/deployment.yaml
index 7671550..e8600cc 100644
--- a/xos-services/progran/templates/deployment.yaml
+++ b/xos-services/progran/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/progran/values.yaml b/xos-services/progran/values.yaml
index e26b6fa..c300941 100644
--- a/xos-services/progran/values.yaml
+++ b/xos-services/progran/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/progran-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-synchronizerImage: "xosproject/progran-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/rcord/Chart.yaml b/xos-services/rcord/Chart.yaml
index 873db9c..4e33f42 100644
--- a/xos-services/rcord/Chart.yaml
+++ b/xos-services/rcord/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: rcord
 description: A Helm chart for XOS's "rcord" service
-version: 1.1.0-dev
+icon: https://guide.opencord.org/logos/cord.svg
+version: 1.0.4
+
+appVersion: 1.0.4
diff --git a/xos-services/rcord/templates/deployment.yaml b/xos-services/rcord/templates/deployment.yaml
index de345b3..83b7720 100644
--- a/xos-services/rcord/templates/deployment.yaml
+++ b/xos-services/rcord/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.rcord_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image:  {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/rcord/values.yaml b/xos-services/rcord/values.yaml
index 7d41776..a6e1155 100644
--- a/xos-services/rcord/values.yaml
+++ b/xos-services/rcord/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/rcord-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-rcord_synchronizerImage: "xosproject/rcord-synchronizer:master"
+global:
+  registry: ""
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/sdncontroller/Chart.yaml b/xos-services/sdncontroller/Chart.yaml
index d928666..abbcdb7 100644
--- a/xos-services/sdncontroller/Chart.yaml
+++ b/xos-services/sdncontroller/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: sdncontroller
 description: A Helm chart for XOS's "sdncontroller" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
diff --git a/xos-services/sdncontroller/templates/_helpers.tpl b/xos-services/sdncontroller/templates/_helpers.tpl
index e573928..cb055ba 100644
--- a/xos-services/sdncontroller/templates/_helpers.tpl
+++ b/xos-services/sdncontroller/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.sdncontroller
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/sdncontroller/templates/deployment.yaml b/xos-services/sdncontroller/templates/deployment.yaml
index f28559b..2c886f2 100644
--- a/xos-services/sdncontroller/templates/deployment.yaml
+++ b/xos-services/sdncontroller/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/sdncontroller/values.yaml b/xos-services/sdncontroller/values.yaml
index 64a493a..a9230ef 100644
--- a/xos-services/sdncontroller/values.yaml
+++ b/xos-services/sdncontroller/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/sdncontroller-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/sdncontroller-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -40,6 +41,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/simpleexampleservice/Chart.yaml b/xos-services/simpleexampleservice/Chart.yaml
index 0a88434..f4bc0ce 100644
--- a/xos-services/simpleexampleservice/Chart.yaml
+++ b/xos-services/simpleexampleservice/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: simpleexampleservice
 description: A Helm chart for XOS's "simpleexampleservice" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
diff --git a/xos-services/simpleexampleservice/templates/_helpers.tpl b/xos-services/simpleexampleservice/templates/_helpers.tpl
index e898ed7..58a8fe2 100644
--- a/xos-services/simpleexampleservice/templates/_helpers.tpl
+++ b/xos-services/simpleexampleservice/templates/_helpers.tpl
@@ -81,10 +81,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.simpleexampleservice
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/simpleexampleservice/templates/deployment.yaml b/xos-services/simpleexampleservice/templates/deployment.yaml
index 05b69eb..57db355 100644
--- a/xos-services/simpleexampleservice/templates/deployment.yaml
+++ b/xos-services/simpleexampleservice/templates/deployment.yaml
@@ -36,8 +36,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.simpleexampleservice_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/simpleexampleservice/values.yaml b/xos-services/simpleexampleservice/values.yaml
index f985089..69724c6 100644
--- a/xos-services/simpleexampleservice/values.yaml
+++ b/xos-services/simpleexampleservice/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/simpleexampleservice-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-simpleexampleservice_synchronizerImage: "xosproject/simpleexampleservice-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/vhss/Chart.yaml b/xos-services/vhss/Chart.yaml
index 6de9a24..efe2c4f 100644
--- a/xos-services/vhss/Chart.yaml
+++ b/xos-services/vhss/Chart.yaml
@@ -15,4 +15,8 @@
 
 name: vhss
 description: A Helm chart for XOS's "vhss" service
-version: 1.0.1
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.2
+appVersion: 1.0.2
+
diff --git a/xos-services/vhss/templates/_helpers.tpl b/xos-services/vhss/templates/_helpers.tpl
index bfee549..04bc6db 100644
--- a/xos-services/vhss/templates/_helpers.tpl
+++ b/xos-services/vhss/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.vhss
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/vhss/templates/deployment.yaml b/xos-services/vhss/templates/deployment.yaml
index e697547..81fd874 100644
--- a/xos-services/vhss/templates/deployment.yaml
+++ b/xos-services/vhss/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vhss/values.yaml b/xos-services/vhss/values.yaml
index e188e13..21a18e4 100644
--- a/xos-services/vhss/values.yaml
+++ b/xos-services/vhss/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/vhss-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/vhss-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -40,6 +41,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/vmme/Chart.yaml b/xos-services/vmme/Chart.yaml
index 9469ede..d3907f3 100644
--- a/xos-services/vmme/Chart.yaml
+++ b/xos-services/vmme/Chart.yaml
@@ -15,4 +15,8 @@
 
 name: vmme
 description: A Helm chart for XOS's "vmme" service
-version: 1.0.1
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.2
+appVersion: 1.0.2
+
diff --git a/xos-services/vmme/templates/_helpers.tpl b/xos-services/vmme/templates/_helpers.tpl
index 318d26a..0e2c541 100644
--- a/xos-services/vmme/templates/_helpers.tpl
+++ b/xos-services/vmme/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.vmme
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/vmme/templates/deployment.yaml b/xos-services/vmme/templates/deployment.yaml
index 783084f..e609c52 100644
--- a/xos-services/vmme/templates/deployment.yaml
+++ b/xos-services/vmme/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vmme/values.yaml b/xos-services/vmme/values.yaml
index b6d6358..2fc8801 100644
--- a/xos-services/vmme/values.yaml
+++ b/xos-services/vmme/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/vmme-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/vmme-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -40,6 +41,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/volt/Chart.yaml b/xos-services/volt/Chart.yaml
index f432ea8..cf235e9 100644
--- a/xos-services/volt/Chart.yaml
+++ b/xos-services/volt/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: volt
 description: A Helm chart for XOS's "olt-service" service
-version: 2.0.2-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.1.1
+appVersion: 2.1.1
diff --git a/xos-services/volt/templates/deployment.yaml b/xos-services/volt/templates/deployment.yaml
index eb20190..dee6e15 100644
--- a/xos-services/volt/templates/deployment.yaml
+++ b/xos-services/volt/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.volt_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/volt/values.yaml b/xos-services/volt/values.yaml
index 52cd1df..b5023e1 100644
--- a/xos-services/volt/values.yaml
+++ b/xos-services/volt/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/volt-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-volt_synchronizerImage: "xosproject/volt-synchronizer:master"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/vrouter/Chart.yaml b/xos-services/vrouter/Chart.yaml
index 195b125..582aa63 100644
--- a/xos-services/vrouter/Chart.yaml
+++ b/xos-services/vrouter/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: vrouter
 description: A Helm chart for XOS's "vRouter" service
-version: 2.0.1-dev
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.0.1
+appVersion: 2.0.1
diff --git a/xos-services/vrouter/templates/deployment.yaml b/xos-services/vrouter/templates/deployment.yaml
index f04837e..9cfcc8d 100644
--- a/xos-services/vrouter/templates/deployment.yaml
+++ b/xos-services/vrouter/templates/deployment.yaml
@@ -39,8 +39,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.vrouter_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vrouter/values.yaml b/xos-services/vrouter/values.yaml
index 5264a2c..0bfd1cf 100644
--- a/xos-services/vrouter/values.yaml
+++ b/xos-services/vrouter/values.yaml
@@ -22,9 +22,14 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
 
-vrouter_synchronizerImage: "xosproject/vrouter-synchronizer:master"
+image:
+  repository: 'xosproject/vrouter-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
+
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/vsg-hw/Chart.yaml b/xos-services/vsg-hw/Chart.yaml
index d7346b7..40bf934 100644
--- a/xos-services/vsg-hw/Chart.yaml
+++ b/xos-services/vsg-hw/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: vsg-hw
 description: A Helm chart for XOS's "vsg-hw" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
diff --git a/xos-services/vsg-hw/templates/_helpers.tpl b/xos-services/vsg-hw/templates/_helpers.tpl
index 39e80cb..facf592 100644
--- a/xos-services/vsg-hw/templates/_helpers.tpl
+++ b/xos-services/vsg-hw/templates/_helpers.tpl
@@ -62,10 +62,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.vsg-hw
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/vsg-hw/templates/deployment.yaml b/xos-services/vsg-hw/templates/deployment.yaml
index ba7fe62..696ba93 100644
--- a/xos-services/vsg-hw/templates/deployment.yaml
+++ b/xos-services/vsg-hw/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.vsg_hw_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vsg-hw/values.yaml b/xos-services/vsg-hw/values.yaml
index 43b15fa..5fe50a1 100644
--- a/xos-services/vsg-hw/values.yaml
+++ b/xos-services/vsg-hw/values.yaml
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/vsg-hw-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-vsg_hw_synchronizerImage: "xosproject/vsg-hw-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
diff --git a/xos-services/vspgwc/Chart.yaml b/xos-services/vspgwc/Chart.yaml
index 5314b07..251ea2a 100644
--- a/xos-services/vspgwc/Chart.yaml
+++ b/xos-services/vspgwc/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: vspgwc
 description: A Helm chart for XOS's "vspgwc" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
diff --git a/xos-services/vspgwc/templates/_helpers.tpl b/xos-services/vspgwc/templates/_helpers.tpl
index 340742b..8cc7bd0 100644
--- a/xos-services/vspgwc/templates/_helpers.tpl
+++ b/xos-services/vspgwc/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.vspgwc
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 proxy_ssh:
   enabled: {{ .Values.global.proxySshEnabled }}
diff --git a/xos-services/vspgwc/templates/deployment.yaml b/xos-services/vspgwc/templates/deployment.yaml
index 061191a..76a517d 100644
--- a/xos-services/vspgwc/templates/deployment.yaml
+++ b/xos-services/vspgwc/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vspgwc/values.yaml b/xos-services/vspgwc/values.yaml
index e4f627d..8fca902 100644
--- a/xos-services/vspgwc/values.yaml
+++ b/xos-services/vspgwc/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/vspgwc-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/vspgwc-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -40,6 +41,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/vspgwu/Chart.yaml b/xos-services/vspgwu/Chart.yaml
index 40f5bb8..9cee6e7 100644
--- a/xos-services/vspgwu/Chart.yaml
+++ b/xos-services/vspgwu/Chart.yaml
@@ -15,4 +15,7 @@
 
 name: vspgwu
 description: A Helm chart for XOS's "vspgwu" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
diff --git a/xos-services/vspgwu/templates/_helpers.tpl b/xos-services/vspgwu/templates/_helpers.tpl
index b017551..242c329 100644
--- a/xos-services/vspgwu/templates/_helpers.tpl
+++ b/xos-services/vspgwu/templates/_helpers.tpl
@@ -62,11 +62,17 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.vspgwu
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 blueprints:
   - name: cord_5_0_blueprint
diff --git a/xos-services/vspgwu/templates/deployment.yaml b/xos-services/vspgwu/templates/deployment.yaml
index 3f1d49f..a6d3bdc 100644
--- a/xos-services/vspgwu/templates/deployment.yaml
+++ b/xos-services/vspgwu/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vspgwu/values.yaml b/xos-services/vspgwu/values.yaml
index 3afd361..9a41837 100644
--- a/xos-services/vspgwu/values.yaml
+++ b/xos-services/vspgwu/values.yaml
@@ -22,9 +22,10 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
-
-synchronizerImage: "xosproject/vspgwu-synchronizer:{{ .Chart.Version }}"
+image:
+  repository: 'xosproject/vspgwu-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"
@@ -40,6 +41,7 @@
 global:
   proxySshEnabled: true
   proxySshUser: "root"
+  registry: ''
 
 resources: {}
 
diff --git a/xos-services/vtn-service/Chart.yaml b/xos-services/vtn-service/Chart.yaml
index aa8b039..d6097fd 100644
--- a/xos-services/vtn-service/Chart.yaml
+++ b/xos-services/vtn-service/Chart.yaml
@@ -15,4 +15,8 @@
 
 name: vtn-service
 description: A Helm chart for XOS's "vtn-service" service
-version: 1.0.0
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 1.0.1
+appVersion: 1.0.1
+
diff --git a/xos-services/vtn-service/templates/_helpers.tpl b/xos-services/vtn-service/templates/_helpers.tpl
index ee8abf6..22e1457 100644
--- a/xos-services/vtn-service/templates/_helpers.tpl
+++ b/xos-services/vtn-service/templates/_helpers.tpl
@@ -62,10 +62,16 @@
       filename: /var/log/xos.log
       maxBytes: 10485760
       backupCount: 5
+    kafka:
+      class: kafkaloghandler.kafkaloghandler.KafkaLogHandler
+      bootstrap_servers:
+        - "cord-kafka:9092"
+      topic: xos.log.vtn-service
   loggers:
     'multistructlog':
       handlers:
         - console
         - file
+        - kafka
       level: DEBUG
 {{- end -}}
diff --git a/xos-services/vtn-service/templates/deployment.yaml b/xos-services/vtn-service/templates/deployment.yaml
index d18dcc4..ccecd3a 100644
--- a/xos-services/vtn-service/templates/deployment.yaml
+++ b/xos-services/vtn-service/templates/deployment.yaml
@@ -38,8 +38,8 @@
     spec:
       containers:
         - name: {{ .Chart.Name }}
-          image: {{ tpl .Values.vtn_synchronizerImage . | quote }}
-          imagePullPolicy: {{ .Values.imagePullPolicy }}
+          image: {{ .Values.global.registry }}{{ .Values.image.repository }}:{{ tpl .Values.image.tag . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
           resources:
 {{ toYaml .Values.resources | indent 12 }}
           volumeMounts:
diff --git a/xos-services/vtn-service/values.yaml b/xos-services/vtn-service/values.yaml
index 6c25d21..f15fd29 100644
--- a/xos-services/vtn-service/values.yaml
+++ b/xos-services/vtn-service/values.yaml
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-# Default values for TTN
+# Default values for VTN
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
 
@@ -22,9 +22,13 @@
 nameOverride: ""
 fullnameOverride: ""
 
-imagePullPolicy: 'Always'
+image:
+  repository: 'xosproject/vtn-synchronizer'
+  tag: '{{ .Chart.AppVersion }}'
+  pullPolicy: 'Always'
 
-vtn_synchronizerImage: "xosproject/vtn-synchronizer:{{ .Chart.Version }}"
+global:
+  registry: ''
 
 xosAdminUser: "admin@opencord.org"
 xosAdminPassword: "letmein"