diff --git a/deployment-configs/flex-pod1-olt-1.0.yaml b/deployment-configs/flex-pod1-olt-1.0.yaml
deleted file mode 100644
index f8d0d23..0000000
--- a/deployment-configs/flex-pod1-olt-1.0.yaml
+++ /dev/null
@@ -1,68 +0,0 @@
-# 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.
-
-# Automated deployment configuration for Flex POD 1 , olt/onu are connected to this
-
----
-
-kube_config: 'flex-pod1-olt-voltha16.conf'
-
-nodes:
-  -
-    ip: '10.192.4.241'
-    user: 'cord'
-    pass: 'cord'
-  -
-    ip: '10.192.4.242'
-    user: 'cord'
-    pass: 'cord'
-  -
-    ip: '10.192.4.243'
-    user: 'cord'
-    pass: 'cord'
-  -
-    ip: '10.192.4.244'
-    user: 'cord'
-    pass: 'cord'
-
-fabric_switches:
-  -
-    mac: 'cc:37:ab:5b:6d:a8'
-    ip: '10.192.4.217'
-    user: 'root'
-    pass: 'onl'
-
-olts:
-  -
-    ip: '10.192.4.206'
-    user: 'root'
-    pass: 'onl'
-    fortygig: 'true'
-
-hosts:
-  src:
-    ip: '10.192.4.61'
-    user: 'cluser'
-    pass: 'cloudlabs'
-    dp_iface_name: 'enp4s0f1'
-    dp_iface_ip: '10.8.2.1'
-    dp_iface_gateway: '10.8.2.254'
-  dst:
-    ip: '10.192.4.62'
-    user: 'cord'
-    pass: 'cord'
-    dp_iface_name: 'ens3'
-    dp_iface_ip_qinq: '10.8.2.100'
-    dp_iface_ip: '10.8.3.1'
-    dp_iface_gateway: '10.8.3.254'
diff --git a/deployment-configs/onlab-pod1-1.0.yaml b/deployment-configs/onlab-pod1-1.0.yaml
deleted file mode 100644
index 4eece97..0000000
--- a/deployment-configs/onlab-pod1-1.0.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-# 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.
-
-# Automated deployment configuration for ONF/ON.Lab physical POD 1
-
----
-
-kube_config: '/var/new_jenkins_home/workspace/admin.conf'
-
-nodes:
-  -
-    ip: '10.90.0.101'
-    user: 'cord'
-    pass: 'cord'
-  -
-    ip: '10.90.0.102'
-    user: 'cord'
-    pass: 'cord'
-  -
-    ip: '10.90.0.103'
-    user: 'cord'
-    pass: 'cord'
-
-fabric_switches:
-  -
-    mac: 'cc:37:ab:61:80:ca'
-    ip: '10.90.0.111'
-    user: 'root'
-    pass: 'onl'
-
-olts:
-  -
-    ip: '10.90.0.114'
-    user: 'root'
-    pass: 'onl'
-    fortygig: 'true'
-
-onus:
-  -
-    serial: 'BRCM22222222'
-  -
-    serial: 'ISKT71e801a0'
-  -
-    serial: 'ALPHe3d1cfde'
-
-srcHost:
-  ip: '10.0.3.56'
-  user: 'root'
-  pass: 'root'
-
-hosts:
-  src:
-    ip: '10.90.0.51'
-    user: 'ubuntu'
-    dp_iface_name: 'eth1'
-    container_type: 'LXC'
-    container_name: 'ALPHe3d1cfde'
-  dst:
-    dp_iface_ip_qinq: '8.8.8.8'
diff --git a/kubernetes-configs/flex-pod1-olt-1.0.yml b/kubernetes-configs/flex-pod1-olt-1.0.yml
deleted file mode 100644
index 84e0687..0000000
--- a/kubernetes-configs/flex-pod1-olt-1.0.yml
+++ /dev/null
@@ -1,19 +0,0 @@
----
-# 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.
-
-# Automated deployment configuration for Flex POD 1 , olt/onu are connected to this
-
-# This file is used to optionally customize helm charts installations
-
diff --git a/kubernetes-configs/onlab-pod1-1.0.yml b/kubernetes-configs/onlab-pod1-1.0.yml
deleted file mode 100644
index 442c036..0000000
--- a/kubernetes-configs/onlab-pod1-1.0.yml
+++ /dev/null
@@ -1,18 +0,0 @@
----
-# 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.
-
-# Automated deployment configuration for onlab-pod1, olt/onu are connected to this
-
-# This file is used to optionally customize helm charts installations
diff --git a/tosca-configs/att-workflow/flex-pod1-olt-1.0-fabric.yaml b/tosca-configs/att-workflow/flex-pod1-olt-1.0-fabric.yaml
deleted file mode 100755
index 3064223..0000000
--- a/tosca-configs/att-workflow/flex-pod1-olt-1.0-fabric.yaml
+++ /dev/null
@@ -1,112 +0,0 @@
-# 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 @flex-pod1-olt-fabric.yaml http://10.192.4.241:30007/run
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-imports:
-  - custom_types/switch.yaml
-  - custom_types/switchport.yaml
-  - custom_types/portinterface.yaml
-  - custom_types/bngportmapping.yaml
-  - custom_types/attworkflowdriverwhitelistentry.yaml
-  - custom_types/attworkflowdriverservice.yaml
-  - custom_types/serviceinstanceattribute.yaml
-  - custom_types/onosapp.yaml
-
-description: Configures the Flex POD with AT&T workflow
-
-topology_template:
-  node_templates:
-    # Fabric configuration
-    switch#leaf_1:
-      type: tosca.nodes.Switch
-      properties:
-        driver: ofdpa3
-        ipv4Loopback: 192.168.9.24
-        ipv4NodeSid: 19
-        isEdgeRouter: false
-        name: Fabric Switch - 1
-        ofId: of:0000cc37ab5b6da8
-        routerMac: 00:00:00:00:00:03
-
-    # Setup the OLT switch port
-    port#olt_port:
-      type: tosca.nodes.SwitchPort
-      properties:
-        portId: 7
-        host_learning: false
-      requirements:
-        - switch:
-            node: switch#leaf_1
-            relationship: tosca.relationships.BelongsToOne
-
-    # Port connected to the BNG
-    port#bng_port:
-      type: tosca.nodes.SwitchPort
-      properties:
-        portId: 8
-      requirements:
-        - switch:
-            node: switch#leaf_1
-            relationship: tosca.relationships.BelongsToOne
-
-    # Setup the fabric switch port where the external
-    # router is connected to
-    bngmapping:
-      type: tosca.nodes.BNGPortMapping
-      properties:
-        s_tag: any
-        switch_port: 8
-
-    # DHCP L2 Relay config
-    onos_app#dhcpl2relay:
-      type: tosca.nodes.ONOSApp
-      properties:
-        name: dhcpl2relay
-        must-exist: true
-
-    dhcpl2relay-config-attr:
-      type: tosca.nodes.ServiceInstanceAttribute
-      properties:
-        name: /onos/v1/network/configuration/apps/org.opencord.dhcpl2relay
-        value: >
-          {
-            "dhcpl2relay" : {
-              "useOltUplinkForServerPktInOut" : false,
-              "dhcpServerConnectPoints" : [ "of:0000cc37ab5b6da8/8" ]
-            }
-          }
-      requirements:
-        - service_instance:
-            node: onos_app#dhcpl2relay
-            relationship: tosca.relationships.BelongsToOne
-
-    # ONU Whitelist
-    service#att:
-      type: tosca.nodes.AttWorkflowDriverService
-      properties:
-        name: att-workflow-driver
-        must-exist: true
-
-    ALPHe3d1cfa7:
-      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
-      properties:
-        serial_number: ALPHe3d1cfa7
-        pon_port_id: 536870912
-        device_id: of:000000000ac004ce
-      requirements:
-        - owner:
-            node: service#att
-            relationship: tosca.relationships.BelongsToOne
diff --git a/tosca-configs/att-workflow/flex-pod1-olt-1.0-olt.yaml b/tosca-configs/att-workflow/flex-pod1-olt-1.0-olt.yaml
deleted file mode 100755
index a00311b..0000000
--- a/tosca-configs/att-workflow/flex-pod1-olt-1.0-olt.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-# 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 @flex-pod1-olt-olt.yaml http://10.192.4.241:30007/run
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-imports:
-  - custom_types/oltdevice.yaml
-  - custom_types/onudevice.yaml
-  - custom_types/voltservice.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: olt-1
-        device_type: openolt
-        host: 10.192.4.206
-        port: 9191
-        switch_datapath_id: of:0000cc37ab5b6da8
-        switch_port: "7"
-        outer_tpid: "0x8100"
-        uplink: "65536"
-        nas_id: "NAS_ID"
-      requirements:
-        - volt_service:
-            node: service#volt
-            relationship: tosca.relationships.BelongsToOne
diff --git a/tosca-configs/att-workflow/flex-pod1-olt-1.0-subscriber.yaml b/tosca-configs/att-workflow/flex-pod1-olt-1.0-subscriber.yaml
deleted file mode 100755
index 4914bfd..0000000
--- a/tosca-configs/att-workflow/flex-pod1-olt-1.0-subscriber.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-# 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-subscriber.yaml http://10.90.0.101:30007/run
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-imports:
-  - custom_types/rcordsubscriber.yaml
-
-description: Pre-provsion a subscriber
-
-topology_template:
-  node_templates:
-
-    # Pre-provision the subscriber the subscriber
-    my_house:
-      type: tosca.nodes.RCORDSubscriber
-      properties:
-        name: My House-305
-        status: pre-provisioned
-        s_tag: 111
-        c_tag: 999
-        onu_device: ALPHe3d1cfa7
-        nas_port_id : "PON 1/1/03/1:1.1.1"
-        circuit_id: foo1
-        remote_id: bar1
diff --git a/tosca-configs/att-workflow/onlab-pod1-1.0-fabric.yaml b/tosca-configs/att-workflow/onlab-pod1-1.0-fabric.yaml
deleted file mode 100755
index 0f9ddb0..0000000
--- a/tosca-configs/att-workflow/onlab-pod1-1.0-fabric.yaml
+++ /dev/null
@@ -1,135 +0,0 @@
-# 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-fabric.yaml http://10.90.0.101:30007/run
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-imports:
-  - custom_types/switch.yaml
-  - custom_types/switchport.yaml
-  - custom_types/portinterface.yaml
-  - custom_types/bngportmapping.yaml
-  - custom_types/attworkflowdriverwhitelistentry.yaml
-  - custom_types/attworkflowdriverservice.yaml
-  - custom_types/serviceinstanceattribute.yaml
-  - custom_types/onosapp.yaml
-
-description: Configures the ONF SEBA POD with AT&T workflow
-
-topology_template:
-  node_templates:
-    # Fabric configuration
-    switch#leaf_1:
-      type: tosca.nodes.Switch
-      properties:
-        driver: ofdpa3
-        ipv4Loopback: 192.168.0.201
-        ipv4NodeSid: 17
-        isEdgeRouter: True
-        name: AGG_SWITCH
-        ofId: of:0000000000000001
-        routerMac: 00:00:02:01:06:01
-
-    # Setup the OLT switch port
-    port#olt_port:
-      type: tosca.nodes.SwitchPort
-      properties:
-        portId: 1
-        host_learning: false
-      requirements:
-        - switch:
-            node: switch#leaf_1
-            relationship: tosca.relationships.BelongsToOne
-
-    # Port connected to the BNG
-    port#bng_port:
-      type: tosca.nodes.SwitchPort
-      properties:
-        portId: 31
-      requirements:
-        - switch:
-            node: switch#leaf_1
-            relationship: tosca.relationships.BelongsToOne
-
-    # Setup the fabric switch port where the external
-    # router is connected to
-    bngmapping:
-      type: tosca.nodes.BNGPortMapping
-      properties:
-        s_tag: any
-        switch_port: 31
-
-    # DHCP L2 Relay config
-    onos_app#dhcpl2relay:
-      type: tosca.nodes.ONOSApp
-      properties:
-        name: dhcpl2relay
-        must-exist: true
-
-    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
-      properties:
-        name: att-workflow-driver
-        must-exist: true
-
-    BRCM22222222:
-      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
-      properties:
-        serial_number: BRCM22222222
-        # pon_port_id: 536870912
-        pon_port_id: 12345678
-        device_id: of:000000000a5a0072
-      requirements:
-        - owner:
-            node: service#att
-            relationship: tosca.relationships.BelongsToOne
-
-    ALPHe3d1cfde:
-      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
-      properties:
-        serial_number: ALPHe3d1cfde
-        pon_port_id: 536870912
-        device_id: of:000000000a5a0072
-      requirements:
-        - owner:
-            node: service#att
-            relationship: tosca.relationships.BelongsToOne
-
-    ISKT71e801a0:
-      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
-      properties:
-        serial_number: ISKT71e801a0
-        pon_port_id: 536870912
-        device_id: of:000000000a5a0072
-      requirements:
-        - owner:
-            node: service#att
-            relationship: tosca.relationships.BelongsToOne
diff --git a/tosca-configs/att-workflow/onlab-pod1-1.0-olt.yaml b/tosca-configs/att-workflow/onlab-pod1-1.0-olt.yaml
deleted file mode 100755
index c94b5e1..0000000
--- a/tosca-configs/att-workflow/onlab-pod1-1.0-olt.yaml
+++ /dev/null
@@ -1,100 +0,0 @@
-# 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-olt.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
-  - custom_types/switch.yaml
-  - custom_types/switchport.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
-
-    # CIG
-    olt_device:
-      type: tosca.nodes.OLTDevice
-      properties:
-        name: CIG
-        device_type: openolt
-        host: 10.90.0.115
-        port: 10400
-        switch_datapath_id: of:0000000000000001
-        switch_port: "4"
-        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
-
-    CIG:
-      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
-      properties:
-        serial_number: CIGG70606829
-        pon_port_id: 536870913
-        device_id: of:000000000a5a0073
-      requirements:
-        - owner:
-            node: service#att
-            relationship: tosca.relationships.BelongsToOne
-
-    # Pre-provision the subscriber
-    cig_subscriber_1:
-      type: tosca.nodes.RCORDSubscriber
-      properties:
-        name: Sub_CIGG70606829
-        status: pre-provisioned
-        c_tag: 444
-        s_tag: 444
-        onu_device: CIGG70606829
-        nas_port_id : "PON 1/1/03/1:1.1.1"
-        circuit_id: foo1
-        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-1.0-subscriber.yaml b/tosca-configs/att-workflow/onlab-pod1-1.0-subscriber.yaml
deleted file mode 100755
index 5ee3c0c..0000000
--- a/tosca-configs/att-workflow/onlab-pod1-1.0-subscriber.yaml
+++ /dev/null
@@ -1,61 +0,0 @@
-# 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-subscriber.yaml http://10.90.0.101:30007/run
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-imports:
-  - custom_types/rcordsubscriber.yaml
-
-description: Pre-provsion a subscriber
-
-topology_template:
-  node_templates:
-
-    # Pre-provision the subscriber the subscriber
-    onf_subscriber_1:
-      type: tosca.nodes.RCORDSubscriber
-      properties:
-        name: Sub_BRCM22222222
-        status: pre-provisioned
-        c_tag: 111
-        s_tag: 111
-        onu_device: BRCM22222222
-        nas_port_id : "PON 1/1/03/1:1.1.1"
-        circuit_id: foo1
-        remote_id: bar1
-
-    onf_subscriber_2:
-      type: tosca.nodes.RCORDSubscriber
-      properties:
-        name: Sub_ALPHe3d1cfde
-        status: pre-provisioned
-        c_tag: 112
-        s_tag: 111
-        onu_device: ALPHe3d1cfde
-        nas_port_id : "PON 1/1/04/1:1.1.1"
-        circuit_id: foo2
-        remote_id: bar2
-
-    onf_subscriber_3:
-      type: tosca.nodes.RCORDSubscriber
-      properties:
-        name: Sub_ISKT71e801a0
-        status: pre-provisioned
-        c_tag: 113
-        s_tag: 111
-        onu_device: ISKT71e801a0
-        nas_port_id : "PON 1/1/05/1:1.1.1"
-        circuit_id: foo3
-        remote_id: bar3
