2 Documentation Resource consisting purely of variable definitions useful for multiple project suites.
4 ... Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
6 ... This program and the accompanying materials are made available under the
7 ... terms of the Eclipse Public License v1.0 which accompanies this distribution,
8 ... and is available at http://www.eclipse.org/legal/epl-v10.html
11 ... These variables are considered global and immutable, so their names are in ALL_CAPS.
13 ... If a variable is only specific to few projects, define it in csit/variables/{project}/Variables.robot file instead.
14 ... If a variable only affects few Resources, define it in csit/libraries/{resource}.robot file instead.
16 ... Please include a short comment on why the variable is useful and why particular value was chosen.
17 ... Also a well-known variables provided by releng/builder script should be listed here,
18 ... the value should be a reasonable default.
20 ... Use ODL_SYSTEM instead of CONTROLLER and TOOLS_SYSTEM instead of MININET when referring to VMs.
24 # Keep this list sorted alphabetically.
25 &{ACCEPT_EMPTY} # Empty accept header. ODL should send JSON data in this case. TODO: Hide into more specific Resource if possible.
26 # Header for accpeting JSON data. TODO: Hide into more specific Resource if possible.
28 ... Accept=application/json
29 # Header for accepting XML data. TODO: Hide into more specific Resource if possible.
31 ... Accept=application/xml
32 # FIXME: Move to a separate Centinel-related Resource and add description.
33 ${ALERTFIELDCONTENTRULERECORD}
34 ... /restconf/config/alertrule:alertFieldContentRuleRecord/
35 # FIXME: Move to a separate Centinel-related Resource and add description.
36 ${ALERTFIELDVALUERULERECORD}
37 ... /restconf/config/alertrule:alertFieldValueRuleRecord
38 # FIXME: Move to a separate Centinel-related Resource and add description.
39 ${ALERTMESSAGECOUNTRULERECORD}
40 ... /restconf/config/alertrule:alertMessageCountRuleRecord/
41 # Authentication tuple for accessing ODL RESTCONF server. TODO: Migrate most suites to TemplatedRequests, then chose a more descriptive name.
43 ... ${ODL_RESTCONF_USER}
44 ... ${ODL_RESTCONF_PASSWORD}
45 # Authentication tuple for accessing Keystone API serveri
49 # Authentication tuple for accessing Keystone API server
53 # Authentication tuple for accessing Keystone API server
57 # Authentication tuple for accessing ODL RESTCONF server with Keystone Authentication
61 # Authentication tuple for accessing ODL RESTCONF server with Keystone Authentication
65 # Authentication tuple for accessing ODL RESTCONF server with Keystone Authentication
69 # Authentication tuple for accessing ODL RESTCONF server with Keystone Authentication
73 # FIXME: Move to a separate AAA-related Resource and add description.
76 ${BGP_TOOL_PORT} 17900 # Tool side of BGP communication listens on this port.
77 # Some suites temporarily override org.opendaylight.bgpcep Karaf log level to this value.
79 ... ${DEFAULT_BGPCEP_LOG_LEVEL}
80 # default location to find opendaylight root folder. Upstream CSIT overrides this on the pybot command line.
83 # FIXME: Move to a separate Resource and add description.
85 ... /restconf/config/opendaylight-inventory:nodes
86 # FIXME: Move to a separate Resource and add description.
88 ... /restconf/config/network-topology:network-topology
89 # FIXME: Move to a separate Resource and add description.
92 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
95 ${CONTROLLER} ${ODL_SYSTEM_IP} # Deprecated. FIXME: Eradicate.
96 ${CONTROLLER_PASSWORD} ${ODL_SYSTEM_PASSWORD} # Deprecated. FIXME: Eradicate.
97 ${CONTROLLER_PROMPT} ${DEFAULT_LINUX_PROMPT} # Deprecated. FIXME: Eradicate.
98 ${CONTROLLERS} ${ODL_SYSTEM_IP_LIST} # Deprecated. FIXME: Eradicate.
99 # FIXME: Move to a separate Resource and add description.
100 ${CONTROLLER_CONFIG_MOUNT}
101 ... /restconf/config/network-topology:network-topology/topology/topology-netconf/node/controller-config/yang-ext:mount
102 # Max number of seconds test will wait for a controller to stop. FIXME: Hiden into a Resource and rename.
103 ${CONTROLLER_STOP_TIMEOUT}
105 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
106 ${CREATE_PATHPOLICY_TOPOLOGY_FILE}
107 ... topo-3sw-2host_multipath.py
108 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
109 ${CREATE_PATHPOLICY_TOPOLOGY_FILE_PATH}
110 ... MininetTopo/${CREATE_PATHPOLICY_TOPOLOGY_FILE}
111 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
112 ${CREATE_VLAN_TOPOLOGY_FILE}
114 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
115 ${CREATE_VLAN_TOPOLOGY_FILE_PATH}
116 ... MininetTopo/${CREATE_VLAN_TOPOLOGY_FILE}
117 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
120 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description
123 # Full path of custom.properties file
125 ... /tmp/${BUNDLEFOLDER}/etc/custom.properties
126 # Generic *_SYSTEM prompt for SSHLibrary.Read_Unti_Prompt. Current value is there for historic reasons. FIXME: Add -v to releng/builder and change this value to more common "$" (without quotes, with backslash). TODO: Replace usage with the strict version.
127 ${DEFAULT_LINUX_PROMPT}
129 # A more strict prompt substring, this only matches Bash prompt, not Mininet prompt.
130 ${DEFAULT_LINUX_PROMPT_STRICT}
132 # Fallback Karaf log level specific to org.opendaylight.bgpcep.
133 ${DEFAULT_BGPCEP_LOG_LEVEL}
134 ... ${DEFAULT_ODL_LOG_LEVEL}
135 # Some suites allow to change overall Karaf log level, this is the default value to set or fall back.
136 ${DEFAULT_ODL_LOG_LEVEL}
138 # Generic *_SYSTEM linux password. If empty, SSHLibrary.Login_With_Public_Key is attempted instead of SSHLibrary.Login. TODO: Rename to DEFAULT_LINUX_PASSWORD.
141 # Fallback Karaf log level specific to org.opendaylight.protocol.
142 ${DEFAULT_PROTOCOL_LOG_LEVEL}
143 ... ${DEFAULT_ODL_LOG_LEVEL}
144 # Generic *_SYSTEM linux user name name. TODO: Rename to DEFUALT_LINUX_USER. FIXME: Add -v to releng/builder and change the value to something more common, e.g. "vagrant".
147 # Generic *_SYSTEM SSH.Login timeout. Some systems are slow to authenticate.
150 ${DEFAULT_TIMEOUT_HTTP} 5 # Used for HTTP connections
151 # FIXME: Move to a separate Centinel-related Resource and add description.
152 ${DELETE_DASHBOARDRECORD}
153 ... /restconf/operations/dashboardrule:delete-dashboard
154 # Port to use when interacting with ElasticSearch. FIXME: Hide into a specific Resource.
157 @{EMPTY_LIST} # Empty list for KWs with list parameters, see: https://github.com/robotframework/robotframework/issues/2243
158 # Some suites need this to avoid getting stuck. FIXME: Move to the Resource which uses this.
159 ${ENABLE_GLOBAL_TEST_DEADLINES}
161 ${ESCAPE_CHARACTER} \x1b # A more readable alias to the special escape character.
162 # global flag (can/should be tweak on pybot command line) which suites can use if they are validating exceptions to pass/fail tests on
163 ${FAIL_ON_EXCEPTIONS}
165 ${FIB_ENTRIES_URL} ${CONFIG_API}/odl-fib:fibEntries/
166 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
167 ${FLOWFILTERENTRIES_CREATE}
168 ... flowfilterentries.json
169 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
172 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
173 ${FLOWFILTERS_CREATE}
175 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
176 ${FLOWFILTERS_UPDATE}
177 ... flowfilterentries
178 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
181 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
184 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
185 ${FLOWLISTENTRIES_CREATE}
186 ... flowlistentries.json
187 # FIXME: Move to a separate Centinel-related Resource and add description.
188 ${GET_CONFIGURATION_URI}
189 ... /restconf/operational/configuration:configurationRecord/
190 # FIXME: Move to a separate Centinel-related Resource and add description.
191 ${GET_DASHBOARDRECORD}
192 ... /restconf/operational/dashboardrule:dashboardRecord/
193 # FIXME: Move to a separate Nemo-related Resource and add description.
195 ... /retconf/config/intent:intents
196 # Deprecated. Sometimes conflicts with argument name. TODO: Migrate most suites to TemplatedRequests, then chose a more descriptive name.
198 ... Content-Type=application/json
199 # Content type for JSON data, used to work around Requests auto-serialization. FIXME: keep it as 'application/json' to make it work for both Bierman02 & RFC8040 URLs. Change it to RFC8040 media type once RFC8040 migration is completed.
201 ... Content-Type=application/json
202 &{HEADERS_YANG_RFC8040_JSON} Content-Type=application/yang-data+json
203 # Content type for XML data. TODO: Hide into more specific Resource if possible.
205 ... Content-Type=application/xml
206 ${KARAF_PROMPT_LOGIN} opendaylight-user # This is used for karaf console login.
208 # Larger substring of Karaf prompt, shorter ones may result in false positives.
209 ${KARAF_DETAILED_PROMPT}
210 ... @${ESCAPE_CHARACTER}\[0m${ESCAPE_CHARACTER}\[34mroot${ESCAPE_CHARACTER}\[0m>
211 ${KARAF_HOME} ${WORKSPACE}${/}${BUNDLEFOLDER} # Karaf home directory path.
212 # location of karaf.log in standard CSIT jobs
214 ... ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
215 ${KARAF_PASSWORD} karaf # Plaintext password to authenticate to Karaf console.
216 # This is used for interactive read until prompt in regexp format.
218 ... opendaylight-user.*root.*>
219 ${KARAF_SHELL_PORT} 8101 # ODL provides SSH access to Karaf consoleon this port.
220 ${KARAF_USER} karaf # User name to authenticate to Karaf SSH console.
221 # Implementation detail related to SSHLibrary.Login_With_Public_Key. TODO: Hide in SSHKeywords.
224 # Full path of keystore for TLS communication
226 ... /tmp/${BUNDLEFOLDER}/configuration/ssl/.keystore
227 # Relative path of keystore for TLS communication
228 ${KEYSTORE_RELATIVE_PATH}
229 ... configuration/ssl/.keystore
230 # FIXME: Move to a separate LispFlowMapping-related Resource and add description.
232 ... /restconf/operations/odl-mappingservice
233 # FIXME: Move to a separate LispFlowMapping-related Resource and add description.
235 ... /restconf/operations/lfm-mapping-database
236 # FIXME: Move to a separate LispFlowMapping-related Resource and add description.
238 ... /restconf/operations/odl-lisp-sb
239 # FIXME: Move to a separate Resource and add description.
241 ... /rests/data/ietf-yang-library:modules-state?content=nonconfig
242 # FIXME: Move to a separate Neutron-related Resource and add description.
245 # FIXME: Move to a separate Neutron-related Resource and add description.
247 ... http://${NEUTRON}:9696
248 # FIXME: Move to a separate Neutron-related Resource and add description.
250 ... /controller/nb/v2/neutron
251 # FIXME: Move to a separate Neutron-related Resource and add description.
252 ${NEUTRON_NETWORKS_API}
253 ... ${NEUTRON_NB_API}/networks
254 # FIXME: Move to a separate Neutron-related Resource and add description.
255 ${NEUTRON_SUBNETS_API}
256 ... ${NEUTRON_NB_API}/subnets
257 # FIXME: Move to a separate Neutron-related Resource and add description.
259 ... ${NEUTRON_NB_API}/ports
260 # FIXME: Move to a separate Neutron-related Resource and add description.
261 ${NEUTRON_ROUTERS_API}
262 ... ${NEUTRON_NB_API}/routers
263 ${ODL_AKKA_PORT} 2550 # Port number akka cluster communicates on
264 ${ODL_BGP_PORT} 1790 # ODL side of BGP communication listens on this port number.
265 # Deprecated. Not clear if this refers to HTTP or SSH sessions. FIXME: Eradicate, or at least convert to a resource-private variable.
266 ${ODL_CONTROLLER_SESSION}
268 ${ODL_NETCONF_CONFIG_PORT} 1830 # Port number ODL NETCONF server of Config Subsystem listens on.
269 ${ODL_NETCONF_MDSAL_PORT} 2830 # Port number ODL NETCONF server of MD-SAL listens on.
270 # Namespace of standardized NETCONF elements.
271 ${ODL_NETCONF_NAMESPACE}
272 ... urn:ietf:params:xml:ns:netconf:base:1.0
273 # Both ODL Netconf servers require this password to authenticate.
274 ${ODL_NETCONF_PASSWORD}
275 ... ${ODL_RESTCONF_PASSWORD}
276 ${ODL_NETCONF_PROMPT} ]]>]]> # Standard prompt string for NETCONF protocol.
277 # Both ODL Netconf servers require this user name to authenticate.
279 ... ${ODL_RESTCONF_USER}
280 # Codename of OpenFlowPlugin implementation ODL is configured to use.
283 # TODO: get rid of all uses of ODL_OF_PORT and use ODL_OF_PORT_6633 instead, if 6653 is not acceptable
284 ${ODL_OF_PORT} 6633 # Port number ODL communicates using OpenFlow protocol on.
285 ${ODL_OF_PORT_6633} 6633 # Port number ODL communicates using OpenFlow protocol on.
286 ${ODL_OF_PORT_6653} 6653 # Port number ODL communicates using OpenFlow protocol on.
287 # Username for basic HTTP authentication used by requests against ODL RESTCONF server.
290 # Plaintext password for basic HTTP authentication used by requests against ODL RESTCONF server.
291 ${ODL_RESTCONF_PASSWORD}
293 ${ODL_SYSTEM_1_IP} 127.0.0.1 # IP address of system hosting member 1 od ODL cluster.
294 ${ODL_SYSTEM_2_IP} 127.0.0.2 # IP address of system hosting member 2 od ODL cluster.
295 ${ODL_SYSTEM_3_IP} 127.0.0.3 # IP address of system hosting member 3 od ODL cluster.
296 # IP address of system hosting ODL for SSHLibrary to connect to. First node if ODL is a cluster.
298 ... ${ODL_SYSTEM_1_IP}
299 # Deprecated. List of ODL cluster member IP addresses. See ClusterManagement.robot for alternatives.
300 @{ODL_SYSTEM_IP_LIST}
301 ... ${ODL_SYSTEM_1_IP}
302 ... ${ODL_SYSTEM_2_IP}
303 ... ${ODL_SYSTEM_3_IP}
304 ${ODL_SYSTEM_USER} ${DEFAULT_USER} # Linux username specific for ODL systems.
305 # Linux password (or empty to use public key) specific for ODL systems.
306 ${ODL_SYSTEM_PASSWORD}
307 ... ${DEFAULT_PASSWORD}
308 # Bash prompt substring specific for ODL systems.
310 ... ${DEFAULT_LINUX_PROMPT}
311 # FIXME: Move to a separate Resource and add description.
313 ... /restconf/operational
314 # FIXME: Move to a separate Resource and add description.
316 ... /restconf/operations
317 # FIXME: Move to a separate Resource and add description.
318 ${OPERATIONAL_NODES_API}
319 ... /restconf/operational/opendaylight-inventory:nodes
320 # FIXME: Move to a separate Resource and add description.
321 ${OPERATIONAL_TOPO_API}
322 ... /restconf/operational/network-topology:network-topology
323 ${OS_CMD_SUCCESS} Command Returns 0
324 # FIXME: Move to a separate Neutron-related Resource and add description.
327 # Port number ODL uses for OVSDB protocol communication. TODO: Move to OVSDB-specific Resource.
330 ${PASSWORD} ${DEFAULT_PASSWORD} # Deprecated. FIXME: Eradicate.
331 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
334 ${PORT} 8080 # Deprecated. Generic HTTP port. FIXME: Eradicate.
335 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
337 ... ports/detail.json
338 # FIXME: Move to a separate Nemo-related Resource and add description.
339 ${PREDEFINE_CONNECTION_URI}
340 ... /restconf/config/nemo-object:connection-definitions
341 # FIXME: Move to a separate Nemo-related Resource and add description.
342 ${PREDEFINE_NODE_URI}
343 ... /restconf/config/nemo-object:node-definitions
344 # FIXME: Move to a separate Nemo-related Resource and add description.
345 ${PREDEFINE_ROLE_URI}
346 ... /restconf/config/nemo-user:user-roles
347 # Deprecated. FIXME: Name is to generic. Eradicate.
349 ... http://${ODL_SYSTEM_IP}:${PORT}
350 # Some suites temporarily override org.opendaylight.protocol Karaf log level to this value.
351 ${PROTOCOL_LOG_LEVEL}
352 ... ${DEFAULT_PROTOCOL_LOG_LEVEL}
353 ${PWD} ${ODL_RESTCONF_PASSWORD} # Deprecated. FIXME: Eradicate.
355 ... ip-route:169.254.169.254 via [0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}
356 ${REGEX_IPV4} [0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}
357 ${REGEX_NAMESERVER} nameserver [0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}
358 ${REGEX_OBTAINED} [0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3} obtained
359 ${REGEX_UUID} [0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}
360 # FIXME: Move to a separate Nemo-related Resource and add description.
361 ${REGISTER_TENANT_URI}
362 ... /restconf/operations/nemo-intent:register-user
363 ${RESTCONFPORT} 8181 # Primary port for ODL RESTCONF, although 8080 should also work.
364 ${RESTCONFPORT_TLS} 8443 # Port for ODL RESTCONF Secure (TLS) operations
365 # Deprecated. Restconf port used by AD-SAL services. FIXME: Eradicate.
368 ${REST_API} /rests/data
369 # FIXME: Move to a separate AAA-related Resource and add description.
372 # Scope, used for some types of HTTP requests agains ODL RESTCONF. TODO: Migrate most suites to TemplatedRequests or AuthStandalone, then chose a more descriptive name.
375 # Accept and Content type for XML data. TODO: Hide into more specific Resource if possible.
376 &{SEND_ACCEPT_XML_HEADERS}
377 ... Content-Type=application/xml
378 ... Accept=application/xml
379 # FIXME: Move to a separate Centinel-related Resource and add description.
380 ${SET_ALERTFIELDCONTENTRULERECORD}
381 ... /restconf/operations/alertrule:set-alert-field-content-rule
382 # FIXME: Move to a separate Centinel-related Resource and add description.
383 ${SET_ALERTFIELDVALUERULERECORD}
384 ... /restconf/operations/alertrule:set-alert-field-value-rule
385 # FIXME: Move to a separate Centinel-related Resource and add description.
386 ${SET_ALERTMESSAGECOUNTRULERECORD}
387 ... /restconf/operations/alertrule:set-alert-message-count-rule
388 # FIXME: Move to a separate Centinel-related Resource and add description.
389 ${SET_CONFIGURATION_URI}
390 ... /restconf/operations/configuration:set-centinel-configurations
391 # FIXME: Move to a separate Centinel-related Resource and add description.
392 ${SET_DASHBOARDRECORD}
393 ... /restconf/operations/dashboardrule:set-dashboard
394 # FIXME: Move to a separate Centinel-related Resource and add description.
396 ... /restconf/operations/stream:set-stream
397 # FIXME: Move to a separate Centinel-related Resource and add description.
399 ... /restconf/operations/subscribe:subscribe-user
400 # Implementation detail related to SSHLibrary.Login_With_Public_Key. TODO: Hide in SSHKeywords.
403 # FIXME: Move to a separate Centinel-related Resource and add description.
404 ${STREAMRECORD_CONFIG}
405 ... /restconf/config/stream:streamRecord
406 # FIXME: Move to a separate Nemo-related Resource and add description.
407 ${STRUCTURE_INTENT_URI}
408 ... /restconf/operations/nemo-intent:structure-style-nemo-update
409 # FIXME: Move to a separate Centinel-related Resource and add description.
411 ... /restconf/config/subscribe:subscription/
412 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
415 ${TOOLS_SYSTEM_1_IP} 127.0.0.1 # IP address of first system hosting testing tools.
416 ${TOOLS_SYSTEM_2_IP} 127.0.0.2 # IP address of second system hosting testing tools.
417 ${TOOLS_SYSTEM_3_IP} 127.0.0.3 # IP address of third system hosting testing tools.
418 # IP address of primary system hosting testing tools.
420 ... ${TOOLS_SYSTEM_1_IP}
421 ${TOOLS_SYSTEM_USER} ${DEFAULT_USER} # Linux user name specific for tools systems.
422 ${TOOLS_SYSTEM_PASSWORD} ${DEFAULT_PASSWORD} # Linux password specific for tools systems.
423 # Bash prompt substring specific for tools systems.
424 ${TOOLS_SYSTEM_PROMPT}
425 ... ${DEFAULT_LINUX_PROMPT}
426 # Part of Mininet configuration? FIXME: Find who uses this and eliminate, or at least add a good description.
429 # Part of Mininet configuration? FIXME: Find who uses this and eliminate, or at least add a good description.
432 # Part of Mininet configuration? FIXME: Find who uses this and eliminate, or at least add a good description.
435 # FIXME: Move to a separate Resource and add description.
437 ... network-topology:network-topology/topology
438 ${USER} ${ODL_RESTCONF_USER} # Deprecated. FIXME: Eradicate.
439 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
442 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
445 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
448 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
451 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
454 # IP address where VTN Coordinator application is running. TODO: Move to a VTN-specific Resource.
457 # Dict of headers to use for HTTP requests against VTN Coordinator. TODO: Move to a VTN-specific Resource.
459 ... Content-Type=application/json
461 ... password=adminpass
462 # Shorthand for composing HTTP requests. TODO: Move to a VTN-specific Resource.
464 ... http://${VTNC}:${VTNCPORT}
465 # Port number VTN Coordinator listens on. TODO: Move to a VTN-specific Resource.
468 # Path part of restconf URL towards operational vtn-nodes. TODO: Move to a VTN-specific Resource.
469 ${VTN_INVENTORY_NODE_API}
470 ... /restconf/operational/vtn-inventory:vtn-nodes
471 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
474 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description.
477 # Directory part of URI used when sending HTTP requests to VTN Coordinator. TODO: Move to a VTN-specific Resource.
480 # Keep this list sorted alphabetically.