Small Fixes to the Openstack Keywords
[integration/test.git] / csit / variables / Variables.py
1 """
2 Definitions of common variables for the system test robot suites of the
3 OpenDaylight project.
4
5 Authors: Baohua Yang@IBM, Denghui Huang@IBM
6 Edited: Many times by many people
7 """
8
9 # VM Environment defaults
10 DEFAULT_LINUX_PROMPT = '>'
11 DEFAULT_LINUX_PROMPT_STRICT = ']>'
12 DEFAULT_USER = 'jenkins'
13 DEFAULT_TIMEOUT = '30s'
14
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
21
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
27
28 # KARAF Variables
29 KARAF_SHELL_PORT = '8101'
30 ESCAPE_CHARACTER = '\x1B'
31 KARAF_DETAILED_PROMPT = '@' + ESCAPE_CHARACTER + '[0m' + ESCAPE_CHARACTER + '[34mroot' + ESCAPE_CHARACTER + '[0m>'
32 KARAF_USER = 'karaf'
33 KARAF_PASSWORD = 'karaf'
34 KARAF_PROMPT = 'opendaylight-user'
35
36 # Logging levels
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
42
43 # BGP variables
44 ODL_BGP_PORT = '1790'
45 BGP_TOOL_PORT = '17900'
46
47 # Restconf variables
48 ODL_RESTCONF_USER = 'admin'
49 ODL_RESTCONF_PASSWORD = 'admin'
50
51 # Netconf variables
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'
58
59 # OpenFlow variables
60 ODL_OF_PLUGIN = 'lithium'
61
62 # VTN Coordinator Variables
63 VTNC = '127.0.0.1'
64 VTNCPORT = '8083'
65 VTNC_PREFIX = 'http://' + VTNC + ':' + VTNCPORT
66 VTNC_HEADERS = {'Content-Type': 'application/json',
67                 'username': 'admin', 'password': 'adminpass'}
68
69 VTNWEBAPI = '/vtn-webapi'
70 # controllers URL
71 CTRLS_CREATE = 'controllers.json'
72 CTRLS = 'controllers'
73 SW = 'switches'
74
75 # vtn URL
76 VTNS_CREATE = 'vtns.json'
77 VTNS = 'vtns'
78
79 # vbridge URL
80 VBRS_CREATE = 'vbridges.json'
81 VBRS = 'vbridges'
82
83 # interfaces URL
84 VBRIFS_CREATE = 'interfaces.json'
85 VBRIFS = 'interfaces'
86
87 # portmap URL
88 PORTMAP_CREATE = 'portmap.json'
89
90 # vlanmap URL
91 VLANMAP_CREATE = 'vlanmaps.json'
92
93 # ports URL
94 PORTS = 'ports/detail.json'
95
96 # flowlist URL
97 FLOWLISTS_CREATE = 'flowlists.json'
98
99 # flowlistentry_URL
100 FLOWLISTENTRIES_CREATE = 'flowlistentries.json'
101 FLOWLISTS = 'flowlists'
102
103 # flowfilter_URL
104 FLOWFILTERS_CREATE = 'flowfilters.json'
105 FLOWFILTERENTRIES_CREATE = 'flowfilterentries.json'
106 FLOWFILTERS = 'flowfilters/in'
107 FLOWFILTERS_UPDATE = 'flowfilterentries'
108
109
110 # Common APIs
111 CONFIG_NODES_API = '/restconf/config/opendaylight-inventory:nodes'
112 OPERATIONAL_NODES_API = '/restconf/operational/opendaylight-inventory:nodes'
113 OPERATIONAL_NODES_NETVIRT = '/restconf/operational/network-topology:network-topology/topology/netvirt:1'
114 OPERATIONAL_TOPO_API = '/restconf/operational/network-topology:' \
115                        'network-topology'
116 CONFIG_TOPO_API = '/restconf/config/network-topology:network-topology'
117 CONTROLLER_CONFIG_MOUNT = ('/restconf/config/network-topology:'
118                            'network-topology/topology'
119                            '/topology-netconf/node/'
120                            'controller-config/yang-ext:mount')
121 CONFIG_API = '/restconf/config'
122 OPERATIONAL_API = '/restconf/operational'
123 MODULES_API = '/restconf/modules'
124
125 # NEMO Variables
126 PREDEFINE_ROLE_URI = '/restconf/config/nemo-user:user-roles'
127 PREDEFINE_NODE_URI = '/restconf/config/nemo-object:node-definitions'
128 PREDEFINE_CONNECTION_URI = '/restconf/config/nemo-object:connection-definitions'
129 REGISTER_TENANT_URI = '/restconf/operations/nemo-intent:register-user'
130 STRUCTURE_INTENT_URI = '/restconf/operations/nemo-intent:structure-style-nemo-update'
131 GET_INTENTS_URI = '/retconf/config/intent:intents'
132
133 # TOKEN
134 AUTH_TOKEN_API = '/oauth2/token'
135 REVOKE_TOKEN_API = '/oauth2/revoke'
136
137 # Base Mininet Mac address. DPID of mininet switches will be derived from this.
138 BASE_MAC_1 = '00:4b:00:00:00:00'
139 # Base IP of mininet hosts
140 BASE_IP_1 = '75.75.0.0'
141
142 # Vlan Custom Topology Path and File
143 CREATE_VLAN_TOPOLOGY_FILE = "vlan_vtn_test.py"
144 CREATE_VLAN_TOPOLOGY_FILE_PATH = "MininetTopo/" +\
145                                  CREATE_VLAN_TOPOLOGY_FILE
146
147 # Mininet Custom Topology Path and File
148 CREATE_FULLYMESH_TOPOLOGY_FILE = "create_fullymesh.py"
149 CREATE_FULLYMESH_TOPOLOGY_FILE_PATH = "libraries/MininetTopo/" +\
150                                       CREATE_FULLYMESH_TOPOLOGY_FILE
151
152 # Mininet Custom Topology Path and File for Path Policy
153 CREATE_PATHPOLICY_TOPOLOGY_FILE = "topo-3sw-2host_multipath.py"
154 CREATE_PATHPOLICY_TOPOLOGY_FILE_PATH = "MininetTopo/" +\
155                                        CREATE_PATHPOLICY_TOPOLOGY_FILE
156
157 GBP_REGEP_API = "/restconf/operations/endpoint:register-endpoint"
158 GBP_UNREGEP_API = "/restconf/operations/endpoint:unregister-endpoint"
159 GBP_ENDPOINTS_API = "/restconf/operational/endpoint:endpoints"
160 GBP_BASE_ENDPOINTS_API = "/restconf/operational/base-endpoint:endpoints"
161 GBP_TENANTS_API = "/restconf/config/policy:tenants"
162 OPERATIONAL_GBP_TENANTS_API = "/restconf/operational/policy:tenants"
163 GBP_TUNNELS_API = "/restconf/config/opendaylight-inventory:nodes"
164
165 # LISP Flow Mapping variables
166 LFM_RPC_API = "/restconf/operations/odl-mappingservice"
167 LFM_RPC_API_LI = "/restconf/operations/lfm-mapping-database"
168 LFM_SB_RPC_API = "/restconf/operations/odl-lisp-sb"
169
170 # Neutron
171 NEUTRON_NB_API = '/controller/nb/v2/neutron'
172 NEUTRON_NETWORKS_API = NEUTRON_NB_API + '/' + 'networks'
173 NEUTRON_ROUTERS_API = NEUTRON_NB_API + '/' + 'routers'
174 OSREST = '/v2.0/networks'
175 KARAF_HOME = '${WORKSPACE}${/}${BUNDLEFOLDER}'
176
177 # Openstack System Prompt
178 OS_SYSTEM_PROMPT = '$'
179
180 # Other global variables
181 # TODO: Move these to more apropriate sections.
182 PORT = '8080'
183 RESTPORT = '8282'
184 RESTCONFPORT = '8181'
185 OVSDBPORT = '6640'
186 CONTAINER = 'default'
187 PREFIX = 'http://' + ODL_SYSTEM_IP + ':' + PORT  # TODO: determine where this is used; create a better named variable
188 USER = 'admin'  # TODO: who is using this?  Can we make it more specific? (e.g.  RESTCONF_USER)
189 PWD = 'admin'
190 PASSWORD = 'EMPTY'
191 AUTH = [u'admin', u'admin']
192 SCOPE = 'sdn'
193 HEADERS = {'Content-Type': 'application/json'}
194 HEADERS_YANG_JSON = {'Content-Type': 'application/yang.data+json'}
195 HEADERS_XML = {'Content-Type': 'application/xml'}
196 ACCEPT_XML = {'Accept': 'application/xml'}
197 ACCEPT_JSON = {'Accept': 'application/json'}
198 ACCEPT_EMPTY = {}  # Json should be default, but no-output RPC cannot have Accept header.
199 ODL_CONTROLLER_SESSION = None
200 TOPO_TREE_LEVEL = 2
201 TOPO_TREE_DEPTH = 3
202 TOPO_TREE_FANOUT = 2
203 KEYFILE_PASS = 'any'
204 SSH_KEY = 'id_rsa'
205 CONTROLLER_STOP_TIMEOUT = 120  # Max number of seconds test will wait for a controller to stop
206 TOPOLOGY_URL = 'network-topology:network-topology/topology'
207 SEND_ACCEPT_XML_HEADERS = {'Content-Type': 'application/xml', 'Accept': 'application/xml'}
208
209 # Test deadlines global control
210 ENABLE_GLOBAL_TEST_DEADLINES = True
211
212 # Deprecated old variables, to be removed once all tests that need them are
213 # updated to use the new names.
214 CONTROLLER = ODL_SYSTEM_IP
215 CONTROLLERS = ['ODL_SYSTEM_1_IP', 'ODL_SYSTEM_2_IP', 'ODL_SYSTEM_3_IP']
216 CONTROLLER_PASSWORD = ODL_SYSTEM_PASSWORD
217 CONTROLLER_PROMPT = ODL_SYSTEM_PROMPT
218
219 # Centinel Variables
220 SET_CONFIGURATION_URI = '/restconf/operations/configuration:set-centinel-configurations'
221 GET_CONFIGURATION_URI = '/restconf/operational/configuration:configurationRecord/'
222 STREAMRECORD_CONFIG = '/restconf/config/stream:streamRecord'
223 SET_STREAMRECORD = '/restconf/operations/stream:set-stream'
224 ALERTFIELDCONTENTRULERECORD = '/restconf/config/alertrule:alertFieldContentRuleRecord/'
225 SET_ALERTFIELDCONTENTRULERECORD = '/restconf/operations/alertrule:set-alert-field-content-rule'
226 ALERTFIELDVALUERULERECORD = '/restconf/config/alertrule:alertFieldValueRuleRecord'
227 SET_ALERTFIELDVALUERULERECORD = '/restconf/operations/alertrule:set-alert-field-value-rule'
228 ALERTMESSAGECOUNTRULERECORD = '/restconf/config/alertrule:alertMessageCountRuleRecord/'
229 SET_ALERTMESSAGECOUNTRULERECORD = '/restconf/operations/alertrule:set-alert-message-count-rule'
230 GET_DASHBOARDRECORD = '/restconf/operational/dashboardrule:dashboardRecord/'
231 SET_DASHBOARDRECORD = '/restconf/operations/dashboardrule:set-dashboard'
232 DELETE_DASHBOARDRECORD = '/restconf/operations/dashboardrule:delete-dashboard'
233 SET_SUBSCRIBEUSER = '/restconf/operations/subscribe:subscribe-user'
234 SUBSCRIPTION = '/restconf/config/subscribe:subscription/'
235
236 # Elasticsearch Variables
237 ELASTICPORT = 9200