[VOL-1615] Create VOLTHA 2.0 Helm Charts

Squashed version of David Bainbridge's patches at commit:

 https://github.com/ciena/voltha-helm-charts/commit/120fb4b719e0492e6a0a24cc78d08b806e3698fa

Linted the README, fixed whitespace and incubator repo address

Change-Id: I7c5b1c3478450bbefbed09a75e9029e6371cae3a
diff --git a/voltha-adapter-simulated/.helmignore b/voltha-adapter-simulated/.helmignore
new file mode 100644
index 0000000..f0c1319
--- /dev/null
+++ b/voltha-adapter-simulated/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/voltha-adapter-simulated/Chart.yaml b/voltha-adapter-simulated/Chart.yaml
new file mode 100644
index 0000000..06213b7
--- /dev/null
+++ b/voltha-adapter-simulated/Chart.yaml
@@ -0,0 +1,21 @@
+# Copyright 2019-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+name: voltha-adapter-simulated
+description: A Helm chart for Voltha Simulated Adaptyer based on K8S resources in Voltha project
+icon: https://guide.opencord.org/logos/cord.svg
+
+version: 2.0.0
+appVersion: 2.0.0
diff --git a/voltha-adapter-simulated/templates/adapters-simulated.yaml b/voltha-adapter-simulated/templates/adapters-simulated.yaml
new file mode 100644
index 0000000..0721b88
--- /dev/null
+++ b/voltha-adapter-simulated/templates/adapters-simulated.yaml
@@ -0,0 +1,131 @@
+# Copyright 2019-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: adapter-simulated-olt
+  namespace: {{ .Release.Namespace }}
+spec:
+  clusterIP: None
+  selector:
+    app: adapter-simulated-olt
+
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: adapter-simulated-olt
+  namespace: {{ .Release.Namespace }}
+spec:
+  replicas: {{ .Values.replicas.adapter_simulated_olt }}
+  selector:
+    matchLabels:
+      app: adapter-simulated-olt
+  template:
+    metadata:
+      labels:
+        app: adapter-simulated-olt
+      annotations:
+        cni: "calico"
+    spec:
+      containers:
+        - name: adapter-simulated-olt
+          image: {{ .Values.registry }}{{ .Values.images.adapter_simulated_olt.repository }}:{{ tpl .Values.images.adapter_simulated_olt.tag . }}
+          imagePullPolicy: {{ .Values.images.adapter_simulated_olt.pullPolicy }}
+          env:
+            - name: NAMESPACE
+              value: {{ quote .Release.Namespace }}
+            - name: ETCD_SERVICE
+              value: "{{ .Values.services.etcd.service }}"
+            - name: ETCD_SERVICE_PORT
+              value: "{{ .Values.services.etcd.port }}"
+            - name: ADAPTER_KAFKA_SERVICE
+              value: "{{ .Values.services.kafka.adapter.service }}"
+            - name: ADAPTER_KAFKA_SERVICE_PORT
+              value: "{{ .Values.services.kafka.adapter.port }}"
+            - name: CLUSTER_KAFKA_SERVICE
+              value: "{{ .Values.services.kafka.cluster.service }}"
+            - name: CLUSTER_KAFKA_SERVICE_PORT
+              value: "{{ .Values.services.kafka.cluster.port }}"
+          args:
+            - "/app/simulated_olt"
+            - "-kafka_adapter_host=$(ADAPTER_KAFKA_SERVICE)"
+            - "-kafka_adapter_port=$(ADAPTER_KAFKA_SERVICE_PORT)"
+            - "-kafka_cluster_host=$(CLUSTER_KAFKA_SERVICE)"
+            - "-kafka_cluster_port=$(CLUSTER_KAFKA_SERVICE_PORT)"
+            - "-core_topic=rwcore"
+            - "-simulator_topic=simulated_olt"
+            - "-kv_store_host=$(ETCD_SERVICE)"
+            - "-kv_store_port=$(ETCD_SERVICE_PORT)"
+            - "-onu_number=100"
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: adapter-simulated-onu
+  namespace: {{ .Release.Namespace }}
+spec:
+  clusterIP: None
+  selector:
+    app: adapter-simulated-onu
+
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: adapter-simulated-onu
+  namespace: {{ .Release.Namespace }}
+spec:
+  replicas: {{ .Values.replicas.adapter_simulated_onu }}
+  selector:
+    matchLabels:
+      app: adapter-simulated-onu
+  template:
+    metadata:
+      labels:
+        app: adapter-simulated-onu
+      annotations:
+        cni: "calico"
+    spec:
+      containers:
+        - name: adapter-simulated-onu
+          image: {{ .Values.registry }}{{ .Values.images.adapter_simulated_onu.repository }}:{{ tpl .Values.images.adapter_simulated_onu.tag . }}
+          imagePullPolicy: {{ .Values.images.adapter_simulated_onu.pullPolicy }}
+          env:
+            - name: NAMESPACE
+              value: {{ quote .Release.Namespace }}
+            - name: ETCD_SERVICE
+              value: "{{ .Values.services.etcd.service }}"
+            - name: ETCD_SERVICE_PORT
+              value: "{{ .Values.services.etcd.port }}"
+            - name: ADAPTER_KAFKA_SERVICE
+              value: "{{ .Values.services.kafka.adapter.service }}"
+            - name: ADAPTER_KAFKA_SERVICE_PORT
+              value: "{{ .Values.services.kafka.adapter.port }}"
+            - name: CLUSTER_KAFKA_SERVICE
+              value: "{{ .Values.services.kafka.cluster.service }}"
+            - name: CLUSTER_KAFKA_SERVICE_PORT
+              value: "{{ .Values.services.kafka.cluster.port }}"
+          args:
+            - "/app/simulated_onu"
+            - "-kafka_adapter_host=$(ADAPTER_KAFKA_SERVICE)"
+            - "-kafka_adapter_port=$(ADAPTER_KAFKA_SERVICE_PORT)"
+            - "-kafka_cluster_host=$(CLUSTER_KAFKA_SERVICE)"
+            - "-kafka_cluster_port=$(CLUSTER_KAFKA_SERVICE_PORT)"
+            - "-core_topic=rwcore"
+            - "-kv_store_host=$(ETCD_SERVICE)"
+            - "-kv_store_port=$(ETCD_SERVICE_PORT)"
+            - "-simulator_topic=simulated_onu"
diff --git a/voltha-adapter-simulated/templates/onu.yaml b/voltha-adapter-simulated/templates/onu.yaml
new file mode 100644
index 0000000..e44466b
--- /dev/null
+++ b/voltha-adapter-simulated/templates/onu.yaml
@@ -0,0 +1,72 @@
+# Copyright 2019-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: onu
+  labels:
+    name: onu
+spec:
+  ports:
+    - name: grpc
+      port: 50061
+      targetPort: 50061
+  selector:
+    app: onu
+
+---
+apiVersion: apps/v1beta1
+kind: Deployment
+metadata:
+  name: onu
+spec:
+   replicas: {{ .Values.replicas.onu }}
+   template:
+     metadata:
+       labels:
+         app: onu
+       annotations:
+         cni: "calico,pon0"
+     spec:
+       containers:
+         - name: onu
+           image: {{ .Values.registry }}{{ .Values.images.ponsim.repository }}:{{ tpl .Values.images.ponsim.tag . }}
+           imagePullPolicy: {{ .Values.images.ponsim.pullPolicy }}
+           env:
+             - name: POD_IP
+               valueFrom:
+                 fieldRef:
+                   fieldPath: status.podIP
+             - name: NAMESPACE
+               value: {{ quote .Release.Namespace }}
+
+           args:
+             - "/app/ponsim"
+             - "-device_type"
+             - "ONU"
+             - "-parent_addr"
+             - "olt"
+             - "-grpc_port"
+             - "50061"
+             - "-internal_if"
+             - "eth0"
+             - "-external_if"
+             - "eth1"
+             - "-promiscuous"
+
+           ports:
+            - containerPort: 50061
+              name: grpc-port
diff --git a/voltha-adapter-simulated/values.yaml b/voltha-adapter-simulated/values.yaml
new file mode 100644
index 0000000..2dd877f
--- /dev/null
+++ b/voltha-adapter-simulated/values.yaml
@@ -0,0 +1,54 @@
+# Copyright 2019-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+# Globally define a registry
+registry: ''
+
+# Define connectivity to required services
+services:
+  kafka:
+    adapter:
+      service: voltha-kafka.voltha.svc.cluster.local
+      port: 9092
+    cluster:
+      service: voltha-kafka.voltha.svc.cluster.local
+      port: 9092
+  
+  # Define connectivity to etcd
+  etcd:
+    service: voltha-etcd-cluster-client.voltha.svc.cluster.local
+    port: 2379
+
+# Define the recplica count for everything
+replicas:
+  adapter_simulated_olt: 1
+  adapter_simulated_onu: 1
+  onu: 1
+
+images:
+  adapter_simulated_olt:
+    repository: 'volthacore/voltha-adapter-simulated-olt'
+    tag: '{{ .Chart.AppVersion }}'
+    pullPolicy: 'Always'
+
+  adapter_simulated_onu:
+    repository: 'volthacore/voltha-adapter-simulated-onu'
+    tag: '{{ .Chart.AppVersion }}'
+    pullPolicy: 'Always'
+
+  ponsim:
+    repository: 'volthacore/voltha-ponsim'
+    tag: '{{ .Chart.AppVersion }}'
+    pullPolicy: 'Always'