Merge "Add container type to host configurations"
diff --git a/kubernetes-configs/onlab-pod1.yml b/kubernetes-configs/onlab-pod1.yml
index ec87d7e..4d55003 100644
--- a/kubernetes-configs/onlab-pod1.yml
+++ b/kubernetes-configs/onlab-pod1.yml
@@ -1,14 +1,12 @@
 # SEBA Values
 
-envoyForEtcdImage: '10.90.0.101:30500/voltha/voltha-envoy:cig'
-#freeradiusImage: '10.90.0.101:30500/freeradius:tls'
-# freeradiusImage: 'tpdock/freeradius:latest'
-netconfImage: '10.90.0.101:30500/voltha/voltha-netconf:cig'
-ofagentImage: '10.90.0.101:30500/voltha/voltha-ofagent:cig'
-vcliImage: '10.90.0.101:30500/voltha/voltha-cli:cig'
-vcoreImage: '10.90.0.101:30500/voltha/voltha-voltha:cig'
+# envoyForEtcdImage: '10.90.0.101:30500/voltha/voltha-envoy:cig'
+# netconfImage: '10.90.0.101:30500/voltha/voltha-netconf:cig'
+# ofagentImage: '10.90.0.101:30500/voltha/voltha-ofagent:cig'
+# vcliImage: '10.90.0.101:30500/voltha/voltha-cli:cig'
+# vcoreImage: '10.90.0.101:30500/voltha/voltha-voltha:cig'
 
-# onosImage: '10.90.0.101:30500/onosproject/onos:candidate'
+onosImage: '10.90.0.101:30500/onosproject/onos:latest'
 
 application_logs: |
    log4j.logger.org.opencord.olt = TRACE
@@ -17,4 +15,3 @@
    log4j.logger.org.opencord.aaa = TRACE
    log4j.logger.org.opencord.dhcpl2relay = TRACE
    log4j.logger.org.onosproject.drivers = DEBUG
-   log4j.logger.org.onosproject.segmentrouting = TRACE
diff --git a/tosca-configs/att-workflow/bbwf-fabric.yaml b/tosca-configs/att-workflow/bbwf-fabric.yaml
index 45fe310..fa61437 100755
--- a/tosca-configs/att-workflow/bbwf-fabric.yaml
+++ b/tosca-configs/att-workflow/bbwf-fabric.yaml
@@ -23,11 +23,10 @@
   - custom_types/attworkflowdriverwhitelistentry.yaml
   - custom_types/attworkflowdriverservice.yaml
 
-description: Configures the ONF SEBA POD with AT&T workflow
+description: Configures the fabric and the whitelist
 
 topology_template:
   node_templates:
-    # Fabric configuration
     switch#leaf_1:
       type: tosca.nodes.Switch
       properties:
@@ -120,57 +119,117 @@
         name: att-workflow-driver
         must-exist: true
 
-    ALPHA:
+    # ONUs connected to EdgeCore OLT
+    ALPHE3D1CEE9:
       type: tosca.nodes.AttWorkflowDriverWhiteListEntry
       properties:
-        serial_number: ALPHA
-        pon_port_id: 12345678
-        device_id: of:000000000a5a0072
-      requirements:
-        - owner:
-            node: service#att
-            relationship: tosca.relationships.BelongsToOne
-
-    ADTRAN:
-      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
-      properties:
-        serial_number: ADTRAN
+        serial_number: ALPHE3D1CEE9
         pon_port_id: 536870912
-        device_id: of:000000000a5a0072
+        device_id: of:00000000C0A8646F
       requirements:
         - owner:
             node: service#att
             relationship: tosca.relationships.BelongsToOne
 
+    ISKT71E81130:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: ISKT71E81130
+        pon_port_id: 536870912
+        device_id: of:00000000C0A8646F
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
+
+    # ONUs connected to Adtran OLT
+    ADTN17510028:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: ADTN17510028
+        pon_port_id: 5
+        device_id: of:00000000C0A86470
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
+
+    ADTN16180345:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: ADTN16180345
+        pon_port_id: 6
+        device_id: of:00000000C0A86470
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
+
+    # ONUs connected to CIG OLT
     CIG:
       type: tosca.nodes.AttWorkflowDriverWhiteListEntry
       properties:
         serial_number: CIG
         pon_port_id: 536870912
