blob: 3771395f005ea8a60cf04cef708006e686069ea1 [file] [log] [blame]
Joey Armstrong003e83e2023-01-09 20:23:48 -05001# Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
teonee9ff4862018-11-29 14:36:50 -08002#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @onf-demo-pod-olt.yaml http://192.168.100.1:30007/run
16
17tosca_definitions_version: tosca_simple_yaml_1_0
18imports:
19 - custom_types/oltdevice.yaml
20 - custom_types/onudevice.yaml
21 - custom_types/voltservice.yaml
Matteo Scandolod8337912019-06-27 15:51:00 -070022 - custom_types/technologyprofile.yaml
teonee9ff4862018-11-29 14:36:50 -080023description: Creates OLT devices
24topology_template:
25 node_templates:
26
27 service#volt:
28 type: tosca.nodes.VOLTService
29 properties:
30 name: volt
31 must-exist: true
32
33 edgecore:
34 type: tosca.nodes.OLTDevice
35 properties:
36 name: EdgeCore OLT
37 device_type: openolt
38 host: 192.168.100.111
39 port: 9191
40 switch_datapath_id: of:0000000000000001
41 switch_port: "1"
42 outer_tpid: "0x8100"
Scott Baker970d5d52018-12-11 07:00:17 +000043 uplink: "65536"
teonee9ff4862018-11-29 14:36:50 -080044 nas_id: "NAS_ID"
Girish Gowdra0b7d6872021-11-22 14:51:41 -080045 serial_number: "EC1721000216"
teonee9ff4862018-11-29 14:36:50 -080046 requirements:
47 - volt_service:
48 node: service#volt
49 relationship: tosca.relationships.BelongsToOne
Matteo Scandolod8337912019-06-27 15:51:00 -070050
51 technologyProfile:
52 type: tosca.nodes.TechnologyProfile
53 properties:
54 profile_id: 64
55 technology: xgspon
56 profile_value: >
57 {
58 "name": "4QueueHybridProfileMap1",
59 "profile_type": "XPON",
Matteo Scandoloe4c81622019-09-03 13:13:44 -070060 "version": 1,
61 "num_gem_ports": 4,
Matteo Scandolod8337912019-06-27 15:51:00 -070062 "instance_control": {
63 "onu": "multi-instance",
64 "uni": "single-instance",
65 "max_gem_payload_size": "auto"
66 },
67 "us_scheduler": {
68 "additional_bw": "auto",
69 "direction": "UPSTREAM",
70 "priority": 0,
71 "weight": 0,
72 "q_sched_policy": "hybrid"
73 },
74 "ds_scheduler": {
75 "additional_bw": "auto",
76 "direction": "DOWNSTREAM",
77 "priority": 0,
78 "weight": 0,
79 "q_sched_policy": "hybrid"
80 },
Matteo Scandoloe4c81622019-09-03 13:13:44 -070081 "upstream_gem_port_attribute_list": [
82 {
83 "pbit_map": "0b00000101",
84 "aes_encryption": "True",
85 "scheduling_policy": "WRR",
86 "priority_q": 4,
87 "weight": 25,
88 "discard_policy": "TailDrop",
89 "max_q_size": "auto",
90 "discard_config": {
91 "max_threshold": 0,
92 "min_threshold": 0,
93 "max_probability": 0
94 }
95 },
96 {
97 "pbit_map": "0b00011010",
98 "aes_encryption": "True",
99 "scheduling_policy": "WRR",
100 "priority_q": 3,
101 "weight": 75,
102 "discard_policy": "TailDrop",
103 "max_q_size": "auto",
104 "discard_config": {
105 "min_threshold": 0,
106 "max_threshold": 0,
107 "max_probability": 0
108 }
109 },
110 {
111 "pbit_map": "0b00100000",
112 "aes_encryption": "True",
113 "scheduling_policy": "StrictPriority",
114 "priority_q": 2,
115 "weight": 0,
116 "discard_policy": "TailDrop",
117 "max_q_size": "auto",
118 "discard_config": {
119 "min_threshold": 0,
120 "max_threshold": 0,
121 "max_probability": 0
122 }
123 },
124 {
125 "pbit_map": "0b11000000",
Matteo Scandolod8337912019-06-27 15:51:00 -0700126 "aes_encryption": "True",
127 "scheduling_policy": "StrictPriority",
128 "priority_q": 1,
Matteo Scandoloe4c81622019-09-03 13:13:44 -0700129 "weight": 25,
Matteo Scandolod8337912019-06-27 15:51:00 -0700130 "discard_policy": "TailDrop",
131 "max_q_size": "auto",
132 "discard_config": {
133 "min_threshold": 0,
134 "max_threshold": 0,
135 "max_probability": 0
136 }
137 }
138 ],
Matteo Scandoloe4c81622019-09-03 13:13:44 -0700139 "downstream_gem_port_attribute_list": [
140 {
141 "pbit_map": "0b00000101",
142 "aes_encryption": "True",
143 "scheduling_policy": "WRR",
144 "priority_q": 4,
145 "weight": 10,
146 "discard_policy": "TailDrop",
147 "max_q_size": "auto",
148 "discard_config": {
149 "min_threshold": 0,
150 "max_threshold": 0,
151 "max_probability": 0
152 }
153 },
154 {
155 "pbit_map": "0b00011010",
156 "aes_encryption": "True",
157 "scheduling_policy": "WRR",
158 "priority_q": 3,
159 "weight": 90,
160 "discard_policy": "TailDrop",
161 "max_q_size": "auto",
162 "discard_config": {
163 "min_threshold": 0,
164 "max_threshold": 0,
165 "max_probability": 0
166 }
167 },
168 {
169 "pbit_map": "0b00100000",
170 "aes_encryption": "True",
171 "scheduling_policy": "StrictPriority",
172 "priority_q": 2,
173 "weight": 0,
174 "discard_policy": "TailDrop",
175 "max_q_size": "auto",
176 "discard_config": {
177 "min_threshold": 0,
178 "max_threshold": 0,
179 "max_probability": 0
180 }
181 },
182 {
183 "pbit_map": "0b11000000",
Matteo Scandolod8337912019-06-27 15:51:00 -0700184 "aes_encryption": "True",
185 "scheduling_policy": "StrictPriority",
186 "priority_q": 1,
Matteo Scandoloe4c81622019-09-03 13:13:44 -0700187 "weight": 25,
Matteo Scandolod8337912019-06-27 15:51:00 -0700188 "discard_policy": "TailDrop",
189 "max_q_size": "auto",
190 "discard_config": {
191 "min_threshold": 0,
192 "max_threshold": 0,
193 "max_probability": 0
194 }
195 }
196 ]
197 }