From 04b34cc33c49f26a2b120edff80679edffdfd80b Mon Sep 17 00:00:00 2001 From: Vratko Polak Date: Fri, 30 Sep 2016 15:05:07 +0200 Subject: [PATCH] Introduce Variables.robot - Variables.py still present. + All variables copied to Variables.robot + Added descriptions, TODOs and FIXMEs. - Lot of FIXMEs require moving some variables to more specific Resources. Change-Id: Id4ec41aa68fff01d637893438c914d59e54318a2 Signed-off-by: Vratko Polak --- csit/variables/Variables.robot | 179 +++++++++++++++++++++++++++++++++ 1 file changed, 179 insertions(+) create mode 100644 csit/variables/Variables.robot diff --git a/csit/variables/Variables.robot b/csit/variables/Variables.robot new file mode 100644 index 0000000000..b7ff75599c --- /dev/null +++ b/csit/variables/Variables.robot @@ -0,0 +1,179 @@ +*** Settings *** +Documentation Resource consisting purely of variable definitions useful for multiple project suites. +... +... Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved. +... +... This program and the accompanying materials are made available under the +... terms of the Eclipse Public License v1.0 which accompanies this distribution, +... and is available at http://www.eclipse.org/legal/epl-v10.html +... +... +... These variables are considered global and immutable, so their names are in ALL_CAPS. +... +... If a variable is only specific to few projects, define it in csit/variables/{project}/Variables.robot file instead. +... If a variable only affects few Resources, define it in csit/libraries/{resource}.robot file instead. +... +... Please include a short comment on why the variable is useful and why particular value was chosen. +... Also a well-known variables provided by releng/builder script should be listed here, +... the value should be a reasonable default. +... +... Use ODL_SYSTEM instead of CONTROLLER and TOOLS_SYSTEM instead of MININET when referring to VMs. + +*** Variables *** +# Keep this list sorted alphabetically. +&{ACCEPT_EMPTY} # Empty accept header. ODL should send JSON data in this case. TODO: Hide into more specific Resource if possible. +&{ACCEPT_JSON} Accept=application/json # Header for accpeting JSON data. TODO: Hide into more specific Resource if possible. +&{ACCEPT_XML} Accept=application/xml # Header for accepting XML data. TODO: Hide into more specific Resource if possible. +${ALERTFIELDCONTENTRULERECORD} /restconf/config/alertrule:alertFieldContentRuleRecord/ # FIXME: Move to a separate Centinel-related Resource and add description. +${ALERTFIELDVALUERULERECORD} /restconf/config/alertrule:alertFieldValueRuleRecord # FIXME: Move to a separate Centinel-related Resource and add description. +${ALERTMESSAGECOUNTRULERECORD} /restconf/config/alertrule:alertMessageCountRuleRecord/ # FIXME: Move to a separate Centinel-related Resource and add description. +@{AUTH} admin admin # Authentication tuple for accessing ODL RESTCONF server. TODO: Migrate most suites to TemplatedRequests, then chose a more descriptive name. +${AUTH_TOKEN_API} /oauth2/token # FIXME: Move to a separate AAA-related Resource and add description. +${BASE_IP_1} 75.75.0.0 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${BASE_MAC_1} 00:4b:00:00:00:00 # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${BGP_TOOL_PORT} 17900 # Tool side of BGP communication listens on this port. +${BGPCEP_LOG_LEVEL} ${DEFAULT_BGPCEP_LOG_LEVEL} # Some suites temporarily override org.opendaylight.bgpcep Karaf log level to this value. +${CTRLS} controllers # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CTRLS_CREATE} controllers.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CONFIG_NODES_API} /restconf/config/opendaylight-inventory:nodes # FIXME: Move to a separate Resource and add description. +${CONFIG_TOPO_API} /restconf/config/network-topology:network-topology # FIXME: Move to a separate Resource and add description. +${CONFIG_API} /restconf/config # FIXME: Move to a separate Resource and add description. +${CONTAINER} default # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CONTROLLER} ${ODL_SYSTEM_IP} # Deprecated. FIXME: Eradicate. +${CONTROLLER_PASSWORD} ${ODL_SYSTEM_PASSWORD} # Deprecated. FIXME: Eradicate. +${CONTROLLER_PROMPT} ${ODL_SYSTEM_PROMPT} # Deprecated. FIXME: Eradicate. +${CONTROLLERS} ${ODL_SYSTEM_IP_LIST} # Deprecated. FIXME: Eradicate. +${CONTROLLER_CONFIG_MOUNT} /restconf/config/network-topology:network-topology/topology/topology-netconf/node/controller-config/yang-ext:mount # FIXME: Move to a separate Resource and add description. +${CONTROLLER_STOP_TIMEOUT} 120 # Max number of seconds test will wait for a controller to stop. FIXME: Hiden into a Resource and rename. +${CREATE_FULLYMESH_TOPOLOGY_FILE} create_fullymesh.py # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CREATE_FULLYMESH_TOPOLOGY_FILE_PATH} libraries/MininetTopo/${CREATE_FULLYMESH_TOPOLOGY_FILE} # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CREATE_PATHPOLICY_TOPOLOGY_FILE} topo-3sw-2host_multipath.py # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CREATE_PATHPOLICY_TOPOLOGY_FILE_PATH} MininetTopo/${CREATE_PATHPOLICY_TOPOLOGY_FILE} # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CREATE_VLAN_TOPOLOGY_FILE} vlan_vtn_test.py # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${CREATE_VLAN_TOPOLOGY_FILE_PATH} MininetTopo/${CREATE_VLAN_TOPOLOGY_FILE} # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${DEFAULT_LINUX_PROMPT} > # 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. +${DEFAULT_LINUX_PROMPT_STRICT} ]> # A more strict prompt substring, this only matches Bash prompt, not Mininet prompt. +${DEFAULT_BGPCEP_LOG_LEVEL} ${DEFAULT_ODL_LOG_LEVEL} # Fallback Karaf log level specific to org.opendaylight.bgpcep. +${DEFAULT_ODL_LOG_LEVEL} INFO # Some suites allow to change overall Karaf log level, this is the default value to set or fall back. +${DEFAULT_PASSWORD} ${EMPTY} # Generic *_SYSTEM linux password. If empty, SSHLibrary.Login_With_Public_Key is attempted instead of SSHLibrary.Login. TODO: Rename to DEFAULT_LINUX_PASSWORD. +${DEFAULT_PROTOCOL_LOG_LEVEL} ${DEFAULT_ODL_LOG_LEVEL} # Fallback Karaf log level specific to org.opendaylight.protocol. +${DEFAULT_USER} jenkins # 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". +${DEFAULT_TIMEOUT} 30s # Generic *_SYSTEM SSH.Login timeout. Some systems are slow to authenticate. +${DELETE_DASHBOARDRECORD} /restconf/operations/dashboardrule:delete-dashboard # FIXME: Move to a separate Centinel-related Resource and add description. +${ELASTICPORT} 9200 # Port to use when interacting with ElasticSearch. FIXME: Hide into a specific Resource. +${ENABLE_GLOBAL_TEST_DEADLINES} True # Some suites need this to avoid getting stuck. FIXME: Move to the Resource which uses this. +${ESCAPE_CHARACTER} \x1b # A more readable alias to the special escape character. +${FLOWFILTERENTRIES_CREATE} flowfilterentries.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${FLOWFILTERS} flowfilters/in +${FLOWFILTERS_CREATE} flowfilters.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${FLOWFILTERS_UPDATE} flowfilterentries +${FLOWLISTS} flowlists # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${FLOWLISTS_CREATE} flowlists.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${FLOWLISTENTRIES_CREATE} flowlistentries.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${GBP_BASE_ENDPOINTS_API} /restconf/operational/base-endpoint:endpoints # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${GBP_ENDPOINTS_API} /restconf/operational/endpoint:endpoints # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${GBP_REGEP_API} /restconf/operations/endpoint:register-endpoint # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${GBP_TENANTS_API} /restconf/config/policy:tenants # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${GBP_TUNNELS_API} /restconf/config/opendaylight-inventory:nodes # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${GBP_UNREGEP_API} /restconf/operations/endpoint:unregister-endpoint # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${GET_CONFIGURATION_URI} /restconf/operational/configuration:configurationRecord/ # FIXME: Move to a separate Centinel-related Resource and add description. +${GET_DASHBOARDRECORD} /restconf/operational/dashboardrule:dashboardRecord/ # FIXME: Move to a separate Centinel-related Resource and add description. +${GET_INTENTS_URI} /retconf/config/intent:intents # FIXME: Move to a separate Nemo-related Resource and add description. +&{HEADERS} Content-Type=application/json # Deprecated. Sometimes conflicts with argument name. TODO: Migrate most suites to TemplatedRequests, then chose a more descriptive name. +&{HEADERS_YANG_JSON} Content-Type=application/yang.data+json # Content type for JSON data, used to work around Requests auto-serialization. TODO: Hide into more specific Resource if possible. +&{HEADERS_XML} Content-Type=application/xml # Content type for XML data. TODO: Hide into more specific Resource if possible. +${KARAF_DETAILED_PROMPT} @${ESCAPE_CHARACTER}[0m${ESCAPE_CHARACTER}[34mroot${ESCAPE_CHARACTER}[0m> # Larger substring of Karaf prompt, shorter ones may result in false positives. +${KARAF_PASSWORD} karaf # Plaintext password to authenticate to Karaf console. +${KARAF_PROMPT} opendaylight-user # Simple and readable Karaf prompt substring. +${KARAF_SHELL_PORT} 8101 # ODL provides SSH access to Karaf consoleon this port. +${KARAF_USER} karaf # User name to authenticate to Karaf SSH console. +${KEYFILE_PASS} any # Implementation detail related to SSHLibrary.Login_With_Public_Key. TODO: Hide in SSHKeywords. +${LFM_RPC_API} /restconf/operations/odl-mappingservice # FIXME: Move to a separate LispFlowMapping-related Resource and add description. +${LFM_RPC_API_LI} /restconf/operations/lfm-mapping-database # FIXME: Move to a separate LispFlowMapping-related Resource and add description. +${LFM_SB_RPC_API} /restconf/operations/odl-lisp-sb # FIXME: Move to a separate LispFlowMapping-related Resource and add description. +${MODULES_API} /restconf/modules # FIXME: Move to a separate Resource and add description. +${NEUTRON_NB_API} /controller/nb/v2/neutron # FIXME: Move to a separate Neutron-related Resource and add description. +${NEUTRON_NETWORKS_API} ${NEUTRON_NB_API}/networks # FIXME: Move to a separate Neutron-related Resource and add description. +${NEUTRON_PORTS_API} ${NEUTRON_NB_API}/ports # FIXME: Move to a separate Neutron-related Resource and add description. +${NEUTRON_ROUTERS_API} ${NEUTRON_NB_API}/routers # FIXME: Move to a separate Neutron-related Resource and add description. +${ODL_BGP_PORT} 1790 # ODL side of BGP communication listens on this port number. +${ODL_CONTROLLER_SESSION} ${NONE} # Deprecated. Not clear if this refers to HTTP or SSH sessions. FIXME: Eradicate, or at least convert to a resource-private variable. +${ODL_NETCONF_CONFIG_PORT} 1830 # Port number ODL NETCONF server of Config Subsystem listens on. +${ODL_NETCONF_MDSAL_PORT} 2830 # Port number ODL NETCONF server of MD-SAL listens on. +${ODL_NETCONF_NAMESPACE} urn:ietf:params:xml:ns:netconf:base:1.0 # Namespace of standardized NETCONF elements. +${ODL_NETCONF_PASSWORD} ${ODL_RESTCONF_PASSWORD} # Both ODL Netconf servers require this password to authenticate. +${ODL_NETCONF_PROMPT} ]]>]]> # Standard prompt string for NETCONF protocol. +${ODL_NETCONF_USER} ${ODL_RESTCONF_USER} # Both ODL Netconf servers require this user name to authenticate. +${ODL_OF_PLUGIN} lithium # Codename of OpenFlowPlugin implementation ODL is configured to use. +${ODL_OF_PORT} 6633 # Port number ODL communicates using OpenFlow protocol on. +${ODL_RESTCONF_USER} admin # Username for basic HTTP authentication used by requests against ODL RESTCONF server. +${ODL_RESTCONF_PASSWORD} admin # Plaintext password for basic HTTP authentication used by requests against ODL RESTCONF server. +${ODL_SYSTEM_1_IP} 127.0.0.1 # IP address of system hosting member 1 od ODL cluster. +${ODL_SYSTEM_2_IP} 127.0.0.2 # IP address of system hosting member 2 od ODL cluster. +${ODL_SYSTEM_3_IP} 127.0.0.3 # IP address of system hosting member 3 od ODL cluster. +${ODL_SYSTEM_IP} ${ODL_SYSTEM_1_IP} # IP address of system hosting ODL for SSHLibrary to connect to. First node if ODL is a cluster. +@{ODL_SYSTEM_IP_LIST} ${ODL_SYSTEM_1_IP} ${ODL_SYSTEM_2_IP} ${ODL_SYSTEM_3_IP} # Deprecated. List of ODL cluster member IP addresses. See ClusterManagement.robot for alternatives. +${ODL_SYSTEM_USER} ${DEFAULT_USER} # Linux username specific for ODL systems. +${ODL_SYSTEM_PASSWORD} ${DEFAULT_PASSWORD} # Linux password (or empty to use public key) specific for ODL systems. +${ODL_SYSTEM_PROMPT} ${DEFAULT_PROMPT} # Bash prompt substring specific for ODL systems. +${OPERATIONAL_API} /restconf/operational # FIXME: Move to a separate Resource and add description. +${OPERATIONAL_GBP_TENANTS_API} /restconf/operational/policy:tenants # FIXME: Move to a separate GroupBasedPolicy-related Resource and add description. +${OPERATIONAL_NODES_API} /restconf/operational/opendaylight-inventory:nodes # FIXME: Move to a separate Resource and add description. +${OPERATIONAL_NODES_NETVIRT} /restconf/operational/network-topology:network-topology/topology/netvirt:1 \ # FIXME: Move to a separate Resource and add description. +${OPERATIONAL_TOPO_API} /restconf/operational/network-topology:network-topology # FIXME: Move to a separate Resource and add description. +${OS_SYSTEM_PROMPT} \$ # Prompt substring specific to OpenStack systems. +${OSREST} /v2.0/networks # FIXME: Move to a separate Neutron-related Resource and add description. +${OVSDBPORT} 6640 # Port number ODL uses for OVSDB protocol communication. TODO: Move to OVSDB-specific Resource. +${PASSWORD} ${DEFAULT_PASSWORD} # Deprecated. FIXME: Eradicate. +${PORTMAP_CREATE} portmap.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${PORT} 8080 # Deprecated. Generic HTTP port. FIXME: Eradicate. +${PORTS} ports/detail.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${PREDEFINE_CONNECTION_URI} /restconf/config/nemo-object:connection-definitions # FIXME: Move to a separate Nemo-related Resource and add description. +${PREDEFINE_NODE_URI} /restconf/config/nemo-object:node-definitions # FIXME: Move to a separate Nemo-related Resource and add description. +${PREDEFINE_ROLE_URI} /restconf/config/nemo-user:user-roles # FIXME: Move to a separate Nemo-related Resource and add description. +${PREFIX} http://${ODL_SYSTEM_IP}:${PORT} # Deprecated. FIXME: Name is to generic. Eradicate. +${PROTOCOL_LOG_LEVEL} ${DEFAULT_PROTOCOL_LOG_LEVEL} # Some suites temporarily override org.opendaylight.protocol Karaf log level to this value. +${PWD} ${ODL_RESTCONF_PESSWORD} # Deprecated. FIXME: Eradicate. +${REGISTER_TENANT_URI} /restconf/operations/nemo-intent:register-user # FIXME: Move to a separate Nemo-related Resource and add description. +${RESTCONFPORT} 8181 # Primary port for ODL RESTCONF, although 8080 should also work. +${RESTPORT} 8282 # Deprecated. Restconf port used by AD-SAL services. FIXME: Eradicate. +${REVOKE_TOKEN_API} /oauth2/revoke # FIXME: Move to a separate AAA-related Resource and add description. +${SCOPE} sdn # 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. +&{SEND_ACCEPT_XML_HEADERS} Content-Type=application/xml Accept=application/xml # Accept and Content type for XML data. TODO: Hide into more specific Resource if possible. +${SET_ALERTFIELDCONTENTRULERECORD} /restconf/operations/alertrule:set-alert-field-content-rule # FIXME: Move to a separate Centinel-related Resource and add description. +${SET_ALERTFIELDVALUERULERECORD} /restconf/operations/alertrule:set-alert-field-value-rule # FIXME: Move to a separate Centinel-related Resource and add description. +${SET_ALERTMESSAGECOUNTRULERECORD} /restconf/operations/alertrule:set-alert-message-count-rule # FIXME: Move to a separate Centinel-related Resource and add description. +${SET_CONFIGURATION_URI} /restconf/operations/configuration:set-centinel-configurations # FIXME: Move to a separate Centinel-related Resource and add description. +${SET_DASHBOARDRECORD} /restconf/operations/dashboardrule:set-dashboard # FIXME: Move to a separate Centinel-related Resource and add description. +${SET_STREAMRECORD} /restconf/operations/stream:set-stream # FIXME: Move to a separate Centinel-related Resource and add description. +${SET_SUBSCRIBEUSER} /restconf/operations/subscribe:subscribe-user # FIXME: Move to a separate Centinel-related Resource and add description. +${SSH_KEY} id_rsa # Implementation detail related to SSHLibrary.Login_With_Public_Key. TODO: Hide in SSHKeywords. +${STREAMRECORD_CONFIG} /restconf/config/stream:streamRecord # FIXME: Move to a separate Centinel-related Resource and add description. +${STRUCTURE_INTENT_URI} /restconf/operations/nemo-intent:structure-style-nemo-update # FIXME: Move to a separate Nemo-related Resource and add description. +${SUBSCRIPTION} /restconf/config/subscribe:subscription/ # FIXME: Move to a separate Centinel-related Resource and add description. +${SW} switches # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${TOOLS_SYSTEM_1_IP} 127.0.0.1 # IP address of first system hosting testing tools. +${TOOLS_SYSTEM_2_IP} 127.0.0.2 # IP address of second system hosting testing tools. +${TOOLS_SYSTEM_3_IP} 127.0.0.3 # IP address of third system hosting testing tools. +${TOOLS_SYSTEM_IP} ${TOOLS_SYSTEM_1_IP} # IP address of primary system hosting testing tools. +${TOOLS_SYSTEM_USER} ${DEFAULT_USER} # Linux user name specific for tools systems. +${TOOLS_SYSTEM_PASSWORD} ${DEFAULT_PASSWORD} # Linux password specific for tools systems. +${TOOLS_SYSTEM_PROMPT} ${DEFAULT_LINUX_PROMPT} # Bash prompt substring specific for tools systems. +${TOPO_TREE_DEPTH} 3 # Part of Mininet configuration? FIXME: Find who uses this and eliminate, or at least add a good description. +${TOPO_TREE_FANOUT} 2 # Part of Mininet configuration? FIXME: Find who uses this and eliminate, or at least add a good description. +${TOPO_TREE_LEVEL} 2 # Part of Mininet configuration? FIXME: Find who uses this and eliminate, or at least add a good description. +${TOPOLOGY_URL} network-topology:network-topology/topology # FIXME: Move to a separate Resource and add description. +${USER} ${ODL_RESTCONF_USER} # Deprecated. FIXME: Eradicate. +${VBRIFS} interfaces # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VBRIFS_CREATE} interfaces.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VBRS} vbridges # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VBRS_CREATE} vbridges.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VLANMAP_CREATE} vlanmaps.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VTNC} 127.0.0.1 # IP address where VTN Coordinator application is running. +&{VTNC_HEADERS} Content-Type=application/json username=admin password=adminpass # Dict of headers to use for HTTP requests against VTN Coordinator. +${VTNC_PREFIX} http://${VTNC}:${VTNCPORT} # Shorthand for composing HTTP requests. +${VTNCPORT} 8083 # Port number VTN Coordinator listens on. +${VTNS} vtns # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VTNS_CREATE} vtns.json # A shorthand. FIXME: Find who uses this and eliminate, or at least add a good description. +${VTNWEBAPI} /vtn-webapi # Directory part of URI used when sending HTTP requests to VTN Coordinator. +# Keep this list sorted alphabetically. -- 2.36.6