-        device_id: of:000000000a5a0072
+        device_id: of:00000000C0A86471
       requirements:
         - owner:
             node: service#att
             relationship: tosca.relationships.BelongsToOne
 
-    ISKRATELK:
+    # ONUs connected to Iskratel XGS-PON OLT
+    ISKT71E81070:
       type: tosca.nodes.AttWorkflowDriverWhiteListEntry
       properties:
-        serial_number: ISKRATELK
+        serial_number: ISKT71E81070
         pon_port_id: 536870912
-        device_id: of:000000000a5a0072
+        device_id: of:00000000C0A86472
       requirements:
         - owner:
             node: service#att
             relationship: tosca.relationships.BelongsToOne
 
-    ISKRATELG:
+    ISKT71E81071:
       type: tosca.nodes.AttWorkflowDriverWhiteListEntry
       properties:
-        serial_number: ISKRATELG
+        serial_number: ISKT71E81071
         pon_port_id: 536870912
-        device_id: of:000000000a5a0072
+        device_id: of:00000000C0A86472
       requirements:
         - owner:
             node: service#att
-            relationship: tosca.relationships.BelongsToOne
\ No newline at end of file
+            relationship: tosca.relationships.BelongsToOne
+
+    # ONUs connected to Iskratel GPON OLT
+    ISKT45F2C688:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: ISKT45F2C688
+        pon_port_id: 536870912
+        device_id: of:00000000C0A86473
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
+
+    ISKT45F2BD61:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: ISKT45F2BD61
+        pon_port_id: 536870912
+        device_id: of:00000000C0A86473
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
+
+    ISKT45F2C1E4:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: ISKT45F2C1E4
+        pon_port_id: 536870912
+        device_id: of:00000000C0A86473
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
diff --git a/tosca-configs/att-workflow/bbwf-olt.yaml b/tosca-configs/att-workflow/bbwf-olt.yaml
index 7a8fd24..1fd6316 100755
--- a/tosca-configs/att-workflow/bbwf-olt.yaml
+++ b/tosca-configs/att-workflow/bbwf-olt.yaml
@@ -19,7 +19,7 @@
   - custom_types/oltdevice.yaml
   - custom_types/onudevice.yaml
   - custom_types/voltservice.yaml
-description: Create a simulated OLT Device in VOLTHA
+description: Creates OLT devices
 topology_template:
   node_templates:
 
@@ -50,13 +50,13 @@
       type: tosca.nodes.OLTDevice
       properties:
         name: Adtran OLT
-        device_type: openolt
+        device_type: adtran
         host: 192.168.100.112
-        port: 9191
+        port: 830
         switch_datapath_id: of:0000000000000001
         switch_port: "50"
         outer_tpid: "0x8100"
-        uplink: "65536"
+        uplink: "1"
         nas_id: "NAS_ID"
       requirements:
         - volt_service:
@@ -80,7 +80,7 @@
             node: service#volt
             relationship: tosca.relationships.BelongsToOne
 
-      olt_device:
+    olt_device:
       type: tosca.nodes.OLTDevice
       properties:
         name: Iskratel XGS-PON OLT
@@ -97,7 +97,7 @@
             node: service#volt
             relationship: tosca.relationships.BelongsToOne
 
-      olt_device:
+    olt_device:
       type: tosca.nodes.OLTDevice
       properties:
         name: Iskratel GPON OLT
@@ -112,4 +112,4 @@
       requirements:
         - volt_service:
             node: service#volt
-            relationship: tosca.relationships.BelongsToOne
\ No newline at end of file
+            relationship: tosca.relationships.BelongsToOne
diff --git a/tosca-configs/att-workflow/bbwf-subscriber.yaml b/tosca-configs/att-workflow/bbwf-subscriber.yaml
index 5ee3c0c..fa32b21 100755
--- a/tosca-configs/att-workflow/bbwf-subscriber.yaml
+++ b/tosca-configs/att-workflow/bbwf-subscriber.yaml
@@ -18,44 +18,132 @@
 imports:
   - custom_types/rcordsubscriber.yaml
 
