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"
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 GBP_REGEP_API = "/restconf/operations/endpoint:register-endpoint"
151 GBP_UNREGEP_API = "/restconf/operations/endpoint:unregister-endpoint"
152 GBP_ENDPOINTS_API = "/restconf/operational/endpoint:endpoints"
153 GBP_BASE_ENDPOINTS_API = "/restconf/operational/base-endpoint:endpoints"
154 GBP_TENANTS_API = "/restconf/config/policy:tenants"
155 OPERATIONAL_GBP_TENANTS_API = "/restconf/operational/policy:tenants"
156 GBP_TUNNELS_API = "/restconf/config/opendaylight-inventory:nodes"
158 # LISP Flow Mapping variables
159 LFM_RPC_API = "/restconf/operations/odl-mappingservice"
160 LFM_RPC_API_LI = "/restconf/operations/lfm-mapping-database"
161 LFM_SB_RPC_API = "/restconf/operations/odl-lisp-sb"
164 NEUTRON_NB_API = "/controller/nb/v2/neutron"
165 NEUTRON_NETWORKS_API = NEUTRON_NB_API + "/" + "networks"
166 NEUTRON_SUBNETS_API = NEUTRON_NB_API + "/" + "subnets"
167 NEUTRON_PORTS_API = NEUTRON_NB_API + "/" + "ports"
168 NEUTRON_ROUTERS_API = NEUTRON_NB_API + "/" + "routers"
169 OSREST = "/v2.0/networks"
171 # Other global variables
172 # TODO: Move these to more apropriate sections.
175 RESTCONFPORT = "8181"
177 CONTAINER = "default"
178 PREFIX = ( # TODO: determine where this is used; create a better named variable
179 "http://" + ODL_SYSTEM_IP + ":" + PORT
181 USER = ( # TODO: who is using this? Can we make it more specific? (e.g. RESTCONF_USER)
186 AUTH = ["admin", "admin"]
188 HEADERS = {"Content-Type": "application/json"}
189 # FIXME: keep it as 'application/json' to make it work for both Bierman02
190 # and RFC8040 URLs. Change it to RFC8040 media type once RFC8040 migration
192 HEADERS_YANG_JSON = {"Content-Type": "application/json"}
193 HEADERS_XML = {"Content-Type": "application/xml"}
194 ACCEPT_XML = {"Accept": "application/xml"}
195 ACCEPT_JSON = {"Accept": "application/json"}
198 ) # Json should be default, but no-output RPC cannot have Accept header.
199 ODL_CONTROLLER_SESSION = None
205 CONTROLLER_STOP_TIMEOUT = (
206 120 # Max number of seconds test will wait for a controller to stop
208 TOPOLOGY_URL = "network-topology:network-topology/topology"
209 SEND_ACCEPT_XML_HEADERS = {
210 "Content-Type": "application/xml",
211 "Accept": "application/xml",
214 # Test deadlines global control
215 ENABLE_GLOBAL_TEST_DEADLINES = True
217 # Deprecated old variables, to be removed once all tests that need them are
218 # updated to use the new names.
219 CONTROLLER = ODL_SYSTEM_IP
220 CONTROLLERS = ["ODL_SYSTEM_1_IP", "ODL_SYSTEM_2_IP", "ODL_SYSTEM_3_IP"]
221 CONTROLLER_PASSWORD = ODL_SYSTEM_PASSWORD
222 CONTROLLER_PROMPT = ODL_SYSTEM_PROMPT
225 SET_CONFIGURATION_URI = "/restconf/operations/configuration:set-centinel-configurations"
226 GET_CONFIGURATION_URI = "/restconf/operational/configuration:configurationRecord/"
227 STREAMRECORD_CONFIG = "/restconf/config/stream:streamRecord"
228 SET_STREAMRECORD = "/restconf/operations/stream:set-stream"
229 ALERTFIELDCONTENTRULERECORD = "/restconf/config/alertrule:alertFieldContentRuleRecord/"
230 SET_ALERTFIELDCONTENTRULERECORD = (
231 "/restconf/operations/alertrule:set-alert-field-content-rule"
233 ALERTFIELDVALUERULERECORD = "/restconf/config/alertrule:alertFieldValueRuleRecord"
234 SET_ALERTFIELDVALUERULERECORD = (
235 "/restconf/operations/alertrule:set-alert-field-value-rule"
237 ALERTMESSAGECOUNTRULERECORD = "/restconf/config/alertrule:alertMessageCountRuleRecord/"
238 SET_ALERTMESSAGECOUNTRULERECORD = (
239 "/restconf/operations/alertrule:set-alert-message-count-rule"
241 GET_DASHBOARDRECORD = "/restconf/operational/dashboardrule:dashboardRecord/"
242 SET_DASHBOARDRECORD = "/restconf/operations/dashboardrule:set-dashboard"
243 DELETE_DASHBOARDRECORD = "/restconf/operations/dashboardrule:delete-dashboard"
244 SET_SUBSCRIBEUSER = "/restconf/operations/subscribe:subscribe-user"
245 SUBSCRIPTION = "/restconf/config/subscribe:subscription/"
247 # Elasticsearch Variables