2 Definitions of common variables for the system test robot suites of the
5 Authors: Baohua Yang@IBM, Denghui Huang@IBM
6 Edited: Many times by many people
9 # VM Environment defaults
10 DEFAULT_LINUX_PROMPT = ">"
11 DEFAULT_LINUX_PROMPT_STRICT = "]>"
12 DEFAULT_USER = "jenkins"
13 DEFAULT_TIMEOUT = "30s"
15 # ODL system variables
16 ODL_SYSTEM_IP = "127.0.0.1" # Override if ODL is not running locally to pybot
17 ODL_SYSTEM_IP_LIST = ["ODL_SYSTEM_1_IP", "ODL_SYSTEM_2_IP", "ODL_SYSTEM_3_IP"]
18 ODL_SYSTEM_USER = DEFAULT_USER
19 ODL_SYSTEM_PASSWORD = "" # empty means use public key authentication
20 ODL_SYSTEM_PROMPT = DEFAULT_LINUX_PROMPT
22 # "Tools" system variables (mininet etc).
23 TOOLS_SYSTEM_IP = "127.0.0.1" # Override if tools are not run locally to pybot
24 TOOLS_SYSTEM_USER = DEFAULT_USER
25 TOOLS_SYSTEM_PASSWORD = "" # empty means use public key authentication
26 TOOLS_SYSTEM_PROMPT = DEFAULT_LINUX_PROMPT
29 KARAF_SHELL_PORT = "8101"
30 ESCAPE_CHARACTER = "\x1B"
31 KARAF_PROMPT_LOGIN = "opendaylight-user"
33 KARAF_PASSWORD = "karaf"
34 KARAF_PROMPT = "opendaylight-user.*root.*>"
37 DEFAULT_ODL_LOG_LEVEL = "INFO"
38 DEFAULT_BGPCEP_LOG_LEVEL = DEFAULT_ODL_LOG_LEVEL
39 DEFAULT_PROTOCOL_LOG_LEVEL = DEFAULT_BGPCEP_LOG_LEVEL
40 BGPCEP_LOG_LEVEL = DEFAULT_BGPCEP_LOG_LEVEL
41 PROTOCOL_LOG_LEVEL = BGPCEP_LOG_LEVEL
45 BGP_TOOL_PORT = "17900"
48 ODL_RESTCONF_USER = "admin"
49 ODL_RESTCONF_PASSWORD = "admin"
52 ODL_NETCONF_CONFIG_PORT = "1830"
53 ODL_NETCONF_MDSAL_PORT = "2830"
54 ODL_NETCONF_USER = "admin"
55 ODL_NETCONF_PASSWORD = "admin"
56 ODL_NETCONF_PROMPT = "]]>]]>"
57 ODL_NETCONF_NAMESPACE = "urn:ietf:params:xml:ns:netconf:base:1.0"
61 ODL_OF_PLUGIN = "lithium"
63 # VTN Coordinator Variables
66 VTNC_PREFIX = "http://" + VTNC + ":" + VTNCPORT
68 "Content-Type": "application/json",
70 "password": "adminpass",
73 VTNWEBAPI = "/vtn-webapi"
75 CTRLS_CREATE = "controllers.json"
80 VTNS_CREATE = "vtns.json"
84 VBRS_CREATE = "vbridges.json"
88 VBRIFS_CREATE = "interfaces.json"
92 PORTMAP_CREATE = "portmap.json"
95 VLANMAP_CREATE = "vlanmaps.json"
98 PORTS = "ports/detail.json"
101 FLOWLISTS_CREATE = "flowlists.json"
104 FLOWLISTENTRIES_CREATE = "flowlistentries.json"
105 FLOWLISTS = "flowlists"
108 FLOWFILTERS_CREATE = "flowfilters.json"
109 FLOWFILTERENTRIES_CREATE = "flowfilterentries.json"
110 FLOWFILTERS = "flowfilters/in"
111 FLOWFILTERS_UPDATE = "flowfilterentries"
115 CONFIG_NODES_API = "/restconf/config/opendaylight-inventory:nodes"
116 OPERATIONAL_NODES_API = "/restconf/operational/opendaylight-inventory:nodes"
117 OPERATIONAL_TOPO_API = "/restconf/operational/network-topology:" "network-topology"
118 CONFIG_TOPO_API = "/restconf/config/network-topology:network-topology"
119 CONTROLLER_CONFIG_MOUNT = (
120 "/restconf/config/network-topology:"
121 "network-topology/topology"
122 "/topology-netconf/node/"
123 "controller-config/yang-ext:mount"
125 CONFIG_API = "/restconf/config"
126 OPERATIONAL_API = "/restconf/operational"
127 MODULES_API = "/rests/data/ietf-yang-library:modules-state?content=nonconfig"
128 VTN_INVENTORY_NODE_API = "/restconf/operational/vtn-inventory:vtn-nodes"
131 PREDEFINE_ROLE_URI = "/restconf/config/nemo-user:user-roles"
132 PREDEFINE_NODE_URI = "/restconf/config/nemo-object:node-definitions"
133 PREDEFINE_CONNECTION_URI = "/restconf/config/nemo-object:connection-definitions"
134 REGISTER_TENANT_URI = "/restconf/operations/nemo-intent:register-user"
135 STRUCTURE_INTENT_URI = "/restconf/operations/nemo-intent:structure-style-nemo-update"
136 GET_INTENTS_URI = "/retconf/config/intent:intents"
139 AUTH_TOKEN_API = "/oauth2/token"
140 REVOKE_TOKEN_API = "/oauth2/revoke"
142 # Vlan Custom Topology Path and File
143 CREATE_VLAN_TOPOLOGY_FILE = "vlan_vtn_test.py"
144 CREATE_VLAN_TOPOLOGY_FILE_PATH = "MininetTopo/" + CREATE_VLAN_TOPOLOGY_FILE
146 # Mininet Custom Topology Path and File for Path Policy
147 CREATE_PATHPOLICY_TOPOLOGY_FILE = "topo-3sw-2host_multipath.py"
148 CREATE_PATHPOLICY_TOPOLOGY_FILE_PATH = "MininetTopo/" + CREATE_PATHPOLICY_TOPOLOGY_FILE
150 # LISP Flow Mapping variables
151 LFM_RPC_API = "/restconf/operations/odl-mappingservice"
152 LFM_RPC_API_LI = "/restconf/operations/lfm-mapping-database"
153 LFM_SB_RPC_API = "/restconf/operations/odl-lisp-sb"
156 NEUTRON_NB_API = "/controller/nb/v2/neutron"
157 NEUTRON_NETWORKS_API = NEUTRON_NB_API + "/" + "networks"
158 NEUTRON_SUBNETS_API = NEUTRON_NB_API + "/" + "subnets"
159 NEUTRON_PORTS_API = NEUTRON_NB_API + "/" + "ports"
160 NEUTRON_ROUTERS_API = NEUTRON_NB_API + "/" + "routers"
161 OSREST = "/v2.0/networks"
163 # Other global variables
164 # TODO: Move these to more apropriate sections.
167 RESTCONFPORT = "8181"
169 CONTAINER = "default"
170 PREFIX = ( # TODO: determine where this is used; create a better named variable
171 "http://" + ODL_SYSTEM_IP + ":" + PORT
173 USER = ( # TODO: who is using this? Can we make it more specific? (e.g. RESTCONF_USER)
178 AUTH = ["admin", "admin"]
180 HEADERS = {"Content-Type": "application/json"}
181 # FIXME: keep it as 'application/json' to make it work for both Bierman02
182 # and RFC8040 URLs. Change it to RFC8040 media type once RFC8040 migration
184 HEADERS_YANG_JSON = {"Content-Type": "application/json"}
185 HEADERS_XML = {"Content-Type": "application/xml"}
186 ACCEPT_XML = {"Accept": "application/xml"}
187 ACCEPT_JSON = {"Accept": "application/json"}
190 ) # Json should be default, but no-output RPC cannot have Accept header.
191 ODL_CONTROLLER_SESSION = None
197 CONTROLLER_STOP_TIMEOUT = (
198 120 # Max number of seconds test will wait for a controller to stop
200 TOPOLOGY_URL = "network-topology:network-topology/topology"
201 SEND_ACCEPT_XML_HEADERS = {
202 "Content-Type": "application/xml",
203 "Accept": "application/xml",
206 # Test deadlines global control
207 ENABLE_GLOBAL_TEST_DEADLINES = True
209 # Deprecated old variables, to be removed once all tests that need them are
210 # updated to use the new names.
211 CONTROLLER = ODL_SYSTEM_IP
212 CONTROLLERS = ["ODL_SYSTEM_1_IP", "ODL_SYSTEM_2_IP", "ODL_SYSTEM_3_IP"]
213 CONTROLLER_PASSWORD = ODL_SYSTEM_PASSWORD
214 CONTROLLER_PROMPT = ODL_SYSTEM_PROMPT
217 SET_CONFIGURATION_URI = "/restconf/operations/configuration:set-centinel-configurations"
218 GET_CONFIGURATION_URI = "/restconf/operational/configuration:configurationRecord/"
219 STREAMRECORD_CONFIG = "/restconf/config/stream:streamRecord"
220 SET_STREAMRECORD = "/restconf/operations/stream:set-stream"
221 ALERTFIELDCONTENTRULERECORD = "/restconf/config/alertrule:alertFieldContentRuleRecord/"
222 SET_ALERTFIELDCONTENTRULERECORD = (
223 "/restconf/operations/alertrule:set-alert-field-content-rule"
225 ALERTFIELDVALUERULERECORD = "/restconf/config/alertrule:alertFieldValueRuleRecord"
226 SET_ALERTFIELDVALUERULERECORD = (
227 "/restconf/operations/alertrule:set-alert-field-value-rule"
229 ALERTMESSAGECOUNTRULERECORD = "/restconf/config/alertrule:alertMessageCountRuleRecord/"
230 SET_ALERTMESSAGECOUNTRULERECORD = (
231 "/restconf/operations/alertrule:set-alert-message-count-rule"
233 GET_DASHBOARDRECORD = "/restconf/operational/dashboardrule:dashboardRecord/"
234 SET_DASHBOARDRECORD = "/restconf/operations/dashboardrule:set-dashboard"
235 DELETE_DASHBOARDRECORD = "/restconf/operations/dashboardrule:delete-dashboard"
236 SET_SUBSCRIBEUSER = "/restconf/operations/subscribe:subscribe-user"
237 SUBSCRIPTION = "/restconf/config/subscribe:subscription/"
239 # Elasticsearch Variables