-description: Pre-provsion a subscriber
+description: Pre-provsion subscribers
 
 topology_template:
   node_templates:
 
-    # Pre-provision the subscriber the subscriber
-    onf_subscriber_1:
+    # EdgeCore OLT subscribers
+    edgecore_alpha_subscriber:
       type: tosca.nodes.RCORDSubscriber
       properties:
-        name: Sub_BRCM22222222
+        name: Sub_ALPHE3D1CEE9
         status: pre-provisioned
-        c_tag: 111
+        c_tag: 11
         s_tag: 111
-        onu_device: BRCM22222222
+        onu_device: ALPHE3D1CEE9
         nas_port_id : "PON 1/1/03/1:1.1.1"
-        circuit_id: foo1
-        remote_id: bar1
+        circuit_id: edgecore_alpha_circuit
+        remote_id: edgecore_alpha_remote
 
-    onf_subscriber_2:
+    edgecore_iskratel_subscriber:
       type: tosca.nodes.RCORDSubscriber
       properties:
-        name: Sub_ALPHe3d1cfde
+        name: Sub_ISKT71E81130
         status: pre-provisioned
-        c_tag: 112
+        c_tag: 22
         s_tag: 111
-        onu_device: ALPHe3d1cfde
+        onu_device: ISKT71E81130
         nas_port_id : "PON 1/1/04/1:1.1.1"
-        circuit_id: foo2
-        remote_id: bar2
+        circuit_id: edgecore_iskratel_circuit
+        remote_id: edgecore_iskratel_remote
 
-    onf_subscriber_3:
+    # Adtran OLT subscribers
+    adtran_subscriber_1:
       type: tosca.nodes.RCORDSubscriber
       properties:
-        name: Sub_ISKT71e801a0
+        name: Sub_ADTN17510028
         status: pre-provisioned
-        c_tag: 113
-        s_tag: 111
-        onu_device: ISKT71e801a0
+        c_tag: 11
+        s_tag: 222
+        onu_device: ADTN17510028
         nas_port_id : "PON 1/1/05/1:1.1.1"
-        circuit_id: foo3
-        remote_id: bar3
+        circuit_id: adtran_sub1_circuit
+        remote_id: adtran_sub1_remote
+
+    adtran_subscriber_2:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_ADTN16180345
+        status: pre-provisioned
+        c_tag: 22
+        s_tag: 222
+        onu_device: ADTN16180345
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: adtran_sub2_circuit
+        remote_id: adtran_sub2_remote
+
+    # CIG OLT subscribers
+    cig_subscriber_1:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_CIG
+        status: pre-provisioned
+        c_tag: 11
+        s_tag: 333
+        onu_device: CIG
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: cig_sub1_circuit
+        remote_id: cig_sub1_remote
+
+    # Iskratel XGS-PON OLT subscribers
+    iskratelx_subscriber_1:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_ISKT71E81070
+        status: pre-provisioned
+        c_tag: 11
+        s_tag: 444
+        onu_device: ISKT71E81070
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: iskx_sub1_circuit
+        remote_id: iskx_sub1_remote
+
+    iskratelx_subscriber_2:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_ISKT71E81071
+        status: pre-provisioned
+        c_tag: 22
+        s_tag: 444
+        onu_device: ISKT71E81071
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: iskx_sub2_circuit
+        remote_id: iskx_sub2_remote
+
+    # Iskratel GPON OLT subscribers
+    iskratelg_subscriber_1:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_ISKT45F2C688
+        status: pre-provisioned
+        c_tag: 11
+        s_tag: 555
+        onu_device: ISKT45F2C688
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: iskg_sub1_circuit
+        remote_id: iskg_sub1_remote
+
+    iskratelg_subscriber_2:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_ISKT45F2BD61
+        status: pre-provisioned
+        c_tag: 22
+        s_tag: 555
+        onu_device: ISKT45F2BD61
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: iskg_sub2_circuit
+        remote_id: iskg_sub2_remote
+
+    iskratelg_subscriber_3:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_ISKT45F2C1E4
+        status: pre-provisioned
+        c_tag: 33
+        s_tag: 555
+        onu_device: ISKT45F2C1E4
+        nas_port_id : "PON 1/1/05/1:1.1.1"
+        circuit_id: iskg_sub3_circuit
+        remote_id: iskg_sub3_remote
diff --git a/tosca-configs/att-workflow/onlab-pod1-bbsim.yaml b/tosca-configs/att-workflow/onlab-pod1-bbsim.yaml
new file mode 100755
index 0000000..5a28461
--- /dev/null
+++ b/tosca-configs/att-workflow/onlab-pod1-bbsim.yaml
@@ -0,0 +1,83 @@
+# Copyright 2017-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.
+
+# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @onlab-pod1-bbsim.yaml http://10.90.0.101:30007/run
+
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+  - custom_types/oltdevice.yaml
+  - custom_types/onudevice.yaml
+  - custom_types/voltservice.yaml
+  - custom_types/attworkflowdriverwhitelistentry.yaml
+  - custom_types/attworkflowdriverservice.yaml
+  - custom_types/rcordsubscriber.yaml
+description: Create a simulated OLT Device in VOLTHA
+topology_template:
+  node_templates:
+
+    service#volt:
+      type: tosca.nodes.VOLTService
+      properties:
+        name: volt
+        must-exist: true
+
+    olt_device:
+      type: tosca.nodes.OLTDevice
+      properties:
+        name: BBSIM_OLT
+        device_type: bbsim
+        host: bbsim.voltha.svc
+        # host: 10.233.33.1
+        port: 50060
+        switch_datapath_id: of:0000000000000001
+        switch_port: "3"
+        outer_tpid: "0x8100"
+        uplink: "65536"
+        nas_id: "NAS_ID"
+      requirements:
+        - volt_service:
+            node: service#volt
+            relationship: tosca.relationships.BelongsToOne
+
+    # Whitelist
+    service#att:
+      type: tosca.nodes.AttWorkflowDriverService
+      properties:
+        name: att-workflow-driver
+        must-exist: true
+
+    NONE31323030:
+      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
+      properties:
+        serial_number: NONE30313030
+        pon_port_id: 536870912
+        # device_id: of:000000000ae9327a
+        device_id: of:0000aabbccddee12
+      requirements:
+        - owner:
+            node: service#att
+            relationship: tosca.relationships.BelongsToOne
+
+    # Pre-provision the subscriber
+    bbsim_subscriber_1:
+      type: tosca.nodes.RCORDSubscriber
+      properties:
+        name: Sub_NONE30313030
+        status: pre-provisioned
+        c_tag: 123
+        s_tag: 456
+        onu_device: NONE30313030
+        nas_port_id : "PON 1/1/03/1:1.1.1"
+        circuit_id: foo1
+        remote_id: bar1
\ No newline at end of file
diff --git a/tosca-configs/att-workflow/onlab-pod1-cig.yaml b/tosca-configs/att-workflow/onlab-pod1-cig.yaml
index 89f9497..1e47e3d 100755
--- a/tosca-configs/att-workflow/onlab-pod1-cig.yaml
+++ b/tosca-configs/att-workflow/onlab-pod1-cig.yaml
@@ -22,6 +22,8 @@
   - custom_types/attworkflowdriverwhitelistentry.yaml
   - custom_types/attworkflowdriverservice.yaml
   - custom_types/rcordsubscriber.yaml
+  - custom_types/switch.yaml
+  - custom_types/switchport.yaml
 description: Create a simulated OLT Device in VOLTHA
 topology_template:
   node_templates:
@@ -79,4 +81,20 @@
         onu_device: CIGG70606829
         nas_port_id : "PON 1/1/03/1:1.1.1"
         circuit_id: foo1
-        remote_id: bar1
\ No newline at end of file
+        remote_id: bar1
+
+    switch#leaf_1:
+      type: tosca.nodes.Switch
+      properties:
+        name: AGG_SWITCH
+        must-exist: true
+
+    port#cig_olt_port:
+      type: tosca.nodes.SwitchPort
+      properties:
+        portId: 4
+        host_learning: false
+      requirements:
+        - switch:
+            node: switch#leaf_1
+            relationship: tosca.relationships.BelongsToOne
\ No newline at end of file
diff --git a/tosca-configs/att-workflow/onlab-pod1-fabric.yaml b/tosca-configs/att-workflow/onlab-pod1-fabric.yaml
index a00df87..77cae6b 100755
--- a/tosca-configs/att-workflow/onlab-pod1-fabric.yaml
+++ b/tosca-configs/att-workflow/onlab-pod1-fabric.yaml
@@ -22,6 +22,7 @@
   - custom_types/bngportmapping.yaml
   - custom_types/attworkflowdriverwhitelistentry.yaml
   - custom_types/attworkflowdriverservice.yaml
+  - custom_types/serviceinstanceattribute.yaml
 
 description: Configures the ONF SEBA POD with AT&T workflow
 
@@ -35,7 +36,7 @@
         ipv4Loopback: 192.168.0.201
         ipv4NodeSid: 17
         isEdgeRouter: True
-        name: leaf_1
+        name: AGG_SWITCH
         ofId: of:0000000000000001
         routerMac: 00:00:02:01:06:01
 
@@ -55,7 +56,6 @@
       type: tosca.nodes.SwitchPort
       properties:
         portId: 31
-        host_learning: false
       requirements:
         - switch:
             node: switch#leaf_1
@@ -69,6 +69,23 @@
         s_tag: any
         switch_port: 31
 
+    # DHCP L2 Relay config
+    dhcpl2relay-config-attr:
+      type: tosca.nodes.ServiceInstanceAttribute
+      properties:
+        name: /onos/v1/network/configuration/apps/org.opencord.dhcpl2relay
+        value: >
+          {
+            "dhcpl2relay" : {
+              "useOltUplinkForServerPktInOut" : false,
+              "dhcpServerConnectPoints" : [ "of:0000000000000001/31" ]
+            }
+          }
+      requirements:
+        - service_instance:
+            node: onos_app#dhcpl2relay
+            relationship: tosca.relationships.BelongsToOne
+
     # ONU Whitelist
     service#att:
       type: tosca.nodes.AttWorkflowDriverService
diff --git a/tosca-configs/att-workflow/onlab-pod2-fabric.yaml b/tosca-configs/att-workflow/onlab-pod2-fabric.yaml
index 5a51c20..76f16a9 100755
--- a/tosca-configs/att-workflow/onlab-pod2-fabric.yaml
+++ b/tosca-configs/att-workflow/onlab-pod2-fabric.yaml
@@ -22,6 +22,7 @@
   - custom_types/bngportmapping.yaml
   - custom_types/attworkflowdriverwhitelistentry.yaml
   - custom_types/attworkflowdriverservice.yaml
+  - custom_types/serviceinstanceattribute.yaml
 
 description: Configures the ONF SEBA POD2 with AT&T workflow
 
@@ -35,7 +36,7 @@
         ipv4Loopback: 192.168.0.201
         ipv4NodeSid: 17
         isEdgeRouter: True
-        name: leaf_1
+        name: AGG_SWITCH
         ofId: of:0000000000000002
         routerMac: 00:00:02:01:06:01
 
@@ -55,7 +56,6 @@
       type: tosca.nodes.SwitchPort
       properties:
         portId: 32
-        host_learning: false
       requirements:
         - switch:
             node: switch#leaf_1
@@ -69,6 +69,23 @@
         s_tag: any
         switch_port: 32
 
+    # DHCP L2 Relay config
+    dhcpl2relay-config-attr:
+      type: tosca.nodes.ServiceInstanceAttribute
+      properties:
+        name: /onos/v1/network/configuration/apps/org.opencord.dhcpl2relay
+        value: >
+          {
+            "dhcpl2relay" : {
+              "useOltUplinkForServerPktInOut" : false,
+              "dhcpServerConnectPoints" : [ "of:0000000000000002/32" ]
+            }
+          }
+      requirements:
+        - service_instance:
+            node: onos_app#dhcpl2relay
+            relationship: tosca.relationships.BelongsToOne
+
     # ONU Whitelist
     service#att:
       type: tosca.nodes.AttWorkflowDriverService