${rand} 8 [NUMBERS] Generates a string with a desired ``length`` from the given ``chars``. ${rand} = 22858268 ${vim_name} SEPARATOR=_ ${vim_name_prefix} ${rand} Catenates the given items together and returns the resulted string. Variable '${vim_name_prefix}' not found. ${vim_name} Makes a variable available everywhere within the scope of the current suite. ${created_vim_account_id} ${vim_name} ${vim_user} ${vim_password} ${vim_auth_url} ${vim_tenant} ${vim_account_type} Create a VIM Target in OSM. The optional parameters (such as 'config' or 'sdn_controller') are given to this function in name=value format. These parameters will be appended to the 'osm vim-create' command with the next syntax: --param_name=param_value Return the ID of the created VIM Target. Example of execution: ${vim_account_id}= Create VIM Target ${vim_name} ${vim_user} ${vim_password} ${vim_auth_url} ${vim_tenant} ${vim_account_type} config='{...}' ${created_vim_account_id} Makes a variable available everywhere within the scope of the current suite. ${vim_name} ${prometheus_host} ${prometheus_port} Create a VIM Target only with the mandatory parameters. Checks the status of the VIM in Prometheus after it creation. regression sanity vim Variable '${vim_name_prefix}' not found. ${vim_account_id} ${vim_name} Variable '${vim_name}' not found. ${vim_account_id} ${created_vim_account_id} Fails if objects are unequal after converting them to strings. ${vim_name} Delete the VIM Target created in previous test-case by its name. Checks whether the VIM Target was created or not before perform the deletion. cleanup regression sanity vim Variable '${vim_name}' not found. ${rand} 8 [NUMBERS] Generates a string with a desired ``length`` from the given ``chars``. ${rand} = 12641189 ${vim_name} SEPARATOR=_ ${vim_name_prefix} ${rand} Catenates the given items together and returns the resulted string. Variable '${vim_name_prefix}' not found. ${vim_name} Makes a variable available everywhere within the scope of the current suite. ${created_vim_account_id} ${vim_name} ${vim_user} ${vim_password} ${vim_auth_url} ${vim_tenant} ${vim_account_type} config=${vim_config} Create a VIM Target in OSM. The optional parameters (such as 'config' or 'sdn_controller') are given to this function in name=value format. These parameters will be appended to the 'osm vim-create' command with the next syntax: --param_name=param_value Return the ID of the created VIM Target. Example of execution: ${vim_account_id}= Create VIM Target ${vim_name} ${vim_user} ${vim_password} ${vim_auth_url} ${vim_tenant} ${vim_account_type} config='{...}' ${created_vim_account_id} Makes a variable available everywhere within the scope of the current suite. ${vim_name} ${prometheus_host} ${prometheus_port} Create a VIM Target using the extra parameter 'config'. Checks the status of the VIM in Prometheus after it creation. regression sanity vim Variable '${vim_name_prefix}' not found. ${vim_account_id} ${vim_name} Variable '${vim_name}' not found. ${vim_account_id} ${created_vim_account_id} Fails if objects are unequal after converting them to strings. ${vim_account_id} Delete the VIM Target created in previous test-case by its ID. Checks whether the VIM Target was created or not before perform the deletion. cleanup regression sanity vim Variable '${vim_name}' not found. [BASIC-01] CRUD operations on VIM targets. All tests will be performed over an Openstack VIM, and the credentials will be loaded from clouds.yaml file. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/ubuntu_cloudinit_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/ubuntu_cloudinit_vnf Base directory: /robot-systest/osm-packages/ubuntu_cloudinit_vnf 1 Descriptors found to validate Validation OK List of charms in the... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/ubuntu_cloudinit_vnf Base directory: /robot-systest/osm-packages/ubuntu_cloudinit_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: ubuntu_cloudinit_vnf Package created: /robot-systest/osm-packages/ubuntu_cloudinit_vnf.tar.gz Uploading package /robot-systest/osm-packages/ubuntu_cloudinit_vnf.tar.gz e58b2e57-2b25-4c5b-ae2a-acfbb68b74dc ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = e58b2e57-2b25-4c5b-ae2a-acfbb68b74dc instantiation_params regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/ubuntu_cloudinit_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/ubuntu_cloudinit_ns Base directory: /robot-systest/osm-packages/ubuntu_cloudinit_ns 1 Descriptors found to validate Validation OK List of charms in the d... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/ubuntu_cloudinit_ns Base directory: /robot-systest/osm-packages/ubuntu_cloudinit_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: ubuntu_cloudinit_ns Package created: /robot-systest/osm-packages/ubuntu_cloudinit_ns.tar.gz 20fc97e4-1463-44b2-b89c-f70000e8ae17 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 20fc97e4-1463-44b2-b89c-f70000e8ae17 instantiation_params regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${EMPTY} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ], additionalParamsForVnf: [ { member-vnf-index: "1", additionalParams: { password: "newpassword" } } ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name basic_05_instantiation_params_cloud_init --nsd_name ubuntu_cloudinit-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ], additionalParamsForVnf: [ { member-vnf-index: "1", additionalParams: { password: "newpassword" } } ] }' 2>&1'. ${rc} = 0 ${stdout} = 646248ee-352f-4019-ab74-822209f75269 ${stdout} Logs the given message with the given level. 646248ee-352f-4019-ab74-822209f75269 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 646248ee-352f-4019-ab74-822209f75269 ${ns_id} Logs the given message with the given level. 646248ee-352f-4019-ab74-822209f75269 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_05_instantiation_params_cloud_init" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instanc... ${stdout} Logs the given message with the given level. +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_05_instantiation_params_cloud_init" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instanc... ${stdout} Logs the given message with the given level. +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_05_instantiation_params_cloud_init" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instanc... ${stdout} Logs the given message with the given level. +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_05_instantiation_params_cloud_init" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instanc... ${stdout} Logs the given message with the given level. +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | BUILDING | INSTANTIATING (ff838f84-94e5-45a1-b378-ef63dc545867) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_05_instantiation_params_cloud_init" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id... ${stdout} Logs the given message with the given level. +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | READY | IDLE (None) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_05_instantiation_params_cloud_init" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id... ${stdout} Logs the given message with the given level. +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_05_instantiation_params_cloud_init | 646248ee-352f-4019-ab74-822209f75269 | 2021-04-25T02:29:58 | READY | IDLE (None) | N/A | +------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 646248ee-352f-4019-ab74-822209f75269 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 646248ee-352f-4019-ab74-822209f75269 Instantiates the NS using the instantiation parameter 'additionalParamsForVnf' to change the password of the default user. instantiation_params regression sanity ${ip_addr} ${ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep 646248ee-352f-4019-ab74-822209f75269 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.102 ${stdout} Logs the given message with the given level. 172.21.248.102 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.102 ${ip_addr} Logs the given message with the given level. 172.21.248.102 ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${vnf_ip_addr} = 172.21.248.102 instantiation_params regression sanity ${vnf_ip_addr} msg=IP address of the management VNF is not available Fails unless the given variable exists within the current scope. 30s Waiting ssh daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting ssh daemon to be up ${vnf_ip_addr} ${username} ${new_password} ${EMPTY} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${password} Logs into the SSH server with the given ``username`` and ``password``. Logging into '172.21.248.102:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-05-instantiation-params-cloud-init-1-ubuntu-cloudinit-vnf:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. Test SSH access with the new password configured via cloud-init. instantiation_params regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete basic_05_instantiation_params_cloud_init 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_05_instantiation_params_cloud_init 2>&1'. ${rc} = 0 ${stdout} = basic_05_instantiation_params_cloud_init ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_05_instantiation_params_cloud_init == basic_05_instantiation_params_cloud_init ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_05_instantiation_params_cloud_init 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup instantiation_params regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete ubuntu_cloudinit-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep ubuntu_cloudinit-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup instantiation_params regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete ubuntu_cloudinit-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep ubuntu_cloudinit-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup instantiation_params regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [BASIC-05] Instantiation parameters in cloud-init. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_proxycharm_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_proxycharm_vnf Base directory: /robot-systest/osm-packages/hackfest_proxycharm_vnf 1 Descriptors found to validate Validation OK List of charms ... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_proxycharm_vnf Base directory: /robot-systest/osm-packages/hackfest_proxycharm_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: ['simple'] Adding File: hackfest_proxycharm_vnf Package created: /robot-systest/osm-packages/hackfest_proxycharm_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_proxycharm_vnf.tar.gz 15b51fc6-379b-42cb-9aff-50d4016aacf0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 15b51fc6-379b-42cb-9aff-50d4016aacf0 charm regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_proxycharm_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_proxycharm_ns Base directory: /robot-systest/osm-packages/hackfest_proxycharm_ns 1 Descriptors found to validate Validation OK List of charms in... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_proxycharm_ns Base directory: /robot-systest/osm-packages/hackfest_proxycharm_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_proxycharm_ns Package created: /robot-systest/osm-packages/hackfest_proxycharm_ns.tar.gz be02351d-6a3c-4a45-99c4-5c1689c2c0c5 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = be02351d-6a3c-4a45-99c4-5c1689c2c0c5 charm regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${ns_timeout} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name basic_06_charm_test --nsd_name hackfest_proxycharm-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = 992d6b49-02f2-4444-a9c9-52fc61912ba5 ${stdout} Logs the given message with the given level. 992d6b49-02f2-4444-a9c9-52fc61912ba5 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 992d6b49-02f2-4444-a9c9-52fc61912ba5 ${ns_id} Logs the given message with the given level. 992d6b49-02f2-4444-a9c9-52fc61912ba5 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | BUILDING | INSTANTIATING (afb28649-0813-41d5-9687-2108ab59b964) | N/A | +---------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | READY | IDLE (None) | N/A | +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_06_charm_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_06_charm_test | 992d6b49-02f2-4444-a9c9-52fc61912ba5 | 2021-04-25T02:33:11 | READY | IDLE (None) | N/A | +---------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 992d6b49-02f2-4444-a9c9-52fc61912ba5 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 992d6b49-02f2-4444-a9c9-52fc61912ba5 charm regression sanity ${ip_addr_1} ${ns_id} ${vnf_member_index_1} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep 992d6b49-02f2-4444-a9c9-52fc61912ba5 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.232 ${stdout} Logs the given message with the given level. 172.21.248.232 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr_1} = 172.21.248.232 ${ip_addr_1} Logs the given message with the given level. 172.21.248.232 ${vnf_1_ip_addr} ${ip_addr_1} Makes a variable available everywhere within the scope of the current suite. ${vnf_1_ip_addr} = 172.21.248.232 ${ip_addr_2} ${ns_id} ${vnf_member_index_2} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=2 | grep 992d6b49-02f2-4444-a9c9-52fc61912ba5 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.224 ${stdout} Logs the given message with the given level. 172.21.248.224 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr_2} = 172.21.248.224 ${ip_addr_2} Logs the given message with the given level. 172.21.248.224 ${vnf_2_ip_addr} ${ip_addr_2} Makes a variable available everywhere within the scope of the current suite. ${vnf_2_ip_addr} = 172.21.248.224 charm regression sanity ${vnf_1_ip_addr} msg=IP address of the management VNF '${vnf_member_index_1}' is not available Fails unless the given variable exists within the current scope. ${vnf_2_ip_addr} msg=IP address of the management VNF '${vnf_member_index_2}' is not available Fails unless the given variable exists within the current scope. 30s Waiting ssh daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting ssh daemon to be up ${vnf_1_ip_addr} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.232:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 02:37:14 2021 from 172.21.248.237 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-06-charm-test-1-mgmtvm-1:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. ${vnf_2_ip_addr} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.224:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 02:37:11 2021 from 172.21.248.237 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-06-charm-test-2-mgmtvm-1:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. charm regression sanity ${vnf_1_ip_addr} ${username} ${password} ${privatekey} ${day_1_file_name} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.232:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 02:37:56 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-06-charm-test-1-mgmtvm-1:~$ ${rc} ls ${file} >& /dev/null return_stdout=False return_rc=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ls /home/ubuntu/first-touch >& /dev/null'. Command exited with return code 0. ${rc} = 0 Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${vnf_2_ip_addr} ${username} ${password} ${privatekey} ${day_1_file_name} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.224:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 02:37:58 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-06-charm-test-2-mgmtvm-1:~$ ${rc} ls ${file} >& /dev/null return_stdout=False return_rc=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ls /home/ubuntu/first-touch >& /dev/null'. Command exited with return code 0. ${rc} = 0 Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> The Charm VNF has a Day 1 operation that creates a file named /home/ubuntu/first-touch. This test checks whether that files have been created or not. charm regression sanity ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. ${ns_op_id_1} ${ns_name} ${action_name} ${vnf_member_index_1} filename=${day_2_file_name_1} Execute an action over the desired NS. Parameters are given to this function in key=value format (one argument per key/value pair). Return the ID of the operation associated to the executed action. Examples of execution: ${ns_op_id}= Execute NS Action ${ns_name} ${ns_action} ${vnf_member_index} ${ns_op_id}= Execute NS Action ${ns_name} ${ns_action} ${vnf_member_index} ${param1}=${value1} ${param2}=${value2} ${params} ${EMPTY} Returns the given values which can then be assigned to a variables. ${params} = ${param} @{action_params} filename=/home/ubuntu/mytouch1 ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = filename=/home/ubuntu/mytouch1 ${param_name} = filename ${param_value} = /home/ubuntu/mytouch1 ${params} SEPARATOR= ${params} "${param_name}":"${param_value}", Catenates the given items together and returns the resulted string. ${params} = "filename":"/home/ubuntu/mytouch1", ${osm_ns_action_command} osm ns-action --action_name ${ns_action} --vnf_name ${vnf_member_index} Returns the given values which can then be assigned to a variables. ${osm_ns_action_command} = osm ns-action --action_name touch --vnf_name 1 ${osm_ns_action_command} '${params}'!='${EMPTY}' Catenate ${osm_ns_action_command} --params '{${params}}' ELSE Set Variable ${osm_ns_action_command} Runs the given keyword with the given arguments, if ``condition`` is true. ${osm_ns_action_command} --params '{${params}}' Catenates the given items together and returns the resulted string. ${osm_ns_action_command} = osm ns-action --action_name touch --vnf_name 1 --params '{"filename":"/home/ubuntu/mytouch1",}' ${osm_ns_action_command} ${osm_ns_action_command} ${ns_name} Catenates the given items together and returns the resulted string. ${osm_ns_action_command} = osm ns-action --action_name touch --vnf_name 1 --params '{"filename":"/home/ubuntu/mytouch1",}' basic_06_charm_test ${rc} ${stdout} ${osm_ns_action_command} Runs the given command in the system and returns the RC and output. Running command 'osm ns-action --action_name touch --vnf_name 1 --params '{"filename":"/home/ubuntu/mytouch1",}' basic_06_charm_test 2>&1'. ${rc} = 0 ${stdout} = edc01eab-045a-4b0b-962e-a18965fddb08 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_action_max_wait_time} ${ns_action_pol_time} Check For NS Operation Completed ${stdout} Runs the specified keyword and retries if it fails. ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show edc01eab-045a-4b0b-962e-a18965fddb08 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id edc01eab-045a-4b0b-962e-a18965fddb08 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show edc01eab-045a-4b0b-962e-a18965fddb08 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = COMPLETED ${stdout} Logs the given message with the given level. COMPLETED ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. ${ns_op_id_1} = edc01eab-045a-4b0b-962e-a18965fddb08 ${ns_op_id_2} ${ns_name} ${action_name} ${vnf_member_index_2} filename=${day_2_file_name_2} Execute an action over the desired NS. Parameters are given to this function in key=value format (one argument per key/value pair). Return the ID of the operation associated to the executed action. Examples of execution: ${ns_op_id}= Execute NS Action ${ns_name} ${ns_action} ${vnf_member_index} ${ns_op_id}= Execute NS Action ${ns_name} ${ns_action} ${vnf_member_index} ${param1}=${value1} ${param2}=${value2} ${params} ${EMPTY} Returns the given values which can then be assigned to a variables. ${params} = ${param} @{action_params} filename=/home/ubuntu/mytouch2 ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = filename=/home/ubuntu/mytouch2 ${param_name} = filename ${param_value} = /home/ubuntu/mytouch2 ${params} SEPARATOR= ${params} "${param_name}":"${param_value}", Catenates the given items together and returns the resulted string. ${params} = "filename":"/home/ubuntu/mytouch2", ${osm_ns_action_command} osm ns-action --action_name ${ns_action} --vnf_name ${vnf_member_index} Returns the given values which can then be assigned to a variables. ${osm_ns_action_command} = osm ns-action --action_name touch --vnf_name 2 ${osm_ns_action_command} '${params}'!='${EMPTY}' Catenate ${osm_ns_action_command} --params '{${params}}' ELSE Set Variable ${osm_ns_action_command} Runs the given keyword with the given arguments, if ``condition`` is true. ${osm_ns_action_command} --params '{${params}}' Catenates the given items together and returns the resulted string. ${osm_ns_action_command} = osm ns-action --action_name touch --vnf_name 2 --params '{"filename":"/home/ubuntu/mytouch2",}' ${osm_ns_action_command} ${osm_ns_action_command} ${ns_name} Catenates the given items together and returns the resulted string. ${osm_ns_action_command} = osm ns-action --action_name touch --vnf_name 2 --params '{"filename":"/home/ubuntu/mytouch2",}' basic_06_charm_test ${rc} ${stdout} ${osm_ns_action_command} Runs the given command in the system and returns the RC and output. Running command 'osm ns-action --action_name touch --vnf_name 2 --params '{"filename":"/home/ubuntu/mytouch2",}' basic_06_charm_test 2>&1'. ${rc} = 0 ${stdout} = 6d49f5e4-4eca-417f-a672-31a5971868b9 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_action_max_wait_time} ${ns_action_pol_time} Check For NS Operation Completed ${stdout} Runs the specified keyword and retries if it fails. ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 6d49f5e4-4eca-417f-a672-31a5971868b9 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 6d49f5e4-4eca-417f-a672-31a5971868b9 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 6d49f5e4-4eca-417f-a672-31a5971868b9 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = COMPLETED ${stdout} Logs the given message with the given level. COMPLETED ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. ${ns_op_id_2} = 6d49f5e4-4eca-417f-a672-31a5971868b9 Performs one Day 2 operation per VNF that creates a new file. charm regression sanity ${vnf_1_ip_addr} ${username} ${password} ${privatekey} ${day_2_file_name_1} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.232:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 02:38:07 2021 from 172.21.248.237 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-06-charm-test-1-mgmtvm-1:~$ ${rc} ls ${file} >& /dev/null return_stdout=False return_rc=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ls /home/ubuntu/mytouch1 >& /dev/null'. Command exited with return code 0. ${rc} = 0 Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${vnf_2_ip_addr} ${username} ${password} ${privatekey} ${day_2_file_name_2} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.224:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 02:38:28 2021 from 172.21.248.237 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@basic-06-charm-test-2-mgmtvm-1:~$ ${rc} ls ${file} >& /dev/null return_stdout=False return_rc=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ls /home/ubuntu/mytouch2 >& /dev/null'. Command exited with return code 0. ${rc} = 0 Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> Check whether the files created in the previous test via Day 2 operations exist or not. charm regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete basic_06_charm_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_06_charm_test 2>&1'. ${rc} = 0 ${stdout} = basic_06_charm_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_06_charm_test == basic_06_charm_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_06_charm_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. charm cleanup regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_proxycharm-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_proxycharm-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. charm cleanup regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_proxycharm-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_proxycharm-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. charm cleanup regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [BASIC-06] VNF with Charm. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/simple_nopasswd_vnf' 2>&1'. ${rc} = 0 ${stdout} = /robot-systest/osm-packages/simple_nopasswd_vnf/charms/layers/simple build: The lockfile /robot-systest/osm-packages/simple_nopasswd_vnf/charms/layers/simple/build.lock was not found; building using l... ${stdout} Logs the given message with the given level. /robot-systest/osm-packages/simple_nopasswd_vnf/charms/layers/simple build: The lockfile /robot-systest/osm-packages/simple_nopasswd_vnf/charms/layers/simple/build.lock was not found; building using latest versions. build: Please add a `repo` key to your layer.yaml, with a url from which your layer can be cloned. build: Destination charm directory: /robot-systest/osm-packages/simple_nopasswd_vnf/charms/builds/simple build: Processing layer: layer:options build: Processing layer: layer:basic build: Processing layer: layer:sshproxy build: Processing layer: layer:vnfproxy build: Processing layer: simple (from osm-packages/simple_nopasswd_vnf/charms/layers/simple) build: build: --------------------------------------- build: Build Report build: --------------------------------------- build: New build; all files were modified. proof: I: `display-name` not provided, add for custom naming in the UI proof: W: Includes template README.ex file proof: W: README.ex includes boilerplate: Step by step instructions on using the charm: proof: W: README.ex includes boilerplate: You can then browse to http://ip-address to configure the service. proof: W: README.ex includes boilerplate: - Upstream mailing list or contact information proof: W: README.ex includes boilerplate: - Feel free to add things if it's useful for users proof: I: all charms should provide at least one thing Validating package /robot-systest/osm-packages/simple_nopasswd_vnf Base directory: /robot-systest/osm-packages/simple_nopasswd_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: ['simple'] Building charm /robot-systest/osm-packages/simple_nopasswd_vnf/charms/layers/simple Charm built: simple Adding File: simple_nopasswd_vnf Package created: /robot-systest/osm-packages/simple_nopasswd_vnf.tar.gz Uploading package /robot-systest/osm-packages/simple_nopasswd_vnf.tar.gz 31e4bdb6-eb4d-4ca1-8871-0a57e86dfc45 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 32 lines ${lines} = 32 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 31 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 31e4bdb6-eb4d-4ca1-8871-0a57e86dfc45 nopasswd regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/simple_nopasswd_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/simple_nopasswd_ns Base directory: /robot-systest/osm-packages/simple_nopasswd_ns 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/simple_nopasswd_ns Base directory: /robot-systest/osm-packages/simple_nopasswd_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: simple_nopasswd_ns Package created: /robot-systest/osm-packages/simple_nopasswd_ns.tar.gz 661ae606-1211-460c-a100-da178cdc1d61 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 661ae606-1211-460c-a100-da178cdc1d61 nopasswd regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${EMPTY} ${ns_timeout} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name basic_07_secure_key_management --nsd_name simple_nopasswd-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' 2>&1'. ${rc} = 0 ${stdout} = f5538d2a-dcce-4cb5-8624-75ca7fd73493 ${stdout} Logs the given message with the given level. f5538d2a-dcce-4cb5-8624-75ca7fd73493 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = f5538d2a-dcce-4cb5-8624-75ca7fd73493 ${ns_id} Logs the given message with the given level. f5538d2a-dcce-4cb5-8624-75ca7fd73493 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BUILDING | INSTANTIATING (5a708563-4cac-4ea8-9147-db18ff44c35e) | N/A | +--------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BROKEN | IDLE (None) | Operation: INSTANTIATING.5a708563-4cac-4 | | | | | | | ea8-9147-db18ff44c35e, Stage 2/5: | | | | | | | deployment of KDUs, VMs and execution | | | | | | | environments. | | | | | | | Detail: Deploying at VIM: Error at VIM | | | | | | | VM 'vim-vm-id=d53d5209-e3e4-413b-9424-97 | | | | | | | 2c24eecf13': {'message': 'Build of | | | | | | | instance | | | | | | | d53d5209-e3e4-413b-9424-972c24eecf13 | | | | | | | aborted: Failed to allocate the | | | | | | | network(s), not rescheduling.', 'code': | | | | | | | 500, 'details': ' File | | | | | | | "/var/lib/kolla/venv/lib/python2.7/site- | | | | | | | packages/nova/compute/manager.py", line | | | | | | | 1929, in _do_build_and_run_instance\n | | | | | | | filter_properties, request_spec)\n File | | | | | | | "/var/lib/kolla/venv/lib/python2.7/site- | | | | | | | packages/nova/compute/manager.py", line | | | | | | | 2186, in _build_and_run_instance\n | | | | | | | reason=msg)\n', 'created': | | | | | | | '2021-04-25T02:46:47Z'}. Deploying VCA | | | | | | | 1.: Insert public key into VM | | | | | | | user=ubuntu ssh_key=ssh-rsa AAAAB3NzaC1y | | | | | | | c2EAAAADAQABAAACAQDR8XDxpYXZxzt0vB634iN0 | | | | | | | MGjEAeYRSSbugfG8BgLcvSyM9/AVDGGjUZxxq+Yt | | | | | | | 0oM85PjBg9+Q4Q9SNnIJxMuZaqE8zcgPR+DXbZUn | | | | | | | g+d9CbyPrvk1QDKRtu4hHqOSzDfeXXoF3XyuVUdP | | | | | | | QdSQBkBOSxsdkQFex/MaQU99Deak1V+9QTrykQTm | | | | | | | VBxL6zQxg6fgS9rT+tX8tzbQGOj1Vh0ff3KmZsoM | | | | | | | aovNED4+U83yWwPYjs4ijvGDKGeLEZ99VZ+4Zhbe | | | | | | | w1vTOabdZVguj8QlB8vBpNEnICIONDVD4TlMusgJ | | | | | | | RRSc1sNYkbNooaHKegXiqGsRoXvzBnGLkwJ3R1Ei | | | | | | | ymqTIXvOMuLYRC4RUzjnoQrNI1IaHdMhwvMAdarm | | | | | | | FwrTDVbqjdLgM0Ws7ClY39T42dTR1vAP6ZuYDYJG | | | | | | | iGflxTUAQHSrL1hfNaBeyknS+wRidU+kWIfjkVUF | | | | | | | csOySOACbNkhE1ykDsL/m7t/69wli6hBxLa2tYI2 | | | | | | | wMfg2HfHPxrLG6sqEyonqpGePy+9zrnVUsIPRZeF | | | | | | | 4Ns5ahCL0D+AEzeM24C8fvDv7Dy1dO1v1nrU9p6t | | | | | | | zbzH+lpFob/lHSycQm54Cc0nE0hGG1t+jSl38gCy | | | | | | | XzPpIDwL0Diiudd2xgTuJLSyZ/lz3PANMCsP1al1 | | | | | | | K9u040XJKSK3lNXckkXfyQ== | | | | | | | root@juju-f0412b-0 | | | | | | | Cannot inject ssh-key because target | | | | | | | VNF is in error state | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_07_secure_key_management" 2>&1'. ${rc} = 0 ${stdout} = +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BROKEN | IDLE (None) | Operation: INSTANTIATING.5a708563-4cac-4 | | | | | | | ea8-9147-db18ff44c35e, Stage 2/5: | | | | | | | deployment of KDUs, VMs and execution | | | | | | | environments. | | | | | | | Detail: Deploying at VIM: Error at VIM | | | | | | | VM 'vim-vm-id=d53d5209-e3e4-413b-9424-97 | | | | | | | 2c24eecf13': {'message': 'Build of | | | | | | | instance | | | | | | | d53d5209-e3e4-413b-9424-972c24eecf13 | | | | | | | aborted: Failed to allocate the | | | | | | | network(s), not rescheduling.', 'code': | | | | | | | 500, 'details': ' File | | | | | | | "/var/lib/kolla/venv/lib/python2.7/site- | | | | | | | packages/nova/compute/manager.py", line | | | | | | | 1929, in _do_build_and_run_instance\n | | | | | | | filter_properties, request_spec)\n File | | | | | | | "/var/lib/kolla/venv/lib/python2.7/site- | | | | | | | packages/nova/compute/manager.py", line | | | | | | | 2186, in _build_and_run_instance\n | | | | | | | reason=msg)\n', 'created': | | | | | | | '2021-04-25T02:46:47Z'}. Deploying VCA | | | | | | | 1.: Insert public key into VM | | | | | | | user=ubuntu ssh_key=ssh-rsa AAAAB3NzaC1y | | | | | | | c2EAAAADAQABAAACAQDR8XDxpYXZxzt0vB634iN0 | | | | | | | MGjEAeYRSSbugfG8BgLcvSyM9/AVDGGjUZxxq+Yt | | | | | | | 0oM85PjBg9+Q4Q9SNnIJxMuZaqE8zcgPR+DXbZUn | | | | | | | g+d9CbyPrvk1QDKRtu4hHqOSzDfeXXoF3XyuVUdP | | | | | | | QdSQBkBOSxsdkQFex/MaQU99Deak1V+9QTrykQTm | | | | | | | VBxL6zQxg6fgS9rT+tX8tzbQGOj1Vh0ff3KmZsoM | | | | | | | aovNED4+U83yWwPYjs4ijvGDKGeLEZ99VZ+4Zhbe | | | | | | | w1vTOabdZVguj8QlB8vBpNEnICIONDVD4TlMusgJ | | | | | | | RRSc1sNYkbNooaHKegXiqGsRoXvzBnGLkwJ3R1Ei | | | | | | | ymqTIXvOMuLYRC4RUzjnoQrNI1IaHdMhwvMAdarm | | | | | | | FwrTDVbqjdLgM0Ws7ClY39T42dTR1vAP6ZuYDYJG | | | | | | | iGflxTUAQHSrL1hfNaBeyknS+wRidU+kWIfjkVUF | | | | | | | csOySOACbNkhE1ykDsL/m7t/69wli6hBxLa2tYI2 | | | | | | | wMfg2HfHPxrLG6sqEyonqpGePy+9zrnVUsIPRZeF | | | | | | | 4Ns5ahCL0D+AEzeM24C8fvDv7Dy1dO1v1nrU9p6t | | | | | | | zbzH+lpFob/lHSycQm54Cc0nE0hGG1t+jSl38gCy | | | | | | | XzPpIDwL0Diiudd2xgTuJLSyZ/lz3PANMCsP1al1 | | | | | | | K9u040XJKSK3lNXckkXfyQ== | | | | | | | root@juju-f0412b-0 | | | | | | | Cannot inject ssh-key because target | | | | | | | VNF is in error state | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. '+--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BROKEN | IDLE (None) | Operation: INSTANTIATING.5a708563-4cac-4 | | | | | | | ea8-9147-db18ff44c35e, Stage 2/5: | | | | | | | deployment of KDUs, VMs and execution | | | | | | | environments. | | | | | | | Detail: Deploying at VIM: Error at VIM | | | | | | | VM 'vim-vm-id=d53d5209-e3e4-413b-9424-97 | | | | | | | 2c24eecf13': {'message': 'Build of | | | | | | | instance | | | | | | | d53d5209-e3e4-413b-9424-972c24eecf13 | | | | | | | aborted: Failed to allocate the | | | | | | | network(s), not rescheduling.', 'code': | | | | | | | 500, 'details': ' File | | | | | | | "/var/lib/kolla/venv/lib/python2.7/site- | | | | | | | packages/nova/compute/manager.py", line | | | | | | | 1929, in _do_build_and_run_instance\n | | | | | | | filter_properties, request_spec)\n File | | | | | | | "/var/lib/kolla/venv/lib/python2.7/site- | | | | | | | packages/nova/compute/manager.py", line | | | | | | | 2186, in _build_and_run_instance\n | | | | | | | reason=msg)\n', 'created': | | | | | | | '2021-04-25T02:46:47Z'}. Deploying VCA | | | | | | | 1.: Insert public key into VM | | | | | | | user=ubuntu ssh_key=ssh-rsa AAAAB3NzaC1y | | | | | | | c2EAAAADAQABAAACAQDR8XDxpYXZxzt0vB634iN0 | | | | | | | MGjEAeYRSSbugfG8BgLcvSyM9/AVDGGjUZxxq+Yt | | | | | | | 0oM85PjBg9+Q4Q9SNnIJxMuZaqE8zcgPR+DXbZUn | | | | | | | g+d9CbyPrvk1QDKRtu4hHqOSzDfeXXoF3XyuVUdP | | | | | | | QdSQBkBOSxsdkQFex/MaQU99Deak1V+9QTrykQTm | | | | | | | VBxL6zQxg6fgS9rT+tX8tzbQGOj1Vh0ff3KmZsoM | | | | | | | aovNED4+U83yWwPYjs4ijvGDKGeLEZ99VZ+4Zhbe | | | | | | | w1vTOabdZVguj8QlB8vBpNEnICIONDVD4TlMusgJ | | | | | | | RRSc1sNYkbNooaHKegXiqGsRoXvzBnGLkwJ3R1Ei | | | | | | | ymqTIXvOMuLYRC4RUzjnoQrNI1IaHdMhwvMAdarm | | | | | | | FwrTDVbqjdLgM0Ws7ClY39T42dTR1vAP6ZuYDYJG | | | | | | | iGflxTUAQHSrL1hfNaBeyknS+wRidU+kWIfjkVUF | | | | | | | csOySOACbNkhE1ykDsL/m7t/69wli6hBxLa2tYI2 | | | | | | | wMfg2HfHPxrLG6sqEyonqpGePy+9zrnVUsIPRZeF | | | | | | | 4Ns5ahCL0D+AEzeM24C8fvDv7Dy1dO1v1nrU9p6t | | | | | | | zbzH+lpFob/lHSycQm54Cc0nE0hGG1t+jSl38gCy | | | | | | | XzPpIDwL0Diiudd2xgTuJLSyZ/lz3PANMCsP1al1 | | | | | | | K9u040XJKSK3lNXckkXfyQ== | | | | | | | root@juju-f0412b-0 | | | | | | | Cannot inject ssh-key because target | | | | | | | VNF is in error state | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' contains 'BROKEN' ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. nopasswd regression sanity '+--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | ns instance name | id | date | ns state | current operation | error details | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ | basic_07_secure_key_management | f5538d2a-dcce-4cb5-8624-75ca7fd73493 | 2021-04-25T02:39:49 | BROKEN | IDLE (None) | Operation: INSTANTIATING.5a708563-4cac-4 | | | | | | | ea8-9147-db18ff44c35e, Stage 2/5: | | | | | | | deployment of KDUs, VMs and execution | | | | | | | environments. ... [ Message content over the limit has been removed. ] ... | | | | | XzPpIDwL0Diiudd2xgTuJLSyZ/lz3PANMCsP1al1 | | | | | | | K9u040XJKSK3lNXckkXfyQ== | | | | | | | root@juju-f0412b-0 | | | | | | | Cannot inject ssh-key because target | | | | | | | VNF is in error state | +--------------------------------+--------------------------------------+---------------------+----------+-------------------+------------------------------------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' contains 'BROKEN' ${ip_addr} ${ns_id} ${vnf_member_index} Variable '${ns_id}' not found. ${ip_addr} Logs the given message with the given level. ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. nopasswd regression sanity Variable '${ns_id}' not found. ${vnf_ip_addr} msg=IP address of the management VNF is not available Fails unless the given variable exists within the current scope. msg=IP address of the management VNF is not available 30s Waiting ssh daemon to be up Pauses the test executed for the given time. ${vnf_ip_addr} ${username} ${password} ${EMPTY} nopasswd regression sanity msg=IP address of the management VNF is not available ${vnf_ip_addr} ${username} ${password} ${EMPTY} ${day_1_file_name} Variable '${vnf_ip_addr}' not found. The Nopasswd VNF has a Day 1 operation that creates a file named /home/ubuntu/first-touch and performs it without password. This test checks whether that files have been created or not. nopasswd regression sanity Variable '${vnf_ip_addr}' not found. ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. msg=Network service instance is not available ${ns_op_id} ${ns_name} ${action_name} ${vnf_member_index} filename=${day_2_file_name} Execute an action over the desired NS. Parameters are given to this function in key=value format (one argument per key/value pair). Return the ID of the operation associated to the executed action. Examples of execution: ${ns_op_id}= Execute NS Action ${ns_name} ${ns_action} ${vnf_member_index} ${ns_op_id}= Execute NS Action ${ns_name} ${ns_action} ${vnf_member_index} ${param1}=${value1} ${param2}=${value2} Performs one Day 2 operation that creates a new file, this action is executed without password too. nopasswd regression sanity msg=Network service instance is not available ${vnf_ip_addr} ${username} ${password} ${EMPTY} ${day_2_file_name} Variable '${vnf_ip_addr}' not found. Check whether the file created in the previous test via Day 2 operation exists or not. nopasswd regression sanity Variable '${vnf_ip_addr}' not found. ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete basic_07_secure_key_management 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_07_secure_key_management 2>&1'. ${rc} = 0 ${stdout} = basic_07_secure_key_management ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_07_secure_key_management == basic_07_secure_key_management ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_07_secure_key_management 2>&1'. ${rc} = 0 ${stdout} = basic_07_secure_key_management ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_07_secure_key_management == basic_07_secure_key_management ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_07_secure_key_management 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup nopasswd regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete simple_nopasswd-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep simple_nopasswd-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup nopasswd regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete simple_nopasswd-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep simple_nopasswd-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup nopasswd regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [BASIC-07] Secure key management. ${created_vim_account_id} ${vim_name} ${vim_user} ${vim_password} ${vim_auth_url} ${vim_tenant} ${vim_account_type} config=${vim_config} Create a VIM Target in OSM. The optional parameters (such as 'config' or 'sdn_controller') are given to this function in name=value format. These parameters will be appended to the 'osm vim-create' command with the next syntax: --param_name=param_value Return the ID of the created VIM Target. Example of execution: ${vim_account_id}= Create VIM Target ${vim_name} ${vim_user} ${vim_password} ${vim_auth_url} ${vim_tenant} ${vim_account_type} config='{...}' ${osm_vim_create_command} osm vim-create --name ${vim_name} --user ${vim_user} --password ${vim_password} --auth_url ${vim_auth_url} --tenant ${vim_tenant} --account_type ${vim_account_type} Returns the given values which can then be assigned to a variables. ${osm_vim_create_command} = osm vim-create --name basic_08_vim_test --user osm_jenkins --password R8NtPgyodpgKjhmJoQBs --auth_url http://172.21.247.1:5000/v3 --tenant osm_jenkins --account_type openstack ${param} @{optional_parameters} config='{project_domain_name: default, user_domain_name: Default, vim_network_name: osm-ext, disable_network_port_security: True}' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = config='{project_domain_name: default, user_domain_name: Default, vim_network_name: osm-ext, disable_network_port_security: True}' ${param_name} = config ${param_value} = '{project_domain_name: default, user_domain_name: Default, vim_network_name: osm-ext, disable_network_port_security: True}' ${osm_vim_create_command} ${osm_vim_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_vim_create_command} = osm vim-create --name basic_08_vim_test --user osm_jenkins --password R8NtPgyodpgKjhmJoQBs --auth_url http://172.21.247.1:5000/v3 --tenant osm_jenkins --account_type openstack --config='{project_domai... ${rc} ${stdout} ${osm_vim_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm vim-create --name basic_08_vim_test --user osm_jenkins --password R8NtPgyodpgKjhmJoQBs --auth_url http://172.21.247.1:5000/v3 --tenant osm_jenkins --account_type openstack --config='{project_domain_name: default, user_domain_name: Default, vim_network_name: osm-ext, disable_network_port_security: True}' 2>&1'. ${rc} = 0 ${stdout} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${stdout} Logs the given message with the given level. 52f61120-fb44-4ec4-8f7a-23750292f43c ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${created_vim_account_id} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${vim_name} ${prometheus_host} ${prometheus_port} ${vim_account_id} ${vim_name} ${rc} ${stdout} osm vim-list | grep " ${vim_name} " | awk '{print $4}' Runs the given command in the system and returns the RC and output. Running command 'osm vim-list | grep " basic_08_vim_test " | awk '{print $4}' 2>&1'. ${rc} = 0 ${stdout} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${EMPTY} msg=VIM Target '${vim_name}' not found values=false Fails if objects are equal after converting them to strings. ${vim_account_id} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${vim_status_max_wait_time} ${vim_status_pol_time} Check If VIM Target Is Available ${vim_account_id} ${prometheus_host} ${prometheus_port} Runs the specified keyword and retries if it fails. ${vim_account_id} ${prometheus_host} ${prometheus_port} ${metric} ${prometheus_host} ${prometheus_port} osm_vim_status vim_account_id=${vim_account_id} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} vim_account_id=52f61120-fb44-4ec4-8f7a-23750292f43c ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in filter parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = vim_account_id=52f61120-fb44-4ec4-8f7a-23750292f43c ${param_name} = vim_account_id ${param_value} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${filter} SEPARATOR= ${filter} ${param_name}="${param_value}", Catenates the given items together and returns the resulted string. ${filter} = vim_account_id="52f61120-fb44-4ec4-8f7a-23750292f43c", ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D path_url=/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 02:47:52 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_vim_status not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric} 1 msg=VIM Target '${vim_account_id}' is not active values=false Fails if objects are unequal after converting them to integers. ${vim_account_id} ${prometheus_host} ${prometheus_port} ${metric} ${prometheus_host} ${prometheus_port} osm_vim_status vim_account_id=${vim_account_id} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} vim_account_id=52f61120-fb44-4ec4-8f7a-23750292f43c ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in filter parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = vim_account_id=52f61120-fb44-4ec4-8f7a-23750292f43c ${param_name} = vim_account_id ${param_value} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${filter} SEPARATOR= ${filter} ${param_name}="${param_value}", Catenates the given items together and returns the resulted string. ${filter} = vim_account_id="52f61120-fb44-4ec4-8f7a-23750292f43c", ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D path_url=/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 02:48:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_vim_status not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric} 1 msg=VIM Target '${vim_account_id}' is not active values=false Fails if objects are unequal after converting them to integers. ${vim_account_id} ${prometheus_host} ${prometheus_port} ${metric} ${prometheus_host} ${prometheus_port} osm_vim_status vim_account_id=${vim_account_id} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} vim_account_id=52f61120-fb44-4ec4-8f7a-23750292f43c ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in filter parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = vim_account_id=52f61120-fb44-4ec4-8f7a-23750292f43c ${param_name} = vim_account_id ${param_value} = 52f61120-fb44-4ec4-8f7a-23750292f43c ${filter} SEPARATOR= ${filter} ${param_name}="${param_value}", Catenates the given items together and returns the resulted string. ${filter} = vim_account_id="52f61120-fb44-4ec4-8f7a-23750292f43c", ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D path_url=/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_vim_status%7Bvim_account_id=%2252f61120-fb44-4ec4-8f7a-23750292f43c%22,%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 02:48:22 GMT', 'Content-Length': '233'} body={"status":"success","data":{"resultType":"vector","result":[{"metric":{"__name__":"osm_vim_status","instance":"mon:8000","job":"mon_exporter","project_id":"acea6cac-036d-4c96-8671-33c56dec109c","vim_account_id":"52f61120-fb44-4ec4-8f7a-23750292f43c"},"value":[1619318902.154,"1"]}]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': [{'metric': {'__name__': 'osm_vim_status', 'instance': 'mon:8000', 'job': 'mon_exporter', 'project_id': 'acea6cac-036d-4c96-8671-33c56d... ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [{'metric': {'__name__': 'osm_vim_status', 'instance': 'mon:8000', 'job': 'mon_exporter', 'project_id': 'acea6cac-036d-4c96-8671-33c56dec109c', 'vim_account_id': '52f61120-fb44-4ec4-8f7a-23750292f43c'... ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 1 ${results} = 1 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. Argument types are: <type 'unicode'> <class 'int'> ${metric} = 1 ${metric} 1 msg=VIM Target '${vim_account_id}' is not active values=false Fails if objects are unequal after converting them to integers. disable_port_security regression sanity '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_multivdu_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_multivdu_vnf Base directory: /robot-systest/osm-packages/hackfest_multivdu_vnf 1 Descriptors found to validate Validation OK List of charms in t... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_multivdu_vnf Base directory: /robot-systest/osm-packages/hackfest_multivdu_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_multivdu_vnf Package created: /robot-systest/osm-packages/hackfest_multivdu_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_multivdu_vnf.tar.gz d0241136-f480-4fb8-8bb0-549a24ec5fcb ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = d0241136-f480-4fb8-8bb0-549a24ec5fcb disable_port_security regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_multivdu_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_multivdu_ns Base directory: /robot-systest/osm-packages/hackfest_multivdu_ns 1 Descriptors found to validate Validation OK List of charms in the... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_multivdu_ns Base directory: /robot-systest/osm-packages/hackfest_multivdu_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_multivdu_ns Package created: /robot-systest/osm-packages/hackfest_multivdu_ns.tar.gz 38b7585e-2160-4374-84dc-8d370894f896 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 38b7585e-2160-4374-84dc-8d370894f896 disable_port_security regression sanity ${id} ${nsd_name} ${vim_name} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name basic_08_disable_port_security_network_level_test --nsd_name hackfest_multivdu-ns --vim_account basic_08_vim_test --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = ac391bdd-a6d3-49aa-bea1-afcd8d18383a ${stdout} Logs the given message with the given level. ac391bdd-a6d3-49aa-bea1-afcd8d18383a ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = ac391bdd-a6d3-49aa-bea1-afcd8d18383a ${ns_id} Logs the given message with the given level. ac391bdd-a6d3-49aa-bea1-afcd8d18383a ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | n... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | BUILDING | INSTANTIATING (c36aa030-3134-4c21-8fdf-e1456209ed66) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | READY | IDLE (None) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_08_disable_port_security_network_level_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_08_disable_port_security_network_level_test | ac391bdd-a6d3-49aa-bea1-afcd8d18383a | 2021-04-25T02:48:26 | READY | IDLE (None) | N/A | +---------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = ac391bdd-a6d3-49aa-bea1-afcd8d18383a ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = ac391bdd-a6d3-49aa-bea1-afcd8d18383a disable_port_security regression sanity ${rc} ${disabled_ports} osm ns-show ${ns_name} | grep -c '${port_disabled_msg}' Runs the given command in the system and returns the RC and output. Running command 'osm ns-show basic_08_disable_port_security_network_level_test | grep -c 'port_security_enabled: false' 2>&1'. ${rc} = 0 ${disabled_ports} = 9 ${disabled_ports} > 6 Fail msg=Found only '${disabled_ports}' matches for '${port_disabled_msg}' Runs the given keyword with the given arguments if ``condition`` is false. disable_port_security regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete basic_08_disable_port_security_network_level_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_08_disable_port_security_network_level_test 2>&1'. ${rc} = 0 ${stdout} = basic_08_disable_port_security_network_level_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_08_disable_port_security_network_level_test == basic_08_disable_port_security_network_level_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_08_disable_port_security_network_level_test 2>&1'. ${rc} = 0 ${stdout} = basic_08_disable_port_security_network_level_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_08_disable_port_security_network_level_test == basic_08_disable_port_security_network_level_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_08_disable_port_security_network_level_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup disable_port_security regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_multivdu-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_multivdu-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup disable_port_security regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_multivdu-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_multivdu-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup disable_port_security regression sanity ${vim_name} ${rc} ${stdout} Run and Return RC and Output osm vim-delete ${vim_name} Runs the keyword and continues execution even if a failure occurs. osm vim-delete ${vim_name} Runs the given command in the system and returns the RC and output. Running command 'osm vim-delete basic_08_vim_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${delete_max_wait_time} ${delete_pol_time} Check for VIM Target ${vim_name} Runs the specified keyword and retries if it fails. ${vim_name} ${rc} ${stdout} osm vim-list | awk '{print $2}' | grep ${vim_name} Runs the given command in the system and returns the RC and output. Running command 'osm vim-list | awk '{print $2}' | grep basic_08_vim_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vim_name} Fails if objects are equal after converting them to strings. cleanup disable_port_security regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VIM Target ${vim_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [BASIC-08] Disable port security at network level. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_basic_metrics_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_metrics_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_vnf 1 Descriptors found to validate Validation OK List of c... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_metrics_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_metrics_vnf Package created: /robot-systest/osm-packages/hackfest_basic_metrics_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_metrics_vnf.tar.gz fff372bd-9c00-41a5-82a0-55565aa975a0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = fff372bd-9c00-41a5-82a0-55565aa975a0 manual_scaling regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_basic_metrics_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_metrics_ns Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_ns 1 Descriptors found to validate Validation OK List of cha... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_metrics_ns Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_metrics_ns Package created: /robot-systest/osm-packages/hackfest_basic_metrics_ns.tar.gz 8613a82d-6cb3-4ad8-a4f7-244aa0ededd6 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 8613a82d-6cb3-4ad8-a4f7-244aa0ededd6 manual_scaling regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name basic_09_manual_scaling_test --nsd_name hackfest_basic-ns-metrics --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = b1239b38-a2a7-4915-a8ab-024fb5f8e381 ${stdout} Logs the given message with the given level. b1239b38-a2a7-4915-a8ab-024fb5f8e381 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = b1239b38-a2a7-4915-a8ab-024fb5f8e381 ${ns_id} Logs the given message with the given level. b1239b38-a2a7-4915-a8ab-024fb5f8e381 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_09_manual_scaling_test" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_09_manual_scaling_test | b1239b38-a2a7-4915-a8ab-024fb5f8e381 | 2021-04-25T02:52:59 | BUILDING | INSTANTIATING (9f9eaa37-be11-4644-8cf9-98cc89e654af) | N/A | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_09_manual_scaling_test | b1239b38-a2a7-4915-a8ab-024fb5f8e381 | 2021-04-25T02:52:59 | BUILDING | INSTANTIATING (9f9eaa37-be11-4644-8cf9-98cc89e654af) | N/A | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_09_manual_scaling_test" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_09_manual_scaling_test | b1239b38-a2a7-4915-a8ab-024fb5f8e381 | 2021-04-25T02:52:59 | BUILDING | INSTANTIATING (9f9eaa37-be11-4644-8cf9-98cc89e654af) | N/A | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | basic_09_manual_scaling_test | b1239b38-a2a7-4915-a8ab-024fb5f8e381 | 2021-04-25T02:52:59 | BUILDING | INSTANTIATING (9f9eaa37-be11-4644-8cf9-98cc89e654af) | N/A | +------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_09_manual_scaling_test" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_09_manual_scaling_test | b1239b38-a2a7-4915-a8ab-024fb5f8e381 | 2021-04-25T02:52:59 | READY | IDLE (None) | N/A | +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="basic_09_manual_scaling_test" 2>&1'. ${rc} = 0 ${stdout} = +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | basic_09_manual_scaling_test | b1239b38-a2a7-4915-a8ab-024fb5f8e381 | 2021-04-25T02:52:59 | READY | IDLE (None) | N/A | +------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = b1239b38-a2a7-4915-a8ab-024fb5f8e381 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = b1239b38-a2a7-4915-a8ab-024fb5f8e381 manual_scaling regression sanity ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. @{vnfr_list} ${ns_id} Return a list with the IDs of the VNF records of a NS instance. ${rc} ${stdout} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep b1239b38-a2a7-4915-a8ab-024fb5f8e381 | awk '{print $2}' 2>&1'. ${rc} = 0 ${stdout} = ea81d4db-d6ab-4ac2-9d8d-58a6de074223 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> @{vdur} ${stdout} Splits the ``string`` using ``separator`` as a delimiter string. @{vdur} = [ ea81d4db-d6ab-4ac2-9d8d-58a6de074223 ] @{vnfr_list} = [ ea81d4db-d6ab-4ac2-9d8d-58a6de074223 ] ${vnfr_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: ea81d4db-d6ab-4ac2-9d8d-58a6de074223 ${vnf_id} ${vnfr_list}[0] Makes a variable available everywhere within the scope of the current suite. ${vnf_id} = ea81d4db-d6ab-4ac2-9d8d-58a6de074223 manual_scaling regression sanity @{vdur_list} ${vnf_id} Return a list with the names of the VDU records of a VNF instance. ${rc} ${stdout} osm vnf-show ${vnf_id} --literal | yq r - vdur.*.name Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show ea81d4db-d6ab-4ac2-9d8d-58a6de074223 --literal | yq r - vdur.*.name 2>&1'. ${rc} = 0 ${stdout} = basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> @{vdur} ${stdout} Splits the ``string`` using ``separator`` as a delimiter string. @{vdur} = [ basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ] @{vdur_list} = [ basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ] ${vdur_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ${vdurs} ${vdur_list} Returns and logs the length of the given item as an integer. Length is 1 ${vdurs} = 1 ${initial_vdur_count} ${vdurs} Makes a variable available everywhere within the scope of the current suite. ${initial_vdur_count} = 1 Get the number of VDU records before the manual scaling. manual_scaling regression sanity ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. ${ns_op_id} ${ns_name} ${vnf_member_index} ${scaling_group} SCALE_OUT Execute a manual VNF Scale action. The parameter 'scale_type' must be SCALE_IN or SCALE_OUT. Return the ID of the operation associated to the executed scale action. ${scale_type} SCALE_IN SCALE_OUT msg=Unknown scale type: ${scale_type} values=False Fails if ``container`` does not contain any of the ``*items``. ${osm_vnf_scale_command} osm vnf-scale --scaling-group ${scaling_group} Returns the given values which can then be assigned to a variables. ${osm_vnf_scale_command} = osm vnf-scale --scaling-group vdu_autoscale ${osm_vnf_scale_command} '${scale_type}'=='SCALE_IN' Catenate ${osm_vnf_scale_command} --scale-in ELSE Catenate ${osm_vnf_scale_command} --scale-out Runs the given keyword with the given arguments, if ``condition`` is true. ${osm_vnf_scale_command} --scale-out Catenates the given items together and returns the resulted string. ${osm_vnf_scale_command} = osm vnf-scale --scaling-group vdu_autoscale --scale-out ${osm_vnf_scale_command} ${osm_vnf_scale_command} ${ns_name} ${vnf_member_index} Catenates the given items together and returns the resulted string. ${osm_vnf_scale_command} = osm vnf-scale --scaling-group vdu_autoscale --scale-out basic_09_manual_scaling_test 1 ${rc} ${stdout} ${osm_vnf_scale_command} Runs the given command in the system and returns the RC and output. Running command 'osm vnf-scale --scaling-group vdu_autoscale --scale-out basic_09_manual_scaling_test 1 2>&1'. ${rc} = 0 ${stdout} = 58ac0de7-b605-4a92-9c87-7d72b4c879d0 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_action_max_wait_time} ${ns_action_pol_time} Check For NS Operation Completed ${stdout} Runs the specified keyword and retries if it fails. ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 58ac0de7-b605-4a92-9c87-7d72b4c879d0 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 58ac0de7-b605-4a92-9c87-7d72b4c879d0 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 58ac0de7-b605-4a92-9c87-7d72b4c879d0 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 58ac0de7-b605-4a92-9c87-7d72b4c879d0 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 58ac0de7-b605-4a92-9c87-7d72b4c879d0 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 Keyword 'Check For NS Operation Completed' failed after retrying for 1 minute. The last error was: Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 manual_scaling regression sanity Keyword 'Check For NS Operation Completed' failed after retrying for 1 minute. The last error was: Timeout waiting for ns-action with id 58ac0de7-b605-4a92-9c87-7d72b4c879d0 ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. @{vdur_list} ${vnf_id} Return a list with the names of the VDU records of a VNF instance. ${rc} ${stdout} osm vnf-show ${vnf_id} --literal | yq r - vdur.*.name Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show ea81d4db-d6ab-4ac2-9d8d-58a6de074223 --literal | yq r - vdur.*.name 2>&1'. ${rc} = 0 ${stdout} = basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> @{vdur} ${stdout} Splits the ``string`` using ``separator`` as a delimiter string. @{vdur} = [ basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 | basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ] @{vdur_list} = [ basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 | basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ] ${vdur_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 1: basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ${vdurs} ${vdur_list} Returns and logs the length of the given item as an integer. Length is 2 ${vdurs} = 2 ${vdurs} == ${initial_vdur_count} + 1 Fail msg=There is no new VDU records in the VNF after Scale Out Runs the given keyword with the given arguments if ``condition`` is false. Check whether there is one more VDU after scaling or not. manual_scaling regression sanity ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. ${ns_op_id} ${ns_name} ${vnf_member_index} ${scaling_group} SCALE_IN Execute a manual VNF Scale action. The parameter 'scale_type' must be SCALE_IN or SCALE_OUT. Return the ID of the operation associated to the executed scale action. ${scale_type} SCALE_IN SCALE_OUT msg=Unknown scale type: ${scale_type} values=False Fails if ``container`` does not contain any of the ``*items``. ${osm_vnf_scale_command} osm vnf-scale --scaling-group ${scaling_group} Returns the given values which can then be assigned to a variables. ${osm_vnf_scale_command} = osm vnf-scale --scaling-group vdu_autoscale ${osm_vnf_scale_command} '${scale_type}'=='SCALE_IN' Catenate ${osm_vnf_scale_command} --scale-in ELSE Catenate ${osm_vnf_scale_command} --scale-out Runs the given keyword with the given arguments, if ``condition`` is true. ${osm_vnf_scale_command} --scale-in Catenates the given items together and returns the resulted string. ${osm_vnf_scale_command} = osm vnf-scale --scaling-group vdu_autoscale --scale-in ${osm_vnf_scale_command} ${osm_vnf_scale_command} ${ns_name} ${vnf_member_index} Catenates the given items together and returns the resulted string. ${osm_vnf_scale_command} = osm vnf-scale --scaling-group vdu_autoscale --scale-in basic_09_manual_scaling_test 1 ${rc} ${stdout} ${osm_vnf_scale_command} Runs the given command in the system and returns the RC and output. Running command 'osm vnf-scale --scaling-group vdu_autoscale --scale-in basic_09_manual_scaling_test 1 2>&1'. ${rc} = 0 ${stdout} = 369db682-01fc-43dd-a9c4-70a8313b1008 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_action_max_wait_time} ${ns_action_pol_time} Check For NS Operation Completed ${stdout} Runs the specified keyword and retries if it fails. ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 369db682-01fc-43dd-a9c4-70a8313b1008 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 369db682-01fc-43dd-a9c4-70a8313b1008 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 369db682-01fc-43dd-a9c4-70a8313b1008 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = PROCESSING ${stdout} Logs the given message with the given level. PROCESSING ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. Timeout waiting for ns-action with id 369db682-01fc-43dd-a9c4-70a8313b1008 ${stdout} Check wheter the status of the desired operation is "COMPLETED" or not. ${rc} ${stdout} osm ns-op-show ${ns_operation_id} --literal | yq r - operationState Runs the given command in the system and returns the RC and output. Running command 'osm ns-op-show 369db682-01fc-43dd-a9c4-70a8313b1008 --literal | yq r - operationState 2>&1'. ${rc} = 0 ${stdout} = COMPLETED ${stdout} Logs the given message with the given level. COMPLETED ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False Fails if ``container`` does not contain ``item`` one or more times. ${ns_op_id} = 369db682-01fc-43dd-a9c4-70a8313b1008 manual_scaling regression sanity ${ns_id} msg=Network service instance is not available Fails unless the given variable exists within the current scope. @{vdur_list} ${vnf_id} Return a list with the names of the VDU records of a VNF instance. ${rc} ${stdout} osm vnf-show ${vnf_id} --literal | yq r - vdur.*.name Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show ea81d4db-d6ab-4ac2-9d8d-58a6de074223 --literal | yq r - vdur.*.name 2>&1'. ${rc} = 0 ${stdout} = basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> @{vdur} ${stdout} Splits the ``string`` using ``separator`` as a delimiter string. @{vdur} = [ basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ] @{vdur_list} = [ basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ] ${vdur_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: basic_09_manual_scaling_test-1-hackfest_basic_metrics-VM-1 ${vdurs} ${vdur_list} Returns and logs the length of the given item as an integer. Length is 1 ${vdurs} = 1 ${vdurs} == ${initial_vdur_count} Fail msg=There is the same number of VDU records in the VNF after Scale In Runs the given keyword with the given arguments if ``condition`` is false. Check whether there is one less VDU after scaling or not. manual_scaling regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete basic_09_manual_scaling_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_09_manual_scaling_test 2>&1'. ${rc} = 0 ${stdout} = basic_09_manual_scaling_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. basic_09_manual_scaling_test == basic_09_manual_scaling_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep basic_09_manual_scaling_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup manual_scaling regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_basic-ns-metrics 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_basic-ns-metrics 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup manual_scaling regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_basic_metrics-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_basic_metrics-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup manual_scaling regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [BASIC-09] Manual VNF/VDU Scaling. ${user_name} ${user_password} ${user_name} Verifies that the given item is not empty. Length is 18 ${user_password} Verifies that the given item is not empty. Length is 18 ${rc} ${stdout} osm user-create ${user_name} --password ${user_password} Runs the given command in the system and returns the RC and output. Running command 'osm user-create basic_15_test_user --password basic_15_user_pass 2>&1'. ${rc} = 0 ${stdout} = 890ca326-1f98-4d6b-9334-5bc727b5e74e ${stdout} Logs the given message with the given level. 890ca326-1f98-4d6b-9334-5bc727b5e74e ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${user_name} ${user_name} Verifies that the given item is not empty. Length is 18 ${rc} ${stdout} osm user-list | awk 'NR>3 {print $2}' | grep "${user_name}" Runs the given command in the system and returns the RC and output. Running command 'osm user-list | awk 'NR>3 {print $2}' | grep "basic_15_test_user"'. ${rc} = 0 ${stdout} = basic_15_test_user ${stdout} Logs the given message with the given level. basic_15_test_user ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> rbac_configurations regression sanity ${user_name} ${user_project} ${user_role} ${user_name} Verifies that the given item is not empty. Length is 18 ${project_name} Verifies that the given item is not empty. Length is 5 ${role_name} Verifies that the given item is not empty. Length is 12 ${rc} ${stdout} osm user-update --add-project-role '${project_name},${role_name}' ${user_name} Runs the given command in the system and returns the RC and output. Running command 'osm user-update --add-project-role 'admin,project_user' basic_15_test_user 2>&1'. ${rc} = 0 ${stdout} = Updated ${stdout} Logs the given message with the given level. Updated ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${user_name} ${user_project} ${user_name} Verifies that the given item is not empty. Length is 18 ${project_name} Verifies that the given item is not empty. Length is 5 ${rc} ${stdout} osm user-show ${user_name} | grep "project_name" | grep "${project_name}" Runs the given command in the system and returns the RC and output. Running command 'osm user-show basic_15_test_user | grep "project_name" | grep "admin" 2>&1'. ${rc} = 0 ${stdout} = | | "project_name": "admin", | ${stdout} Logs the given message with the given level. | | "project_name": "admin", | ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${user_name} ${user_role} ${user_project} ${user_name} Verifies that the given item is not empty. Length is 18 ${role_name} Verifies that the given item is not empty. Length is 12 ${project_name} Verifies that the given item is not empty. Length is 5 ${rc} ${stdout} osm user-show ${user_name} | grep -B1 "role_name" | grep -B1 "${role_name}" | grep "project_name" | grep "${project_name}" Runs the given command in the system and returns the RC and output. Running command 'osm user-show basic_15_test_user | grep -B1 "role_name" | grep -B1 "project_user" | grep "project_name" | grep "admin" 2>&1'. ${rc} = 0 ${stdout} = | | "project_name": "admin", | ${stdout} Logs the given message with the given level. | | "project_name": "admin", | ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> rbac_configurations regression sanity ${rc} ${stdout} OSM_USER=${user_name} OSM_PROJECT=${user_project} OSM_PASSWORD=${user_password} osm ns-list Runs the given command in the system and returns the RC and output. Running command 'OSM_USER=basic_15_test_user OSM_PROJECT=admin OSM_PASSWORD=basic_15_user_pass osm ns-list 2>&1'. ${rc} = 0 ${stdout} = +------------------+----+------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+----+------+--------... ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> rbac_configurations regression sanity ${project_name} ${project_name} Verifies that the given item is not empty. Length is 21 ${rc} ${stdout} osm project-create ${project_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-create basic_15_test_project 2>&1'. ${rc} = 0 ${stdout} = 7e35980c-b50e-485b-a2a1-27f8ab53593e ${stdout} Logs the given message with the given level. 7e35980c-b50e-485b-a2a1-27f8ab53593e ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_name} ${new_project_name} ${project_name} Verifies that the given item is not empty. Length is 21 ${new_name} Verifies that the given item is not empty. Length is 21 ${rc} ${stdout} osm project-update ${project_name} --name ${new_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-update basic_15_test_project --name basic_15_project_test 2>&1'. ${rc} = 0 ${stdout} = Updated ${stdout} Logs the given message with the given level. Updated ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> rbac_configurations regression sanity ${role_name} ${role_name} Verifies that the given item is not empty. Length is 9 ${rc} ${stdout} osm role-create ${role_name} Runs the given command in the system and returns the RC and output. Running command 'osm role-create test_role 2>&1'. ${rc} = 0 ${stdout} = 37961995-6160-4f7b-ab28-f5b70c7bdc99 ${stdout} Logs the given message with the given level. 37961995-6160-4f7b-ab28-f5b70c7bdc99 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${role_name} ${role_name} Verifies that the given item is not empty. Length is 9 ${rc} ${stdout} osm role-list | awk 'NR>3 {print $2}' | grep "${role_name}" Runs the given command in the system and returns the RC and output. Running command 'osm role-list | awk 'NR>3 {print $2}' | grep "test_role"'. ${rc} = 0 ${stdout} = test_role ${stdout} Logs the given message with the given level. test_role ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> rbac_configurations regression sanity ${role_name} add='vims: true' Updates a role in OSM. The extra parameters (like '--add') are given to this function in name=value format. These parameters will be appended to the 'osm role-update' command with the next syntax: --param_name=param_value Example of execution: Update Role ${role_name} add='vims: true' ${osm_update_command} osm role-update ${role_name} Returns the given values which can then be assigned to a variables. ${osm_update_command} = osm role-update test_role ${param} @{optional_parameters} add='vims: true' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = add='vims: true' ${param_name} = add ${param_value} = 'vims: true' ${osm_update_command} ${osm_update_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_update_command} = osm role-update test_role --add='vims: true' ${rc} ${stdout} ${osm_update_command} Runs the given command in the system and returns the RC and output. Running command 'osm role-update test_role --add='vims: true' 2>&1'. ${rc} = 0 ${stdout} = Updated ${stdout} Logs the given message with the given level. Updated ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${role_name} ${role_name} Verifies that the given item is not empty. Length is 9 ${rc} ${stdout} osm role-list | awk 'NR>3 {print $2}' | grep "${role_name}" Runs the given command in the system and returns the RC and output. Running command 'osm role-list | awk 'NR>3 {print $2}' | grep "test_role"'. ${rc} = 0 ${stdout} = test_role ${stdout} Logs the given message with the given level. test_role ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> rbac_configurations regression sanity ${user_name} ${rc} ${stdout} osm user-delete ${user_name} Runs the given command in the system and returns the RC and output. Running command 'osm user-delete basic_15_test_user 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${new_project_name} ${rc} ${stdout} osm project-delete ${project_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-delete basic_15_project_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${role_name} ${rc} ${stdout} osm role-delete ${role_name} Runs the given command in the system and returns the RC and output. Running command 'osm role-delete test_role 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> cleanup rbac_configurations regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Run Keyword And Ignore Error Delete User ${user_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete Role ${role_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete Project ${project_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete Project ${new_project_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [BASIC-15] RBAC Configurations. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_basic_sriov_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_sriov_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_sriov_vnf 1 Descriptors found to validate Validation OK List of charm... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_sriov_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_sriov_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_sriov_vnf Package created: /robot-systest/osm-packages/hackfest_basic_sriov_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_sriov_vnf.tar.gz 2400bbcc-4831-4d15-8ae6-66dff19735f8 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 2400bbcc-4831-4d15-8ae6-66dff19735f8 epa_sriov regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_basic_sriov_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_sriov_ns Base directory: /robot-systest/osm-packages/hackfest_basic_sriov_ns 1 Descriptors found to validate Validation OK List of charms ... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_sriov_ns Base directory: /robot-systest/osm-packages/hackfest_basic_sriov_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_sriov_ns Package created: /robot-systest/osm-packages/hackfest_basic_sriov_ns.tar.gz 951543c0-3b46-4204-bf73-af087b3c8c9d ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 951543c0-3b46-4204-bf73-af087b3c8c9d epa_sriov regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name epa_01-epa_sriov_test --nsd_name hackfest_basic_sriov-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = cc1d081e-981f-4883-aaeb-d3dbbd991423 ${stdout} Logs the given message with the given level. cc1d081e-981f-4883-aaeb-d3dbbd991423 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = cc1d081e-981f-4883-aaeb-d3dbbd991423 ${ns_id} Logs the given message with the given level. cc1d081e-981f-4883-aaeb-d3dbbd991423 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_01-epa_sriov_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_01-epa_sriov_test | cc1d081e-981f-4883-aaeb-d3dbbd991423 | 2021-04-25T02:56:47 | BUILDING | INSTANTIATING (126638ec-92d9-41d7-b254-461401a5d41b) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_01-epa_sriov_test | cc1d081e-981f-4883-aaeb-d3dbbd991423 | 2021-04-25T02:56:47 | BUILDING | INSTANTIATING (126638ec-92d9-41d7-b254-461401a5d41b) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_01-epa_sriov_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_01-epa_sriov_test | cc1d081e-981f-4883-aaeb-d3dbbd991423 | 2021-04-25T02:56:47 | BUILDING | INSTANTIATING (126638ec-92d9-41d7-b254-461401a5d41b) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_01-epa_sriov_test | cc1d081e-981f-4883-aaeb-d3dbbd991423 | 2021-04-25T02:56:47 | BUILDING | INSTANTIATING (126638ec-92d9-41d7-b254-461401a5d41b) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_01-epa_sriov_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | d... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | epa_01-epa_sriov_test | cc1d081e-981f-4883-aaeb-d3dbbd991423 | 2021-04-25T02:56:47 | READY | IDLE (None) | N/A | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_01-epa_sriov_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | d... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | epa_01-epa_sriov_test | cc1d081e-981f-4883-aaeb-d3dbbd991423 | 2021-04-25T02:56:47 | READY | IDLE (None) | N/A | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = cc1d081e-981f-4883-aaeb-d3dbbd991423 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = cc1d081e-981f-4883-aaeb-d3dbbd991423 epa_sriov regression sanity ${ip_addr} ${ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep cc1d081e-981f-4883-aaeb-d3dbbd991423 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.102 ${stdout} Logs the given message with the given level. 172.21.248.102 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.102 ${ip_addr} Logs the given message with the given level. 172.21.248.102 ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${vnf_ip_addr} = 172.21.248.102 epa_sriov regression sanity 30 seconds Waiting for SSH daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting for SSH daemon to be up ${vnf_ip_addr} ${username} ${password} ${privatekey} lspci | grep "Ethernet controller" | grep -v "Virtio" ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${password} Logs into the SSH server with the given ``username`` and ``password``. Logging into '172.21.248.102:22' as 'ubuntu'. Read output: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-101-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 25 02:58:23 UTC 2021 System load: 0.78 Processes: 98 Usage of /: 3.4% of 28.90GB Users logged in: 0 Memory usage: 6% IP address for ens3: 172.21.248.102 Swap usage: 0% 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@epa-01-epa-sriov-test-1-hackfest-basic-vm-1:~$ ${stdout} ${rc} ${command} return_rc=True return_stdout=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'lspci | grep "Ethernet controller" | grep -v "Virtio"'. Command exited with return code 0. ${stdout} = 00:06.0 Ethernet controller: Intel Corporation Ethernet Virtual Function 700 Series (rev 02) ${rc} = 0 ${rc} Logs the given message with the given level. 0 ${stdout} Logs the given message with the given level. 00:06.0 Ethernet controller: Intel Corporation Ethernet Virtual Function 700 Series (rev 02) Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> epa_sriov regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete epa_01-epa_sriov_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep epa_01-epa_sriov_test 2>&1'. ${rc} = 0 ${stdout} = epa_01-epa_sriov_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. epa_01-epa_sriov_test == epa_01-epa_sriov_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep epa_01-epa_sriov_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup epa_sriov regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_basic_sriov-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_basic_sriov-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup epa_sriov regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_basic_sriov-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_basic_sriov-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup epa_sriov regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [EPA-01] EPA+SRIOV without underlay. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/epa_quota_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/epa_quota_vnf Base directory: /robot-systest/osm-packages/epa_quota_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/epa_quota_vnf Base directory: /robot-systest/osm-packages/epa_quota_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: epa_quota_vnf Package created: /robot-systest/osm-packages/epa_quota_vnf.tar.gz Uploading package /robot-systest/osm-packages/epa_quota_vnf.tar.gz e59d3a1e-3d6c-49d7-8343-b7d59c397f35 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = e59d3a1e-3d6c-49d7-8343-b7d59c397f35 epa_capabilities regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/epa_quota_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/epa_quota_ns Base directory: /robot-systest/osm-packages/epa_quota_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] ... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/epa_quota_ns Base directory: /robot-systest/osm-packages/epa_quota_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: epa_quota_ns Package created: /robot-systest/osm-packages/epa_quota_ns.tar.gz df0f1e1f-2952-4818-bbfc-86c91f078a1b ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = df0f1e1f-2952-4818-bbfc-86c91f078a1b epa_capabilities regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name epa_02-epa_quota_test --nsd_name epa_quota-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = 6bffb4b7-60a2-4c40-909f-5275ac2024ce ${stdout} Logs the given message with the given level. 6bffb4b7-60a2-4c40-909f-5275ac2024ce ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 6bffb4b7-60a2-4c40-909f-5275ac2024ce ${ns_id} Logs the given message with the given level. 6bffb4b7-60a2-4c40-909f-5275ac2024ce ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_02-epa_quota_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_02-epa_quota_test | 6bffb4b7-60a2-4c40-909f-5275ac2024ce | 2021-04-25T02:58:57 | BUILDING | INSTANTIATING (d8991231-1377-4191-bcc2-79d3ae72906e) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_02-epa_quota_test | 6bffb4b7-60a2-4c40-909f-5275ac2024ce | 2021-04-25T02:58:57 | BUILDING | INSTANTIATING (d8991231-1377-4191-bcc2-79d3ae72906e) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_02-epa_quota_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_02-epa_quota_test | 6bffb4b7-60a2-4c40-909f-5275ac2024ce | 2021-04-25T02:58:57 | BUILDING | INSTANTIATING (d8991231-1377-4191-bcc2-79d3ae72906e) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | epa_02-epa_quota_test | 6bffb4b7-60a2-4c40-909f-5275ac2024ce | 2021-04-25T02:58:57 | BUILDING | INSTANTIATING (d8991231-1377-4191-bcc2-79d3ae72906e) | N/A | +-----------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_02-epa_quota_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | d... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | epa_02-epa_quota_test | 6bffb4b7-60a2-4c40-909f-5275ac2024ce | 2021-04-25T02:58:57 | READY | IDLE (None) | N/A | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="epa_02-epa_quota_test" 2>&1'. ${rc} = 0 ${stdout} = +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | d... ${stdout} Logs the given message with the given level. +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | epa_02-epa_quota_test | 6bffb4b7-60a2-4c40-909f-5275ac2024ce | 2021-04-25T02:58:57 | READY | IDLE (None) | N/A | +-----------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 6bffb4b7-60a2-4c40-909f-5275ac2024ce ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 6bffb4b7-60a2-4c40-909f-5275ac2024ce epa_capabilities regression sanity ${vnfs_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep 6bffb4b7-60a2-4c40-909f-5275ac2024ce | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | 967acfa9-8726-427e-8ae3-6febca9d1f88 ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ 967acfa9-8726-427e-8ae3-6febca9d1f88 ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 967acfa9-8726-427e-8ae3-6febca9d1f88 ${vnfs_list} = ['967acfa9-8726-427e-8ae3-6febca9d1f88'] ${vim_id} ${vnfs_list}[0] ${vnf_id} Verifies that the given item is not empty. Length is 36 ${rc} ${stdout} osm vnf-show ${vnf_id} --literal | grep vim-id | awk '{print $2}' Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show 967acfa9-8726-427e-8ae3-6febca9d1f88 --literal | grep vim-id | awk '{print $2}' 2>&1'. ${rc} = 0 ${stdout} = 9937701d-0353-4a57-b51f-2fda61099352 ${stdout} Logs the given message with the given level. 9937701d-0353-4a57-b51f-2fda61099352 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${vim_id} = 9937701d-0353-4a57-b51f-2fda61099352 ${vim_id} Logs the given message with the given level. 9937701d-0353-4a57-b51f-2fda61099352 ${vnf_server_id} ${vim_id} Makes a variable available everywhere within the scope of the current suite. ${vnf_server_id} = 9937701d-0353-4a57-b51f-2fda61099352 epa_capabilities regression sanity ${flavor_id} ${vnf_server_id} ${server_id} Verifies that the given item is not empty. Length is 36 ${rc} ${stdout} openstack server show ${server_id} | grep flavor | awk 'NR>1{print $1}' RS='(' FS=')' Runs the given command in the system and returns the RC and output. Running command 'openstack server show 9937701d-0353-4a57-b51f-2fda61099352 | grep flavor | awk 'NR>1{print $1}' RS='(' FS=')''. ${rc} = 0 ${stdout} = 9cf32a7e-0452-4c68-82c1-7a844eb99cd0 ${stdout} Logs the given message with the given level. 9cf32a7e-0452-4c68-82c1-7a844eb99cd0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${flavor_id} = 9cf32a7e-0452-4c68-82c1-7a844eb99cd0 ${properties} ${flavor_id} ${flavor_id} Verifies that the given item is not empty. Length is 36 ${rc} ${stdout} openstack flavor show ${flavor_id} | grep properties | awk -F '|' '{print $3}' Runs the given command in the system and returns the RC and output. Running command 'openstack flavor show 9cf32a7e-0452-4c68-82c1-7a844eb99cd0 | grep properties | awk -F '|' '{print $3}' 2>&1'. ${rc} = 0 ${stdout} = quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:m... ${stdout} Logs the given message with the given level. quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:memory_reservation='512', quota:memory_shares_level='custom', quota:memory_shares_share='20480' ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${properties} = quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:m... ${properties} Logs the given message with the given level. quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:memory_reservation='512', quota:memory_shares_level='custom', quota:memory_shares_share='20480' ${flavor_properties} ${properties} Makes a variable available everywhere within the scope of the current suite. ${flavor_properties} = quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:m... epa_capabilities regression sanity ${rc} echo ${flavor_properties} | grep "cpu_shares_level=custom" Runs the given command in the system and returns the return code. Running command 'echo quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:memory_reservation='512', quota:memory_shares_level='custom', quota:memory_shares_share='20480' | grep "cpu_shares_level=custom" 2>&1'. ${rc} = 0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${rc} echo ${flavor_properties} | grep "disk_io_shares_level=custom" Runs the given command in the system and returns the return code. Running command 'echo quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:memory_reservation='512', quota:memory_shares_level='custom', quota:memory_shares_share='20480' | grep "disk_io_shares_level=custom" 2>&1'. ${rc} = 0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${rc} echo ${flavor_properties} | grep "memory_shares_level=custom" Runs the given command in the system and returns the return code. Running command 'echo quota:cpu_reservation='512', quota:cpu_shares_level='custom', quota:cpu_shares_share='3000', quota:disk_io_shares_level='custom', quota:disk_io_shares_share='1000', quota:memory_limit='2048', quota:memory_reservation='512', quota:memory_shares_level='custom', quota:memory_shares_share='20480' | grep "memory_shares_level=custom" 2>&1'. ${rc} = 0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> epa_capabilities regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete epa_02-epa_quota_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep epa_02-epa_quota_test 2>&1'. ${rc} = 0 ${stdout} = epa_02-epa_quota_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. epa_02-epa_quota_test == epa_02-epa_quota_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep epa_02-epa_quota_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup epa_capabilities regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete epa_quota-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep epa_quota-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup epa_capabilities regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete epa_quota-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep epa_quota-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup epa_capabilities regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [EPA-02] Support for additional EPA capabilities. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_basic_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz 79d230a7-eeb6-4142-b3d7-1c363a9fbfcc ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 79d230a7-eeb6-4142-b3d7-1c363a9fbfcc hackfest_basic regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_basic_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_ns Base directory: /robot-systest/osm-packages/hackfest_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descr... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_ns Base directory: /robot-systest/osm-packages/hackfest_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_ns Package created: /robot-systest/osm-packages/hackfest_basic_ns.tar.gz 77c737af-86b0-4404-a6b4-2f0642bf51a8 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 77c737af-86b0-4404-a6b4-2f0642bf51a8 hackfest_basic regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name hfbasic --nsd_name hackfest_basic-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = 6b29f444-6f24-4b50-a8ff-3c0698247e9f ${stdout} Logs the given message with the given level. 6b29f444-6f24-4b50-a8ff-3c0698247e9f ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 6b29f444-6f24-4b50-a8ff-3c0698247e9f ${ns_id} Logs the given message with the given level. 6b29f444-6f24-4b50-a8ff-3c0698247e9f ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfbasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfbasic | 6b29f444-6f24-4b50-a8ff-3c0698247e9f | 2021-04-25T03:00:42 | BUILDING | INSTANTIATING (7656dfa1-2e48-40f0-aa31-4ceef6db20aa) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfbasic | 6b29f444-6f24-4b50-a8ff-3c0698247e9f | 2021-04-25T03:00:42 | BUILDING | INSTANTIATING (7656dfa1-2e48-40f0-aa31-4ceef6db20aa) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfbasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfbasic | 6b29f444-6f24-4b50-a8ff-3c0698247e9f | 2021-04-25T03:00:42 | BUILDING | INSTANTIATING (7656dfa1-2e48-40f0-aa31-4ceef6db20aa) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfbasic | 6b29f444-6f24-4b50-a8ff-3c0698247e9f | 2021-04-25T03:00:42 | BUILDING | INSTANTIATING (7656dfa1-2e48-40f0-aa31-4ceef6db20aa) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfbasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | hfbasic | 6b29f444-6f24-4b50-a8ff-3c0698247e9f | 2021-04-25T03:00:42 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfbasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | hfbasic | 6b29f444-6f24-4b50-a8ff-3c0698247e9f | 2021-04-25T03:00:42 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 6b29f444-6f24-4b50-a8ff-3c0698247e9f ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 6b29f444-6f24-4b50-a8ff-3c0698247e9f hackfest_basic regression sanity ${ip_addr} ${ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep 6b29f444-6f24-4b50-a8ff-3c0698247e9f | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.112 ${stdout} Logs the given message with the given level. 172.21.248.112 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.112 ${ip_addr} Logs the given message with the given level. 172.21.248.112 ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${vnf_ip_addr} = 172.21.248.112 hackfest_basic regression sanity ${vnf_ip_addr} ${result} ping -c 5 -W 1 ${host} > /dev/null && echo OK shell=True Runs a process and waits for it to complete. Starting process: ping -c 5 -W 1 172.21.248.112 > /dev/null && echo OK Waiting for process to complete. Process completed. ${result} = <result object with rc 0> all output: ${result.stdout} Logs the given message with the given level. all output: OK ${result.stdout} OK Fails if ``container`` does not contain ``item`` one or more times. hackfest_basic regression sanity 30s Waiting ssh daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting ssh daemon to be up ${vnf_ip_addr} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.112:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@hfbasic-1-hackfest-basic-vm-1:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. hackfest_basic regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete hfbasic 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfbasic 2>&1'. ${rc} = 0 ${stdout} = hfbasic ${stdout} ${ns} Fails if objects are equal after converting them to strings. hfbasic == hfbasic ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfbasic 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup hackfest_basic regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_basic-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_basic-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup hackfest_basic regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_basic-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_basic-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup hackfest_basic regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptor, instance and vim Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_cloudinit_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_cloudinit_vnf Base directory: /robot-systest/osm-packages/hackfest_cloudinit_vnf 1 Descriptors found to validate Validation OK List of charms in... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_cloudinit_vnf Base directory: /robot-systest/osm-packages/hackfest_cloudinit_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_cloudinit_vnf Package created: /robot-systest/osm-packages/hackfest_cloudinit_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_cloudinit_vnf.tar.gz a9c206e6-b86f-4332-b7b4-4180f1df1e53 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = a9c206e6-b86f-4332-b7b4-4180f1df1e53 hackfest_cloudinit regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_cloudinit_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_cloudinit_ns Base directory: /robot-systest/osm-packages/hackfest_cloudinit_ns 1 Descriptors found to validate Validation OK List of charms in t... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_cloudinit_ns Base directory: /robot-systest/osm-packages/hackfest_cloudinit_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_cloudinit_ns Package created: /robot-systest/osm-packages/hackfest_cloudinit_ns.tar.gz 076c9f59-0780-4b0a-9a7e-a416d724982c ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 076c9f59-0780-4b0a-9a7e-a416d724982c hackfest_cloudinit regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name hfcloudinit --nsd_name hackfest_cloudinit-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = 2d403da1-1e33-4c1b-b50f-67cd16cffa83 ${stdout} Logs the given message with the given level. 2d403da1-1e33-4c1b-b50f-67cd16cffa83 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 2d403da1-1e33-4c1b-b50f-67cd16cffa83 ${ns_id} Logs the given message with the given level. 2d403da1-1e33-4c1b-b50f-67cd16cffa83 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfcloudinit" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfcloudinit" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfcloudinit" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfcloudinit" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | BUILDING | INSTANTIATING (a93a5261-fcc9-43c0-9a1e-da6a2a31a774) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfcloudinit" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfcloudinit" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | hfcloudinit | 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | 2021-04-25T03:02:56 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 2d403da1-1e33-4c1b-b50f-67cd16cffa83 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 2d403da1-1e33-4c1b-b50f-67cd16cffa83 hackfest_cloudinit regression sanity ${ip_addr} ${ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep 2d403da1-1e33-4c1b-b50f-67cd16cffa83 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.112 ${stdout} Logs the given message with the given level. 172.21.248.112 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.112 ${ip_addr} Logs the given message with the given level. 172.21.248.112 ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${vnf_ip_addr} = 172.21.248.112 hackfest_cloudinit regression sanity 30s Waiting ssh daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting ssh daemon to be up ${vnf_ip_addr} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.112:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@hfcloudinit-1-mgmtvm-1:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. hackfest_cloudinit regression sanity ${stdout} ${vnf_ip_addr} ${username} ${password} ${privatekey} sudo cat /root/helloworld.txt ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.112:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 03:05:35 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@hfcloudinit-1-mgmtvm-1:~$ ${stdout} ${rc} ${command} return_rc=True return_stdout=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'sudo cat /root/helloworld.txt'. Command exited with return code 0. ${stdout} = # My new helloworld file ${rc} = 0 ${rc} Logs the given message with the given level. 0 ${stdout} Logs the given message with the given level. # My new helloworld file Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} = # My new helloworld file ${stdout} Logs the given message with the given level. # My new helloworld file hackfest_cloudinit regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete hfcloudinit 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfcloudinit 2>&1'. ${rc} = 0 ${stdout} = hfcloudinit ${stdout} ${ns} Fails if objects are equal after converting them to strings. hfcloudinit == hfcloudinit ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfcloudinit 2>&1'. ${rc} = 0 ${stdout} = hfcloudinit ${stdout} ${ns} Fails if objects are equal after converting them to strings. hfcloudinit == hfcloudinit ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfcloudinit 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup hackfest_cloudinit regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_cloudinit-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_cloudinit-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup hackfest_cloudinit regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_cloudinit-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_cloudinit-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup hackfest_cloudinit regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptor, instance and vim Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_multivdu_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_multivdu_vnf Base directory: /robot-systest/osm-packages/hackfest_multivdu_vnf 1 Descriptors found to validate Validation OK List of charms in t... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_multivdu_vnf Base directory: /robot-systest/osm-packages/hackfest_multivdu_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_multivdu_vnf Package created: /robot-systest/osm-packages/hackfest_multivdu_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_multivdu_vnf.tar.gz ce1aa988-cb95-4a96-903c-33100d103bc8 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = ce1aa988-cb95-4a96-903c-33100d103bc8 hackfest_multivdu regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_multivdu_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_multivdu_ns Base directory: /robot-systest/osm-packages/hackfest_multivdu_ns 1 Descriptors found to validate Validation OK List of charms in the... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_multivdu_ns Base directory: /robot-systest/osm-packages/hackfest_multivdu_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_multivdu_ns Package created: /robot-systest/osm-packages/hackfest_multivdu_ns.tar.gz 676c083b-753b-4770-be3e-177cb2a367e1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 676c083b-753b-4770-be3e-177cb2a367e1 hackfest_multivdu regression sanity ${status} ${message} Variable Should Exist ${publickey} Runs the given keyword with the given arguments and ignores possible error. ${publickey} Fails unless the given variable exists within the current scope. ${status} = PASS ${message} = None "${status}" == "FAIL" Set Global Variable ${publickey} ${EMPTY} Runs the given keyword with the given arguments, if ``condition`` is true. ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name hfmultivdu --nsd_name hackfest_multivdu-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = c0077ab1-d895-48a6-9a0f-f67dca717dd9 ${stdout} Logs the given message with the given level. c0077ab1-d895-48a6-9a0f-f67dca717dd9 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = c0077ab1-d895-48a6-9a0f-f67dca717dd9 ${ns_id} Logs the given message with the given level. c0077ab1-d895-48a6-9a0f-f67dca717dd9 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | BUILDING | INSTANTIATING (ce15e385-8eb3-4a0a-854c-e986b2d5a255) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="hfmultivdu" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | hfmultivdu | c0077ab1-d895-48a6-9a0f-f67dca717dd9 | 2021-04-25T03:06:24 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = c0077ab1-d895-48a6-9a0f-f67dca717dd9 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = c0077ab1-d895-48a6-9a0f-f67dca717dd9 ${wait_guard_for_vm_boot} Waiting for VM's daemons to be up and running Pauses the test executed for the given time. Slept 50 seconds Waiting for VM's daemons to be up and running hackfest_multivdu regression sanity ${ip_addr} ${ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep c0077ab1-d895-48a6-9a0f-f67dca717dd9 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.221 ${stdout} Logs the given message with the given level. 172.21.248.221 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.221 ${ip_addr} Logs the given message with the given level. 172.21.248.221 ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${vnf_ip_addr} = 172.21.248.221 hackfest_multivdu regression sanity ${vnf_ip_addr} ${result} ping -c 5 -W 1 ${host} > /dev/null && echo OK shell=True Runs a process and waits for it to complete. Starting process: ping -c 5 -W 1 172.21.248.221 > /dev/null && echo OK Waiting for process to complete. Process completed. ${result} = <result object with rc 0> all output: ${result.stdout} Logs the given message with the given level. all output: OK ${result.stdout} OK Fails if ``container`` does not contain ``item`` one or more times. hackfest_multivdu regression sanity ${status} ${message} Variable Should Exist ${privatekey} Runs the given keyword with the given arguments and ignores possible error. ${privatekey} Fails unless the given variable exists within the current scope. ${status} = PASS ${message} = None "${status}" == "FAIL" Set Global Variable ${privatekey} ${EMPTY} Runs the given keyword with the given arguments, if ``condition`` is true. ${vnf_ip_addr} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${password} Logs into the SSH server with the given ``username`` and ``password``. Logging into '172.21.248.221:22' as 'osm'. Read output: Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-22-generic x86_64) * Documentation: https://help.ubuntu.com/ Get cloud support with Ubuntu Advantage Cloud Guest: http://www.ubuntu.com/business/services/cloud 280 packages can be updated. 187 updates are security updates. Last login: Fri Apr 7 12:48:23 2017 osm@osm:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. hackfest_multivdu regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete hfmultivdu 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfmultivdu 2>&1'. ${rc} = 0 ${stdout} = hfmultivdu ${stdout} ${ns} Fails if objects are equal after converting them to strings. hfmultivdu == hfmultivdu ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfmultivdu 2>&1'. ${rc} = 0 ${stdout} = hfmultivdu ${stdout} ${ns} Fails if objects are equal after converting them to strings. hfmultivdu == hfmultivdu ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep hfmultivdu 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup hackfest_multivdu regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_multivdu-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_multivdu-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup hackfest_multivdu regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_multivdu-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_multivdu-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup hackfest_multivdu regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptor, instance and vim Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. %{K8S_CREDENTIALS} ${k8scluster_version} %{VIM_TARGET} %{VIM_MGMT_NET} ${k8scluster_name} ${rc} ${stdout} osm k8scluster-add --creds ${k8scluster_creds} --version ${k8scluster_version} --vim ${k8scluster_vim} --k8s-nets '{"net1": "${k8scluster_net}"}' ${k8scluster_name} --description "Robot cluster" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-add --creds /root/.kube/config --version v1 --vim osm --k8s-nets '{"net1": "osm-ext"}' k8s-test --description "Robot cluster" 2>&1'. ${rc} = 0 ${stdout} = cbcc34cb-a6a9-42b3-a42f-6cb454868706 ${stdout} Logs the given message with the given level. cbcc34cb-a6a9-42b3-a42f-6cb454868706 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${k8scluster_launch_max_wait_time} ${k8scluster_launch_pol_time} Check For K8s Cluster To Be Ready ${k8scluster_name} Runs the specified keyword and retries if it fails. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-... ${stdout} Logs the given message with the given level. +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +---... ${stdout} Logs the given message with the given level. +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | cbcc34cb-a6a9-42b3-a42f-6cb454868706 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | cbcc34cb-a6a9-42b3-a42f-6cb454868706 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED" 2>&1'. ${rc} = 0 ${stdout} = +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +---... ${stdout} Logs the given message with the given level. +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | cbcc34cb-a6a9-42b3-a42f-6cb454868706 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | cbcc34cb-a6a9-42b3-a42f-6cb454868706 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. k8scluster regression sanity ${k8scluster_name} ${rc} ${stdout} osm k8scluster-delete ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-delete k8s-test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${k8scluster_delete_max_wait_time} ${k8scluster_delete_pol_time} Check For K8s Cluster To Be Deleted ${k8scluster_name} Runs the specified keyword and retries if it fails. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} Verifies that the given item is empty. Length is 0 k8scluster regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting K8s Cluster Delete K8s Cluster ${k8scluster_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_simple_k8s_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_simple_k8s_vnf Base directory: /robot-systest/osm-packages/hackfest_simple_k8s_vnf 1 Descriptors found to validate Validation OK List of charms ... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_simple_k8s_vnf Base directory: /robot-systest/osm-packages/hackfest_simple_k8s_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_simple_k8s_vnf Package created: /robot-systest/osm-packages/hackfest_simple_k8s_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_simple_k8s_vnf.tar.gz 9b9e033b-ecea-438d-8d73-3b158646f7e9 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 9b9e033b-ecea-438d-8d73-3b158646f7e9 regression sanity simple_k8s '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_simple_k8s_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_simple_k8s_ns Base directory: /robot-systest/osm-packages/hackfest_simple_k8s_ns 1 Descriptors found to validate Validation OK List of charms in... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_simple_k8s_ns Base directory: /robot-systest/osm-packages/hackfest_simple_k8s_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_simple_k8s_ns Package created: /robot-systest/osm-packages/hackfest_simple_k8s_ns.tar.gz 21f3eaf5-ffcf-49d3-a3df-69f45d875ea9 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 21f3eaf5-ffcf-49d3-a3df-69f45d875ea9 regression sanity simple_k8s %{K8S_CREDENTIALS} ${k8scluster_version} %{VIM_TARGET} %{VIM_MGMT_NET} ${k8scluster_name} ${rc} ${stdout} osm k8scluster-add --creds ${k8scluster_creds} --version ${k8scluster_version} --vim ${k8scluster_vim} --k8s-nets '{"net1": "${k8scluster_net}"}' ${k8scluster_name} --description "Robot cluster" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-add --creds /root/.kube/config --version v1 --vim osm --k8s-nets '{"net1": "osm-ext"}' k8s-test --description "Robot cluster" 2>&1'. ${rc} = 0 ${stdout} = e897fbe4-c389-47a8-910e-d1edb0882b64 ${stdout} Logs the given message with the given level. e897fbe4-c389-47a8-910e-d1edb0882b64 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${k8scluster_launch_max_wait_time} ${k8scluster_launch_pol_time} Check For K8s Cluster To Be Ready ${k8scluster_name} Runs the specified keyword and retries if it fails. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-... ${stdout} Logs the given message with the given level. +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +---... ${stdout} Logs the given message with the given level. +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | e897fbe4-c389-47a8-910e-d1edb0882b64 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | e897fbe4-c389-47a8-910e-d1edb0882b64 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED" 2>&1'. ${rc} = 0 ${stdout} = +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +---... ${stdout} Logs the given message with the given level. +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | e897fbe4-c389-47a8-910e-d1edb0882b64 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | e897fbe4-c389-47a8-910e-d1edb0882b64 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. k8scluster regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name simple-k8s --nsd_name hackfest-simple-k8s-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' 2>&1'. ${rc} = 0 ${stdout} = 37ea88c1-0373-465d-bf79-40fb28c869db ${stdout} Logs the given message with the given level. 37ea88c1-0373-465d-bf79-40fb28c869db ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 37ea88c1-0373-465d-bf79-40fb28c869db ${ns_id} Logs the given message with the given level. 37ea88c1-0373-465d-bf79-40fb28c869db ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="simple-k8s" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | simple-k8s | 37ea88c1-0373-465d-bf79-40fb28c869db | 2021-04-25T03:13:20 | BUILDING | INSTANTIATING (3517f798-fefa-4b51-baed-de392e496cd2) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | simple-k8s | 37ea88c1-0373-465d-bf79-40fb28c869db | 2021-04-25T03:13:20 | BUILDING | INSTANTIATING (3517f798-fefa-4b51-baed-de392e496cd2) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="simple-k8s" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | simple-k8s | 37ea88c1-0373-465d-bf79-40fb28c869db | 2021-04-25T03:13:20 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="simple-k8s" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | simple-k8s | 37ea88c1-0373-465d-bf79-40fb28c869db | 2021-04-25T03:13:20 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 37ea88c1-0373-465d-bf79-40fb28c869db ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 37ea88c1-0373-465d-bf79-40fb28c869db regression sanity simple_k8s ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete simple-k8s 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep simple-k8s 2>&1'. ${rc} = 0 ${stdout} = simple-k8s ${stdout} ${ns} Fails if objects are equal after converting them to strings. simple-k8s == simple-k8s ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep simple-k8s 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup regression sanity simple_k8s ${k8scluster_name} ${rc} ${stdout} osm k8scluster-delete ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-delete k8s-test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${k8scluster_delete_max_wait_time} ${k8scluster_delete_pol_time} Check For K8s Cluster To Be Deleted ${k8scluster_name} Runs the specified keyword and retries if it fails. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} Verifies that the given item is empty. Length is 0 k8scluster regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest-simple-k8s-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest-simple-k8s-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup regression sanity simple_k8s ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest-simple-k8s-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest-simple-k8s-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup regression sanity simple_k8s Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptor, instance and vim Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete K8s Cluster ${k8scluster_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/openldap_knf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/openldap_knf Base directory: /robot-systest/osm-packages/openldap_knf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] ... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/openldap_knf Base directory: /robot-systest/osm-packages/openldap_knf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: openldap_knf Package created: /robot-systest/osm-packages/openldap_knf.tar.gz Uploading package /robot-systest/osm-packages/openldap_knf.tar.gz e8750c33-1300-4d7c-b4b6-61c19bc7f730 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = e8750c33-1300-4d7c-b4b6-61c19bc7f730 openldap regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/openldap_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/openldap_ns Base directory: /robot-systest/osm-packages/openldap_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Ad... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/openldap_ns Base directory: /robot-systest/osm-packages/openldap_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: openldap_ns Package created: /robot-systest/osm-packages/openldap_ns.tar.gz 85e4d2f3-50b3-4230-865f-3946cc14eafe ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 85e4d2f3-50b3-4230-865f-3946cc14eafe openldap regression sanity %{K8S_CREDENTIALS} ${k8scluster_version} %{VIM_TARGET} %{VIM_MGMT_NET} ${k8scluster_name} ${rc} ${stdout} osm k8scluster-add --creds ${k8scluster_creds} --version ${k8scluster_version} --vim ${k8scluster_vim} --k8s-nets '{"net1": "${k8scluster_net}"}' ${k8scluster_name} --description "Robot cluster" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-add --creds /root/.kube/config --version v1 --vim osm --k8s-nets '{"net1": "osm-ext"}' k8s-test --description "Robot cluster" 2>&1'. ${rc} = 0 ${stdout} = b18785be-5202-461d-80cb-74beb8af80d4 ${stdout} Logs the given message with the given level. b18785be-5202-461d-80cb-74beb8af80d4 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${k8scluster_launch_max_wait_time} ${k8scluster_launch_pol_time} Check For K8s Cluster To Be Ready ${k8scluster_name} Runs the specified keyword and retries if it fails. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-... ${stdout} Logs the given message with the given level. +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-... ${stdout} Logs the given message with the given level. +------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+------+----+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +------+----+-----+-------------------+-------------------+ +------+----+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED,DEGRADED" 2>&1'. ${rc} = 0 ${stdout} = +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +---... ${stdout} Logs the given message with the given level. +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | b18785be-5202-461d-80cb-74beb8af80d4 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | b18785be-5202-461d-80cb-74beb8af80d4 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED" Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" --filter _admin.operationalState="ENABLED" 2>&1'. ${rc} = 0 ${stdout} = +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +---... ${stdout} Logs the given message with the given level. +----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | b18785be-5202-461d-80cb-74beb8af80d4 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+ ${rc} ${stdout} echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'echo "+----------+--------------------------------------+-----+-------------------+-------------------+ | Name | Id | VIM | Operational State | Op. state details | +----------+--------------------------------------+-----+-------------------+-------------------+ | k8s-test | b18785be-5202-461d-80cb-74beb8af80d4 | osm | ENABLED | Helm: ENABLED | | | | | | Juju: ENABLED | +----------+--------------------------------------+-----+-------------------+-------------------+" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} ${k8scluster_name} Fails if objects are unequal after converting them to strings. openldap regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name ldap --nsd_name openldap_ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' 2>&1'. ${rc} = 0 ${stdout} = 150f2061-58f4-4721-8cca-17d0d5b17ef8 ${stdout} Logs the given message with the given level. 150f2061-58f4-4721-8cca-17d0d5b17ef8 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 150f2061-58f4-4721-8cca-17d0d5b17ef8 ${ns_id} Logs the given message with the given level. 150f2061-58f4-4721-8cca-17d0d5b17ef8 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="ldap" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ldap | 150f2061-58f4-4721-8cca-17d0d5b17ef8 | 2021-04-25T03:16:56 | BUILDING | INSTANTIATING (f24bb709-c0b3-4fbf-a879-0e9bac308fbc) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ldap | 150f2061-58f4-4721-8cca-17d0d5b17ef8 | 2021-04-25T03:16:56 | BUILDING | INSTANTIATING (f24bb709-c0b3-4fbf-a879-0e9bac308fbc) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="ldap" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ldap | 150f2061-58f4-4721-8cca-17d0d5b17ef8 | 2021-04-25T03:16:56 | BUILDING | INSTANTIATING (f24bb709-c0b3-4fbf-a879-0e9bac308fbc) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ldap | 150f2061-58f4-4721-8cca-17d0d5b17ef8 | 2021-04-25T03:16:56 | BUILDING | INSTANTIATING (f24bb709-c0b3-4fbf-a879-0e9bac308fbc) | N/A | +------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="ldap" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ldap | 150f2061-58f4-4721-8cca-17d0d5b17ef8 | 2021-04-25T03:16:56 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="ldap" 2>&1'. ${rc} = 0 ${stdout} = +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date ... ${stdout} Logs the given message with the given level. +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ldap | 150f2061-58f4-4721-8cca-17d0d5b17ef8 | 2021-04-25T03:16:56 | READY | IDLE (None) | N/A | +------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 150f2061-58f4-4721-8cca-17d0d5b17ef8 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 150f2061-58f4-4721-8cca-17d0d5b17ef8 openldap regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete ldap 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep ldap 2>&1'. ${rc} = 0 ${stdout} = ldap ${stdout} ${ns} Fails if objects are equal after converting them to strings. ldap == ldap ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep ldap 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup openldap regression sanity ${k8scluster_name} ${rc} ${stdout} osm k8scluster-delete ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-delete k8s-test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${k8scluster_delete_max_wait_time} ${k8scluster_delete_pol_time} Check For K8s Cluster To Be Deleted ${k8scluster_name} Runs the specified keyword and retries if it fails. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 0 ${stdout} = k8s-test ${stdout} Verifies that the given item is empty. Length is 8 'k8s-test' should be empty. ${k8scluster_name} ${rc} ${stdout} osm k8scluster-list --filter name="${k8scluster_name}" | awk '{print $2}' | grep ${k8scluster_name} Runs the given command in the system and returns the RC and output. Running command 'osm k8scluster-list --filter name="k8s-test" | awk '{print $2}' | grep k8s-test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} Verifies that the given item is empty. Length is 0 openldap regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete openldap_ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep openldap_ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup openldap regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete openldap_knf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep openldap_knf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup openldap regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptor, instance and vim Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete K8s Cluster ${k8scluster_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. ${project_1_name} ${project_1_quotas} ${project_name} Verifies that the given item is not empty. Length is 16 ${project_quotas} Verifies that the given item is not empty. Length is 29 ${rc} ${stdout} osm project-create ${project_name} --quotas ${project_quotas} Runs the given command in the system and returns the RC and output. Running command 'osm project-create quotas_01_proj_1 --quotas vnfds=1,nsds=2,ns_instances=3 2>&1'. ${rc} = 0 ${stdout} = 66143951-4a6c-4b85-90c0-9f3aaa9a3297 ${stdout} Logs the given message with the given level. 66143951-4a6c-4b85-90c0-9f3aaa9a3297 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_1_vnfds} ${project_1_name} vnfds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 5 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_1 | grep 'vnfds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_1_vnfds} = 1 1 ${project_1_vnfds} Fails if objects are unequal after converting them to integers. ${project_1_nsds} ${project_1_name} nsds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 4 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_1 | grep 'nsds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 2 ${stdout} Logs the given message with the given level. 2 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_1_nsds} = 2 2 ${project_1_nsds} Fails if objects are unequal after converting them to integers. ${project_1_ns_instances} ${project_1_name} ns_instances ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 12 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_1 | grep 'ns_instances' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 3 ${stdout} Logs the given message with the given level. 3 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_1_ns_instances} = 3 3 ${project_1_ns_instances} Fails if objects are unequal after converting them to integers. quota_enforcement regression sanity ${project_2_name} ${project_2_quotas} ${project_name} Verifies that the given item is not empty. Length is 16 ${project_quotas} Verifies that the given item is not empty. Length is 29 ${rc} ${stdout} osm project-create ${project_name} --quotas ${project_quotas} Runs the given command in the system and returns the RC and output. Running command 'osm project-create quotas_01_proj_2 --quotas vnfds=1,nsds=1,ns_instances=1 2>&1'. ${rc} = 0 ${stdout} = dd783a81-85fc-4d29-bbf1-5ca67bd5279b ${stdout} Logs the given message with the given level. dd783a81-85fc-4d29-bbf1-5ca67bd5279b ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_2_vnfds} ${project_2_name} vnfds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 5 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_2 | grep 'vnfds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_2_vnfds} = 1 1 ${project_2_vnfds} Fails if objects are unequal after converting them to integers. ${project_2_nsds} ${project_2_name} nsds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 4 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_2 | grep 'nsds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_2_nsds} = 1 1 ${project_2_nsds} Fails if objects are unequal after converting them to integers. ${project_2_ns_instances} ${project_2_name} ns_instances ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 12 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_2 | grep 'ns_instances' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_2_ns_instances} = 1 1 ${project_2_ns_instances} Fails if objects are unequal after converting them to integers. quota_enforcement regression sanity ${rc} ${stdout} osm user-create ${user_name} --password ${user_password} --project-role-mappings ${project_1_name},project_admin --project-role-mappings ${project_2_name},project_admin Runs the given command in the system and returns the RC and output. Running command 'osm user-create quotas_01_user --password quotas_01_pass --project-role-mappings quotas_01_proj_1,project_admin --project-role-mappings quotas_01_proj_2,project_admin 2>&1'. ${rc} = 0 ${stdout} = ae2b518d-7078-45c1-a9eb-3b1def033abe ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${user_name} ${project_1_name} ${user_name} Verifies that the given item is not empty. Length is 14 ${project_name} Verifies that the given item is not empty. Length is 16 ${rc} ${stdout} osm user-show ${user_name} | grep "project_name" | grep "${project_name}" Runs the given command in the system and returns the RC and output. Running command 'osm user-show quotas_01_user | grep "project_name" | grep "quotas_01_proj_1" 2>&1'. ${rc} = 0 ${stdout} = | | "project_name": "quotas_01_proj_1", | ${stdout} Logs the given message with the given level. | | "project_name": "quotas_01_proj_1", | ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${user_name} ${project_2_name} ${user_name} Verifies that the given item is not empty. Length is 14 ${project_name} Verifies that the given item is not empty. Length is 16 ${rc} ${stdout} osm user-show ${user_name} | grep "project_name" | grep "${project_name}" Runs the given command in the system and returns the RC and output. Running command 'osm user-show quotas_01_user | grep "project_name" | grep "quotas_01_proj_2" 2>&1'. ${rc} = 0 ${stdout} = | | "project_name": "quotas_01_proj_2", | ${stdout} Logs the given message with the given level. | | "project_name": "quotas_01_proj_2", | ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> quota_enforcement regression sanity ${project_1_name} ${project_3_name} ${project_name} Verifies that the given item is not empty. Length is 16 ${new_name} Verifies that the given item is not empty. Length is 16 ${rc} ${stdout} osm project-update ${project_name} --name ${new_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-update quotas_01_proj_1 --name quotas_01_proj_3 2>&1'. ${rc} = 0 ${stdout} = Updated ${stdout} Logs the given message with the given level. Updated ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_vnfds} ${project_3_name} vnfds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 5 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_3 | grep 'vnfds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_vnfds} = 1 1 ${project_3_vnfds} Fails if objects are unequal after converting them to integers. ${project_3_nsds} ${project_3_name} nsds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 4 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_3 | grep 'nsds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 2 ${stdout} Logs the given message with the given level. 2 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_nsds} = 2 2 ${project_3_nsds} Fails if objects are unequal after converting them to integers. ${project_3_ns_instances} ${project_3_name} ns_instances ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 12 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_3 | grep 'ns_instances' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 3 ${stdout} Logs the given message with the given level. 3 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_ns_instances} = 3 3 ${project_3_ns_instances} Fails if objects are unequal after converting them to integers. ${user_name} ${project_3_name} ${user_name} Verifies that the given item is not empty. Length is 14 ${project_name} Verifies that the given item is not empty. Length is 16 ${rc} ${stdout} osm user-show ${user_name} | grep "project_name" | grep "${project_name}" Runs the given command in the system and returns the RC and output. Running command 'osm user-show quotas_01_user | grep "project_name" | grep "quotas_01_proj_3" 2>&1'. ${rc} = 0 ${stdout} = | | "project_name": "quotas_01_proj_3", | ${stdout} Logs the given message with the given level. | | "project_name": "quotas_01_proj_3", | ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> quota_enforcement regression sanity ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v1;name=v1' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v1;name=v1' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v1;name=v1' ${param_name} = override='id=v1;name ${param_value} = v1' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v1;name=v1' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v1;name=v1' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz 1dd2fb91-d523-4cce-96fc-b4a18a559b71 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> * Create VNFD In Project ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v2;name=v2' Runs the keyword and checks that the expected error occurred. ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v2;name=v2' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v2;name=v2' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v2;name=v2' ${param_name} = override='id=v2;name ${param_value} = v2' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v2;name=v2' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v2;name=v2' 2>&1'. ${rc} = 1 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz ERROR: Error 422: { "code": "UNPROCESSABLE_ENTITY", "status": 422, "detail": "quota (vnfds=1) exceeded for project quotas_01_proj_3 (66143951-4a6c-4b85-90c0-9f3aaa9a3297)" } ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 quota_enforcement regression sanity ${project_3_name} ${project_3_quotas} ${project_name} Verifies that the given item is not empty. Length is 16 ${project_quotas} Verifies that the given item is not empty. Length is 27 ${rc} ${stdout} osm project-update ${project_name} --quotas ${project_quotas} Runs the given command in the system and returns the RC and output. Running command 'osm project-update quotas_01_proj_3 --quotas vnfds=5,nsds=,ns_instances= 2>&1'. ${rc} = 0 ${stdout} = Updated ${stdout} Logs the given message with the given level. Updated ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_vnfds} ${project_3_name} vnfds ${project_name} Verifies that the given item is not empty. Length is 16 ${quotas_name} Verifies that the given item is not empty. Length is 5 ${rc} ${stdout} osm project-show ${project_name} | grep '${quotas_name}' | awk -F ',|: ' '{print $2}' | awk '{print $1}' Runs the given command in the system and returns the RC and output. Running command 'osm project-show quotas_01_proj_3 | grep 'vnfds' | awk -F ',|: ' '{print $2}' | awk '{print $1}' 2>&1'. ${rc} = 0 ${stdout} = 5 ${stdout} Logs the given message with the given level. 5 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_vnfds} = 5 5 ${project_3_vnfds} Fails if objects are unequal after converting them to integers. quota_enforcement regression sanity ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v2;name=v2' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v2;name=v2' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v2;name=v2' ${param_name} = override='id=v2;name ${param_value} = v2' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v2;name=v2' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v2;name=v2' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz dc606112-6613-4dbb-a9fa-99f5f147bc44 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v3;name=v3' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v3;name=v3' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v3;name=v3' ${param_name} = override='id=v3;name ${param_value} = v3' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v3;name=v3' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v3;name=v3' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz fe2f3e05-7ce0-4cc1-9d47-bec3662bd1c0 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v4;name=v4' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v4;name=v4' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v4;name=v4' ${param_name} = override='id=v4;name ${param_value} = v4' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v4;name=v4' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v4;name=v4' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz 11decb08-35de-4f35-a52e-9d5b6c3795f3 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v5;name=v5' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v5;name=v5' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v5;name=v5' ${param_name} = override='id=v5;name ${param_value} = v5' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v5;name=v5' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v5;name=v5' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz 1e40b7be-4d2d-4d69-b0c2-f8cd0cd72439 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> * Create VNFD In Project ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v6;name=v6' Runs the keyword and checks that the expected error occurred. ${project_3_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=v6;name=v6' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=v6;name=v6' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=v6;name=v6' ${param_name} = override='id=v6;name ${param_value} = v6' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v6;name=v6' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=v6;name=v6' 2>&1'. ${rc} = 1 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz ERROR: Error 422: { "code": "UNPROCESSABLE_ENTITY", "status": 422, "detail": "quota (vnfds=5) exceeded for project quotas_01_proj_3 (66143951-4a6c-4b85-90c0-9f3aaa9a3297)" } ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 quota_enforcement regression sanity ${project_2_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=vp2_1;name=vp2_1' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=vp2_1;name=vp2_1' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=vp2_1;name=vp2_1' ${param_name} = override='id=vp2_1;name ${param_value} = vp2_1' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=vp2_1;name=vp2_1' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=vp2_1;name=vp2_1' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz 494674e1-e495-4918-89d3-c70eb2c1085e ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> * Create VNFD In Project ${project_2_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=vp2_2;name=vp2_2' Runs the keyword and checks that the expected error occurred. ${project_2_name} ${vnfd_pkg} ${user_name} ${user_password} override='id=vp2_2;name=vp2_2' Onboards a VNFD package into an OSM project. Extra parameters (such as 'override') are given to this function in name=value format. These parameters will be appended to the 'osm vnfpkg-create' command with the next syntax: --param_name=param_value ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 46 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${osm_pkg_create_command} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-create ${vnfd_pkg} Returns the given values which can then be assigned to a variables. ${osm_pkg_create_command} = osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf ${param} @{optional_parameters} override='id=vp2_2;name=vp2_2' ${match} ${param_name} ${param_value} ${param} (.+)=(.+) msg=Syntax error in optional parameters Fails if ``string`` does not match ``pattern`` as a regular expression. ${match} = override='id=vp2_2;name=vp2_2' ${param_name} = override='id=vp2_2;name ${param_value} = vp2_2' ${osm_pkg_create_command} ${osm_pkg_create_command} --${param_name}=${param_value} Catenates the given items together and returns the resulted string. ${osm_pkg_create_command} = osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=vp2_2;name=vp2_2' ${rc} ${stdout} ${osm_pkg_create_command} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-create /robot-systest/osm-packages/hackfest_basic_vnf --override='id=vp2_2;name=vp2_2' 2>&1'. ${rc} = 1 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz ERROR: Error 422: { "code": "UNPROCESSABLE_ENTITY", "status": 422, "detail": "quota (vnfds=1) exceeded for project quotas_01_proj_2 (dd783a81-85fc-4d29-bbf1-5ca67bd5279b)" } ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 quota_enforcement regression sanity ${rc} ${stdout} osm --project ${project_3_name} --password ${user_password} --user ${user_name} vnfpkg-show vp2_1 Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --password quotas_01_pass --user quotas_01_user vnfpkg-show vp2_1 2>&1'. ${rc} = 1 ${stdout} = ERROR: vnfd vp2_1 not found ${stdout} Logs the given message with the given level. ERROR: vnfd vp2_1 not found ${rc} ${success_return_code} Fails if objects are equal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${rc} ${stdout} osm --project ${project_2_name} --password ${user_password} --user ${user_name} vnfpkg-show v1 Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_2 --password quotas_01_pass --user quotas_01_user vnfpkg-show v1 2>&1'. ${rc} = 1 ${stdout} = ERROR: vnfd v1 not found ${stdout} Logs the given message with the given level. ERROR: vnfd v1 not found ${rc} ${success_return_code} Fails if objects are equal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> quota_enforcement regression sanity ${project_2_name} vp2_1 ${user_name} ${user_password} ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 5 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${rc} ${stdout} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-delete ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_2 --user quotas_01_user --password quotas_01_pass vnfpkg-delete vp2_1 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> cleanup quota_enforcement regression sanity ${project_3_name} v1 ${user_name} ${user_password} ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 2 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${rc} ${stdout} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-delete ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-delete v1 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} v2 ${user_name} ${user_password} ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 2 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${rc} ${stdout} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-delete ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-delete v2 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} v3 ${user_name} ${user_password} ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 2 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${rc} ${stdout} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-delete ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-delete v3 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} v4 ${user_name} ${user_password} ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 2 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${rc} ${stdout} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-delete ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-delete v4 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_3_name} v5 ${user_name} ${user_password} ${project_name} Verifies that the given item is not empty. Length is 16 ${vnfd_pkg} Verifies that the given item is not empty. Length is 2 ${project_user} Verifies that the given item is not empty. Length is 14 ${user_password} Verifies that the given item is not empty. Length is 14 ${rc} ${stdout} osm --project ${project_name} --user ${project_user} --password ${user_password} vnfpkg-delete ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm --project quotas_01_proj_3 --user quotas_01_user --password quotas_01_pass vnfpkg-delete v5 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> cleanup quota_enforcement regression sanity * Delete Project ${project_2_name} Runs the keyword and checks that the expected error occurred. ${project_2_name} ${rc} ${stdout} osm project-delete ${project_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-delete quotas_01_proj_2 2>&1'. ${rc} = 1 ${stdout} = ERROR: Error 409: { "code": "CONFLICT", "status": 409, "detail": "Project 'quotas_01_proj_2' (dd783a81-85fc-4d29-bbf1-5ca67bd5279b) is being used by user 'quotas_01_user'" } ${stdout} Logs the given message with the given level. ERROR: Error 409: { "code": "CONFLICT", "status": 409, "detail": "Project 'quotas_01_proj_2' (dd783a81-85fc-4d29-bbf1-5ca67bd5279b) is being used by user 'quotas_01_user'" } ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> 1 != 0 ${user_name} ${project_2_name} ${user_name} Verifies that the given item is not empty. Length is 14 ${project_name} Verifies that the given item is not empty. Length is 16 ${rc} ${stdout} osm user-update ${user_name} --remove-project ${project_name} Runs the given command in the system and returns the RC and output. Running command 'osm user-update quotas_01_user --remove-project quotas_01_proj_2 2>&1'. ${rc} = 0 ${stdout} = Updated ${stdout} Logs the given message with the given level. Updated ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${project_2_name} ${rc} ${stdout} osm project-delete ${project_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-delete quotas_01_proj_2 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> cleanup quota_enforcement regression sanity ${rc} osm user-delete ${user_name} Runs the given command in the system and returns the return code. Running command 'osm user-delete quotas_01_user 2>&1'. ${rc} = 0 cleanup quota_enforcement regression sanity ${project_3_name} ${rc} ${stdout} osm project-delete ${project_name} Runs the given command in the system and returns the RC and output. Running command 'osm project-delete quotas_01_proj_3 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> cleanup quota_enforcement regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Run Keyword And Ignore Error Delete VNFD In Project ${project_2_name} vp2_1 ${user_name} ${user_password} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete VNFD In Project ${project_3_name} v1 ${user_name} ${user_password} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete VNFD In Project ${project_3_name} v2 ${user_name} ${user_password} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete VNFD In Project ${project_3_name} v3 ${user_name} ${user_password} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete VNFD In Project ${project_3_name} v4 ${user_name} ${user_password} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete VNFD In Project ${project_3_name} v5 ${user_name} ${user_password} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete Project ${project_1_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete Project ${project_2_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Run Keyword And Ignore Error Delete Project ${project_3_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. osm user-delete ${user_name} Runs the given command in the system and returns the return code. Running command 'osm user-delete quotas_01_user 2>&1'. [QUOTAS-01] Quota enforcement. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_basic_metrics_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_metrics_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_vnf 1 Descriptors found to validate Validation OK List of c... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_metrics_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_metrics_vnf Package created: /robot-systest/osm-packages/hackfest_basic_metrics_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_metrics_vnf.tar.gz 3efee185-6529-477f-8be9-086980099c94 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 3efee185-6529-477f-8be9-086980099c94 regression sanity vnf_vim_metrics '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_basic_metrics_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_metrics_ns Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_ns 1 Descriptors found to validate Validation OK List of cha... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_metrics_ns Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_metrics_ns Package created: /robot-systest/osm-packages/hackfest_basic_metrics_ns.tar.gz 64eb80e2-839b-4b61-888f-7e56d46b1948 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 64eb80e2-839b-4b61-888f-7e56d46b1948 regression sanity vnf_vim_metrics ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name sa_01-vnf_with_vim_metrics_test --nsd_name hackfest_basic-ns-metrics --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = cbc6e2fe-44ac-482c-906b-3a0660074bb7 ${stdout} Logs the given message with the given level. cbc6e2fe-44ac-482c-906b-3a0660074bb7 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = cbc6e2fe-44ac-482c-906b-3a0660074bb7 ${ns_id} Logs the given message with the given level. cbc6e2fe-44ac-482c-906b-3a0660074bb7 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_01-vnf_with_vim_metrics_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_01-vnf_with_vim_metrics_test | cbc6e2fe-44ac-482c-906b-3a0660074bb7 | 2021-04-25T03:20:33 | BUILDING | INSTANTIATING (9970a5de-97fd-4e37-a148-966fbf53d2ed) | N/A | +---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_01-vnf_with_vim_metrics_test | cbc6e2fe-44ac-482c-906b-3a0660074bb7 | 2021-04-25T03:20:33 | BUILDING | INSTANTIATING (9970a5de-97fd-4e37-a148-966fbf53d2ed) | N/A | +---------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_01-vnf_with_vim_metrics_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_01-vnf_with_vim_metrics_test | cbc6e2fe-44ac-482c-906b-3a0660074bb7 | 2021-04-25T03:20:33 | READY | IDLE (None) | N/A | +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_01-vnf_with_vim_metrics_test" 2>&1'. ${rc} = 0 ${stdout} = +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_01-vnf_with_vim_metrics_test | cbc6e2fe-44ac-482c-906b-3a0660074bb7 | 2021-04-25T03:20:33 | READY | IDLE (None) | N/A | +---------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = cbc6e2fe-44ac-482c-906b-3a0660074bb7 ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = cbc6e2fe-44ac-482c-906b-3a0660074bb7 regression sanity vnf_vim_metrics ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_1_name} msg=Prometheus first metric name is not available Fails unless the given variable exists within the current scope. ${metric_2_name} msg=Prometheus second metric name is not available Fails unless the given variable exists within the current scope. ${metric_1_value} 6 times 2 minutes Get Metric ${prometheus_host} ${prometheus_port} ${metric_1_name} Runs the specified keyword and retries if it fails. ${prometheus_host} ${prometheus_port} ${metric_1_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:21:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_1_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:23:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_1_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:25:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_1_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:27:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_1_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:29:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_1_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:31:07 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. Keyword 'Get Metric' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found ${metric_1_value} > 0 Fail msg=The metric '${metric_1_name}' value is '${metric_1_value}' Runs the given keyword with the given arguments if ``condition`` is false. ${metric_2_value} 6 times 2 minutes Get Metric ${prometheus_host} ${prometheus_port} ${metric_2_name} Runs the specified keyword and retries if it fails. ${metric_2_value} > 0 Fail msg=The metric '${metric_2_name}' value is '${metric_2_value}' Runs the given keyword with the given arguments if ``condition`` is false. regression sanity vnf_vim_metrics Keyword 'Get Metric' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete sa_01-vnf_with_vim_metrics_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_01-vnf_with_vim_metrics_test 2>&1'. ${rc} = 0 ${stdout} = sa_01-vnf_with_vim_metrics_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. sa_01-vnf_with_vim_metrics_test == sa_01-vnf_with_vim_metrics_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_01-vnf_with_vim_metrics_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup regression sanity vnf_vim_metrics ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_basic-ns-metrics 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_basic-ns-metrics 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup regression sanity vnf_vim_metrics ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_basic_metrics-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_basic_metrics-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup regression sanity vnf_vim_metrics Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [SA-01] VNF with VIM-based metrics. '%{PACKAGES_FOLDER}/${vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_basic_metrics_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_metrics_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_vnf 1 Descriptors found to validate Validation OK List of c... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_metrics_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_metrics_vnf Package created: /robot-systest/osm-packages/hackfest_basic_metrics_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_metrics_vnf.tar.gz 7be4f995-c803-49d5-8bf5-c1be5e61a5cc ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 7be4f995-c803-49d5-8bf5-c1be5e61a5cc regression sanity vnf_vim_metrics_autoscaling '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_basic_metrics_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_metrics_ns Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_ns 1 Descriptors found to validate Validation OK List of cha... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_metrics_ns Base directory: /robot-systest/osm-packages/hackfest_basic_metrics_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_metrics_ns Package created: /robot-systest/osm-packages/hackfest_basic_metrics_ns.tar.gz 9d90c4ce-76d1-4ce8-9f08-e605bc1634da ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 9d90c4ce-76d1-4ce8-9f08-e605bc1634da regression sanity vnf_vim_metrics_autoscaling ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name sa_02-vnf_with_vim_metrics_and_autoscaling_test --nsd_name hackfest_basic-ns-metrics --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = 1e45425b-d25e-4d72-a3ec-ae78a36ddeac ${stdout} Logs the given message with the given level. 1e45425b-d25e-4d72-a3ec-ae78a36ddeac ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = 1e45425b-d25e-4d72-a3ec-ae78a36ddeac ${ns_id} Logs the given message with the given level. 1e45425b-d25e-4d72-a3ec-ae78a36ddeac ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_02-vnf_with_vim_metrics_and_autoscaling_test" 2>&1'. ${rc} = 0 ${stdout} = +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns ... ${stdout} Logs the given message with the given level. +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_02-vnf_with_vim_metrics_and_autoscaling_test | 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | 2021-04-25T03:31:38 | BUILDING | INSTANTIATING (fdaae73a-43a1-4836-a522-c098e3572ffd) | N/A | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_02-vnf_with_vim_metrics_and_autoscaling_test | 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | 2021-04-25T03:31:38 | BUILDING | INSTANTIATING (fdaae73a-43a1-4836-a522-c098e3572ffd) | N/A | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_02-vnf_with_vim_metrics_and_autoscaling_test" 2>&1'. ${rc} = 0 ${stdout} = +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns ... ${stdout} Logs the given message with the given level. +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_02-vnf_with_vim_metrics_and_autoscaling_test | 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | 2021-04-25T03:31:38 | BUILDING | INSTANTIATING (fdaae73a-43a1-4836-a522-c098e3572ffd) | N/A | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_02-vnf_with_vim_metrics_and_autoscaling_test | 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | 2021-04-25T03:31:38 | BUILDING | INSTANTIATING (fdaae73a-43a1-4836-a522-c098e3572ffd) | N/A | +-------------------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_02-vnf_with_vim_metrics_and_autoscaling_test" 2>&1'. ${rc} = 0 ${stdout} = +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_02-vnf_with_vim_metrics_and_autoscaling_test | 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | 2021-04-25T03:31:38 | READY | IDLE (None) | N/A | +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_02-vnf_with_vim_metrics_and_autoscaling_test" 2>&1'. ${rc} = 0 ${stdout} = +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_02-vnf_with_vim_metrics_and_autoscaling_test | 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | 2021-04-25T03:31:38 | READY | IDLE (None) | N/A | +-------------------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 1e45425b-d25e-4d72-a3ec-ae78a36ddeac ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = 1e45425b-d25e-4d72-a3ec-ae78a36ddeac regression sanity vnf_vim_metrics_autoscaling @{vnfr_list} ${ns_id} Return a list with the IDs of the VNF records of a NS instance. ${rc} ${stdout} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | awk '{print $2}' 2>&1'. ${rc} = 0 ${stdout} = 36a89de3-e805-46db-a305-30f15275d06e ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> @{vdur} ${stdout} Splits the ``string`` using ``separator`` as a delimiter string. @{vdur} = [ 36a89de3-e805-46db-a305-30f15275d06e ] @{vnfr_list} = [ 36a89de3-e805-46db-a305-30f15275d06e ] ${vnfr_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 36a89de3-e805-46db-a305-30f15275d06e ${vnf_id} ${vnfr_list}[0] Makes a variable available everywhere within the scope of the current suite. ${vnf_id} = 36a89de3-e805-46db-a305-30f15275d06e regression sanity vnf_vim_metrics_autoscaling ${ip_addr} ${ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep 1e45425b-d25e-4d72-a3ec-ae78a36ddeac | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.102 ${stdout} Logs the given message with the given level. 172.21.248.102 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.102 ${ip_addr} Logs the given message with the given level. 172.21.248.102 ${vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${vnf_ip_addr} = 172.21.248.102 regression sanity vnf_vim_metrics_autoscaling ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} 6 times 2 minutes Get Metric ${prometheus_host} ${prometheus_port} ${metric_name} Runs the specified keyword and retries if it fails. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:32:48 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:34:48 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:36:49 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:38:49 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:40:49 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:42:49 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. Keyword 'Get Metric' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found ${metric_value} > 0 Fail msg=The metric '${metric_name}' value is '${metric_value}' Runs the given keyword with the given arguments if ``condition`` is false. ${metric_value} < ${metric_threshold} Fail msg=The metric '${metric_name}' value is higher than '${metric_threshold}' before scaling Runs the given keyword with the given arguments if ``condition`` is false. regression sanity vnf_vim_metrics_autoscaling Keyword 'Get Metric' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found ${privatekey} msg=SSH private key not available Fails unless the given variable exists within the current scope. ${vnf_ip_addr} ${username} ${password} ${privatekey} for i in {1..9}; do yes > /dev/null & done ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${password} Logs into the SSH server with the given ``username`` and ``password``. Logging into '172.21.248.102:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@sa-02-vnf-with-vim-metrics-and-autoscaling-test-1-hackfest-basi:~$ ${stdout} ${rc} ${command} return_rc=True return_stdout=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'for i in {1..9}; do yes > /dev/null & done'. Command exited with return code 0. ${stdout} = ${rc} = 0 ${rc} Logs the given message with the given level. 0 ${stdout} Logs the given message with the given level. Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> regression sanity vnf_vim_metrics_autoscaling 6 times 2 minutes Check VIM-based Metric Exceeds Threshold Runs the specified keyword and retries if it fails. Auxiliar keyword to check if metric exceeds threshold ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:42:50 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric_value} > ${metric_threshold} Fail msg=The metric '${metric_name}' value is '${metric_value}' which is lower than '${metric_threshold}' Runs the given keyword with the given arguments if ``condition`` is false. Auxiliar keyword to check if metric exceeds threshold ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:44:50 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric_value} > ${metric_threshold} Fail msg=The metric '${metric_name}' value is '${metric_value}' which is lower than '${metric_threshold}' Runs the given keyword with the given arguments if ``condition`` is false. Auxiliar keyword to check if metric exceeds threshold ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:46:50 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric_value} > ${metric_threshold} Fail msg=The metric '${metric_name}' value is '${metric_value}' which is lower than '${metric_threshold}' Runs the given keyword with the given arguments if ``condition`` is false. Auxiliar keyword to check if metric exceeds threshold ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:48:50 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric_value} > ${metric_threshold} Fail msg=The metric '${metric_name}' value is '${metric_value}' which is lower than '${metric_threshold}' Runs the given keyword with the given arguments if ``condition`` is false. Auxiliar keyword to check if metric exceeds threshold ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:50:50 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric_value} > ${metric_threshold} Fail msg=The metric '${metric_name}' value is '${metric_value}' which is lower than '${metric_threshold}' Runs the given keyword with the given arguments if ``condition`` is false. Auxiliar keyword to check if metric exceeds threshold ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:52:50 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${metric_value} > ${metric_threshold} Fail msg=The metric '${metric_name}' value is '${metric_value}' which is lower than '${metric_threshold}' Runs the given keyword with the given arguments if ``condition`` is false. Keyword 'Check VIM-based Metric Exceeds Threshold' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found regression sanity vnf_vim_metrics_autoscaling Keyword 'Check VIM-based Metric Exceeds Threshold' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found 1 minute Wait for auto-scale to take place Pauses the test executed for the given time. Slept 1 minute Wait for auto-scale to take place @{vdur_list} ${vnf_id} Return a list with the names of the VDU records of a VNF instance. ${rc} ${stdout} osm vnf-show ${vnf_id} --literal | yq r - vdur.*.name Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show 36a89de3-e805-46db-a305-30f15275d06e --literal | yq r - vdur.*.name 2>&1'. ${rc} = 0 ${stdout} = sa_02-vnf_with_vim_metrics_and_autoscaling_test-1-hackfest_basic_metrics-VM-1 ${rc} ${success_return_code} msg=${stdout} values=False Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> @{vdur} ${stdout} Splits the ``string`` using ``separator`` as a delimiter string. @{vdur} = [ sa_02-vnf_with_vim_metrics_and_autoscaling_test-1-hackfest_basic_metrics-VM-1 ] @{vdur_list} = [ sa_02-vnf_with_vim_metrics_and_autoscaling_test-1-hackfest_basic_metrics-VM-1 ] ${vdur_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: sa_02-vnf_with_vim_metrics_and_autoscaling_test-1-hackfest_basic_metrics-VM-1 ${vdurs} ${vdur_list} Returns and logs the length of the given item as an integer. Length is 1 ${vdurs} = 1 ${vdurs} > 1 Fail msg=There is no new VDU after auto-scaling Runs the given keyword with the given arguments if ``condition`` is false. msg=There is no new VDU after auto-scaling Fails the test with the given message and optionally alters its tags. There is no new VDU after auto-scaling regression sanity vnf_vim_metrics_autoscaling There is no new VDU after auto-scaling ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete sa_02-vnf_with_vim_metrics_and_autoscaling_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_02-vnf_with_vim_metrics_and_autoscaling_test 2>&1'. ${rc} = 0 ${stdout} = sa_02-vnf_with_vim_metrics_and_autoscaling_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. sa_02-vnf_with_vim_metrics_and_autoscaling_test == sa_02-vnf_with_vim_metrics_and_autoscaling_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_02-vnf_with_vim_metrics_and_autoscaling_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. cleanup regression sanity vnf_vim_metrics_autoscaling ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_basic-ns-metrics 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_basic-ns-metrics 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. cleanup regression sanity vnf_vim_metrics_autoscaling ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_basic_metrics-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_basic_metrics-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. cleanup regression sanity vnf_vim_metrics_autoscaling Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [SA-02] VNF with VIM-based metrics and auto-scaling. '%{PACKAGES_FOLDER}/${ws_vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/hackfest_basic_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the des... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_vnf Base directory: /robot-systest/osm-packages/hackfest_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_vnf Package created: /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/hackfest_basic_vnf.tar.gz 3940324a-33f8-46f2-950d-b133bb803762 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 3940324a-33f8-46f2-950d-b133bb803762 alarms_sa_related_vnfs regression sanity '%{PACKAGES_FOLDER}/${ws_nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/hackfest_basic_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/hackfest_basic_ns Base directory: /robot-systest/osm-packages/hackfest_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descr... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/hackfest_basic_ns Base directory: /robot-systest/osm-packages/hackfest_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: hackfest_basic_ns Package created: /robot-systest/osm-packages/hackfest_basic_ns.tar.gz 6647b2d8-372b-4df1-be1e-987fbf1bea61 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 6647b2d8-372b-4df1-be1e-987fbf1bea61 alarms_sa_related_vnfs regression sanity ${id} ${ws_nsd_name} %{VIM_TARGET} ${ws_ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name sa_07-webhook_service_test --nsd_name hackfest_basic-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = d7d11ba8-7f66-4801-bdac-16eca4a65a70 ${stdout} Logs the given message with the given level. d7d11ba8-7f66-4801-bdac-16eca4a65a70 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = d7d11ba8-7f66-4801-bdac-16eca4a65a70 ${ns_id} Logs the given message with the given level. d7d11ba8-7f66-4801-bdac-16eca4a65a70 ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-webhook_service_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-webhook_service_test | d7d11ba8-7f66-4801-bdac-16eca4a65a70 | 2021-04-25T03:54:22 | BUILDING | INSTANTIATING (50462451-71a3-49cc-92b8-1626bdd9c565) | N/A | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-webhook_service_test | d7d11ba8-7f66-4801-bdac-16eca4a65a70 | 2021-04-25T03:54:22 | BUILDING | INSTANTIATING (50462451-71a3-49cc-92b8-1626bdd9c565) | N/A | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-webhook_service_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name ... ${stdout} Logs the given message with the given level. +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-webhook_service_test | d7d11ba8-7f66-4801-bdac-16eca4a65a70 | 2021-04-25T03:54:22 | BUILDING | INSTANTIATING (50462451-71a3-49cc-92b8-1626bdd9c565) | N/A | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-webhook_service_test | d7d11ba8-7f66-4801-bdac-16eca4a65a70 | 2021-04-25T03:54:22 | BUILDING | INSTANTIATING (50462451-71a3-49cc-92b8-1626bdd9c565) | N/A | +----------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-webhook_service_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_07-webhook_service_test | d7d11ba8-7f66-4801-bdac-16eca4a65a70 | 2021-04-25T03:54:22 | READY | IDLE (None) | N/A | +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-webhook_service_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_07-webhook_service_test | d7d11ba8-7f66-4801-bdac-16eca4a65a70 | 2021-04-25T03:54:22 | READY | IDLE (None) | N/A | +----------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = d7d11ba8-7f66-4801-bdac-16eca4a65a70 ${ws_ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ws_ns_id} = d7d11ba8-7f66-4801-bdac-16eca4a65a70 alarms_sa_related_vnfs regression sanity ${ip_addr} ${ws_ns_id} ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 1 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=1 | grep d7d11ba8-7f66-4801-bdac-16eca4a65a70 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.180 ${stdout} Logs the given message with the given level. 172.21.248.180 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ip_addr} = 172.21.248.180 ${ip_addr} Logs the given message with the given level. 172.21.248.180 ${ws_vnf_ip_addr} ${ip_addr} Makes a variable available everywhere within the scope of the current suite. ${ws_vnf_ip_addr} = 172.21.248.180 alarms_sa_related_vnfs regression sanity ${privatekey} msg=SSH private key not available Fails unless the given variable exists within the current scope. 40 seconds Wait for SSH daemon to be up Pauses the test executed for the given time. Slept 40 seconds Wait for SSH daemon to be up ${stdout} ${ws_vnf_ip_addr} ${username} ${password} ${privatekey} nc -lkv '${ws_port}' > '${ws_log_file}' 2>&1 & ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.180:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@sa-07-webhook-service-test-1-hackfest-basic-vm-1:~$ ${stdout} ${rc} ${command} return_rc=True return_stdout=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'nc -lkv '5212' > 'webhook.log' 2>&1 &'. Command exited with return code 0. ${stdout} = ${rc} = 0 ${rc} Logs the given message with the given level. 0 ${stdout} Logs the given message with the given level. Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} = alarms_sa_related_vnfs regression sanity ${rc} ${stdout} mkdir '%{PACKAGES_FOLDER}/${new_vnfd_pkg}' && WEBHOOK_URL="http://${ws_vnf_ip_addr}:${ws_port}" envsubst < '%{PACKAGES_FOLDER}/${vnfd_pkg}'/'${vnfd_file}' > '%{PACKAGES_FOLDER}/${new_vnfd_pkg}'/'${vnfd_file}' Runs the given command in the system and returns the RC and output. Running command 'mkdir '/robot-systest/osm-packages/new_cirros_alarm_vnf' && WEBHOOK_URL="http://172.21.248.180:5212" envsubst < '/robot-systest/osm-packages/cirros_alarm_vnf'/'cirros_alarm_vnfd.yaml' > '/robot-systest/osm-packages/new_cirros_alarm_vnf'/'cirros_alarm_vnfd.yaml''. ${rc} = 0 ${stdout} = ${stdout} Logs the given message with the given level. ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> '%{PACKAGES_FOLDER}/${new_vnfd_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/new_cirros_alarm_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/new_cirros_alarm_vnf Base directory: /robot-systest/osm-packages/new_cirros_alarm_vnf 1 Descriptors found to validate Validation OK List of charms in the... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/new_cirros_alarm_vnf Base directory: /robot-systest/osm-packages/new_cirros_alarm_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: new_cirros_alarm_vnf Package created: /robot-systest/osm-packages/new_cirros_alarm_vnf.tar.gz Uploading package /robot-systest/osm-packages/new_cirros_alarm_vnf.tar.gz 63ef1b3f-a545-4489-bf0b-2241ec65c217 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 63ef1b3f-a545-4489-bf0b-2241ec65c217 alarms_sa_related_vnfs regression sanity '%{PACKAGES_FOLDER}/${nsd_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/cirros_alarm_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/cirros_alarm_ns Base directory: /robot-systest/osm-packages/cirros_alarm_ns 1 Descriptors found to validate Validation OK List of charms in the descripto... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/cirros_alarm_ns Base directory: /robot-systest/osm-packages/cirros_alarm_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: cirros_alarm_ns Package created: /robot-systest/osm-packages/cirros_alarm_ns.tar.gz 3031d072-991c-4958-8fc5-879b2edc0874 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 3031d072-991c-4958-8fc5-879b2edc0874 alarms_sa_related_vnfs regression sanity ${id} ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${config_attr} '${ns_config}'!='${EMPTY}' --config '${ns_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${ns_id} ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${rc} ${stdout} osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm ns-create --ns_name sa_07-alarms_from_sa-related_vnfs_test --nsd_name cirros_alarm-ns --vim_account osm --config '{vld: [ {name: mgmtnet, vim-network-name: osm-ext} ] }' --ssh_keys /root/.ssh/id_rsa.pub 2>&1'. ${rc} = 0 ${stdout} = ccbfdfd6-602a-4f0f-950c-8536189b223b ${stdout} Logs the given message with the given level. ccbfdfd6-602a-4f0f-950c-8536189b223b ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_id} = ccbfdfd6-602a-4f0f-950c-8536189b223b ${ns_id} Logs the given message with the given level. ccbfdfd6-602a-4f0f-950c-8536189b223b ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name} Runs the specified keyword and retries if it fails. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-alarms_from_sa-related_vnfs_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance ... ${stdout} Logs the given message with the given level. +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-alarms_from_sa-related_vnfs_test | ccbfdfd6-602a-4f0f-950c-8536189b223b | 2021-04-25T03:56:15 | BUILDING | INSTANTIATING (fece3d69-43ed-4c73-959d-86d351bf0748) | N/A | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-alarms_from_sa-related_vnfs_test | ccbfdfd6-602a-4f0f-950c-8536189b223b | 2021-04-25T03:56:15 | BUILDING | INSTANTIATING (fece3d69-43ed-4c73-959d-86d351bf0748) | N/A | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-alarms_from_sa-related_vnfs_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance ... ${stdout} Logs the given message with the given level. +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-alarms_from_sa-related_vnfs_test | ccbfdfd6-602a-4f0f-950c-8536189b223b | 2021-04-25T03:56:15 | BUILDING | INSTANTIATING (fece3d69-43ed-4c73-959d-86d351bf0748) | N/A | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. '+----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ | sa_07-alarms_from_sa-related_vnfs_test | ccbfdfd6-602a-4f0f-950c-8536189b223b | 2021-04-25T03:56:15 | BUILDING | INSTANTIATING (fece3d69-43ed-4c73-959d-86d351bf0748) | N/A | +----------------------------------------+--------------------------------------+---------------------+----------+------------------------------------------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID"' does not contain any of 'READY' or 'BROKEN' ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-alarms_from_sa-related_vnfs_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_07-alarms_from_sa-related_vnfs_test | ccbfdfd6-602a-4f0f-950c-8536189b223b | 2021-04-25T03:56:15 | READY | IDLE (None) | N/A | +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN Fails if ``container`` does not contain any of the ``*items``. ${ns_name} ${rc} ${stdout} osm ns-list --filter name="${ns_name}" Runs the given command in the system and returns the RC and output. Running command 'osm ns-list --filter name="sa_07-alarms_from_sa-related_vnfs_test" 2>&1'. ${rc} = 0 ${stdout} = +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id ... ${stdout} Logs the given message with the given level. +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | ns instance name | id | date | ns state | current operation | error details | +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ | sa_07-alarms_from_sa-related_vnfs_test | ccbfdfd6-602a-4f0f-950c-8536189b223b | 2021-04-25T03:56:15 | READY | IDLE (None) | N/A | +----------------------------------------+--------------------------------------+---------------------+----------+-------------------+---------------+ To get the history of all operations over a NS, run "osm ns-op-list NS_ID" For more details on the current operation, run "osm ns-op-show OPERATION_ID" ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = ccbfdfd6-602a-4f0f-950c-8536189b223b ${ns_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${ns_id} = ccbfdfd6-602a-4f0f-950c-8536189b223b alarms_sa_related_vnfs regression sanity ${prometheus_host} msg=Prometheus address is not available Fails unless the given variable exists within the current scope. ${prometheus_port} msg=Prometheus port is not available Fails unless the given variable exists within the current scope. ${metric_name} msg=Prometheus metric name is not available Fails unless the given variable exists within the current scope. ${metric_value} 6 times 2 minutes Get Metric ${prometheus_host} ${prometheus_port} ${metric_name} Runs the specified keyword and retries if it fails. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:57:21 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 03:59:21 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 04:01:21 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 04:03:21 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 04:05:21 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. ${prometheus_host} ${prometheus_port} ${metric_name} Get the instant value of a metric from Prometheus using multiple filter parameters. The filter parameters are given to this function in key=value format (one argument per key/value pair). Fails if the metric is not found or has multiple values. Examples of execution: ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${metric}= Get Metric ${prometheus_ip} ${prometheus_port} ${metric} ${param1}=${value1} ${param2}=${value2} ${filter} ${EMPTY} Returns the given values which can then be assigned to a variables. ${filter} = ${param} @{filter_parameters} ${resp} ${prometheus_host} ${prometheus_port} query=${metric}{${filter}} Execute a Prometheus Instant Query using HTTP API. Return an inline json with the result of the query. The requested URL is the next: http://${prometheus_ip}:${prometheus_port}/api/v1/query?${querystring} prometheus http://${prometheus_ip}:${prometheus_port} timeout=${timeout} max_retries=${max_retries} Create Session: create a HTTP session to a server Creating Session using : alias=prometheus, url=http://172.21.248.237:9091, headers={}, cookies={}, auth=None, timeout=1000, proxies=None, verify=False, debug=0 ${resp} prometheus /api/v1/query?${querystring} timeout=${timeout} *DEPRECATED* Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. GET Request : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D path_url=/api/v1/query?query=osm_cpu_utilization%7B%7D headers={'User-Agent': 'python-requests/2.25.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} body=None GET Response : url=http://172.21.248.237:9091/api/v1/query?query=osm_cpu_utilization%7B%7D status=200, reason=OK headers={'Access-Control-Allow-Headers': 'Accept, Authorization, Content-Type, Origin', 'Access-Control-Allow-Methods': 'GET, OPTIONS', 'Access-Control-Allow-Origin': '*', 'Access-Control-Expose-Headers': 'Date', 'Content-Encoding': 'gzip', 'Content-Type': 'application/json', 'Date': 'Sun, 25 Apr 2021 04:07:21 GMT', 'Content-Length': '87'} body={"status":"success","data":{"resultType":"vector","result":[]}} ${resp} = <Response [200]> 200 ${resp} Fails if response status code is different than the expected. ${resp} = {'status': 'success', 'data': {'resultType': 'vector', 'result': []}} ${result_list} ${resp["data"]["result"]} Converts the given ``item`` to a Python ``list`` type. ${result_list} = [] ${results} ${result_list} Returns and logs the length of the given item as an integer. Length is 0 ${results} = 0 0 ${results} msg=Metric ${metric} not found values=false Fails if objects are equal after converting them to real numbers. Argument types are: <type 'unicode'> <class 'int'> Metric osm_cpu_utilization not found 1 ${results} msg=Metric ${metric} with multiple values values=false Fails if objects are unequal after converting them to integers. Keyword 'Get Metric' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found ${metric_value} > 0 Fail msg=The metric '${metric_name}' value is '${metric_value}' Runs the given keyword with the given arguments if ``condition`` is false. alarms_sa_related_vnfs regression sanity Keyword 'Get Metric' failed after retrying 6 times. The last error was: Metric osm_cpu_utilization not found 6 times 40 seconds Execute Remote Command Check Rc Return Output ${ws_vnf_ip_addr} ${username} ${password} ${privatekey} cat '${ws_log_file}' | grep '${alarm_msg}' | grep '${ns_name}' Runs the specified keyword and retries if it fails. ${ws_vnf_ip_addr} ${username} ${password} ${privatekey} cat '${ws_log_file}' | grep '${alarm_msg}' | grep '${ns_name}' ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.180:22' as 'ubuntu'. Read output: Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-184-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 0 packages can be updated. 0 updates are security updates. New release '18.04.5 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 03:56:09 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@sa-07-webhook-service-test-1-hackfest-basic-vm-1:~$ ${stdout} ${rc} ${command} return_rc=True return_stdout=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'cat 'webhook.log' | grep 'notify_alarm' | grep 'sa_07-alarms_from_sa-related_vnfs_test''. Command exited with return code 0. ${stdout} = "{\"notify_details\": {\"status\": \"insufficient-data\", \"metric_name\": \"cpu_utilization\", \"start_date\": \"25-04-2021 03:57:32\", \"alarm_uuid\": \"6fb7ca5c-201c-46b0-84c4-aace4a29d6a7\", \"tag... ${rc} = 0 ${rc} Logs the given message with the given level. 0 ${stdout} Logs the given message with the given level. "{\"notify_details\": {\"status\": \"insufficient-data\", \"metric_name\": \"cpu_utilization\", \"start_date\": \"25-04-2021 03:57:32\", \"alarm_uuid\": \"6fb7ca5c-201c-46b0-84c4-aace4a29d6a7\", \"tags\": {\"ns_id\": \"ccbfdfd6-602a-4f0f-950c-8536189b223b\", \"vdu_name\": \"sa_07-alarms_from_sa-related_vnfs_test-1-cirros_vnfd-VM-1\", \"vnf_member_index\": \"1\"}, \"operation\": \"lt\", \"threshold_value\": 20.0, \"severity\": \"critical\"}, \"schema_type\": \"notify_alarm\", \"schema_version\": \"1.1\"}"Connection closed, listening again. "{\"notify_details\": {\"status\": \"insufficient-data\", \"metric_name\": \"cpu_utilization\", \"start_date\": \"25-04-2021 03:58:02\", \"alarm_uuid\": \"6fb7ca5c-201c-46b0-84c4-aace4a29d6a7\", \"tags\": {\"ns_id\": \"ccbfdfd6-602a-4f0f-950c-8536189b223b\", \"vdu_name\": \"sa_07-alarms_from_sa-related_vnfs_test-1-cirros_vnfd-VM-1\", \"vnf_member_index\": \"1\"}, \"operation\": \"lt\", \"threshold_value\": 20.0, \"severity\": \"critical\"}, \"schema_type\": \"notify_alarm\", \"schema_version\": \"1.1\"}" Closes all open connections. ${rc} 0 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> alarms_sa_related_vnfs regression sanity ${ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete sa_07-alarms_from_sa-related_vnfs_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_07-alarms_from_sa-related_vnfs_test 2>&1'. ${rc} = 0 ${stdout} = sa_07-alarms_from_sa-related_vnfs_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. sa_07-alarms_from_sa-related_vnfs_test == sa_07-alarms_from_sa-related_vnfs_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_07-alarms_from_sa-related_vnfs_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. alarms_sa_related_vnfs cleanup regression sanity ${nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete cirros_alarm-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep cirros_alarm-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. alarms_sa_related_vnfs cleanup regression sanity ${vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete cirros_alarm-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep cirros_alarm-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. alarms_sa_related_vnfs cleanup regression sanity ${ws_ns_name} Delete ns ${rc} ${stdout} osm ns-delete ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-delete sa_07-webhook_service_test 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${ns_delete_max_wait_time} ${ns_delete_pol_time} Check For NS Instance To Be Deleted ${ns} Runs the specified keyword and retries if it fails. ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_07-webhook_service_test 2>&1'. ${rc} = 0 ${stdout} = sa_07-webhook_service_test ${stdout} ${ns} Fails if objects are equal after converting them to strings. sa_07-webhook_service_test == sa_07-webhook_service_test ${ns} ${rc} ${stdout} osm ns-list | awk '{print $2}' | grep ${ns} Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | awk '{print $2}' | grep sa_07-webhook_service_test 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${ns} Fails if objects are equal after converting them to strings. alarms_sa_related_vnfs cleanup regression sanity ${ws_nsd_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete hackfest_basic-ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep hackfest_basic-ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. alarms_sa_related_vnfs cleanup regression sanity ${ws_vnfd_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete hackfest_basic-vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep hackfest_basic-vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. alarms_sa_related_vnfs cleanup regression sanity Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suite Cleanup: Deleting descriptors and NS instance Delete NS ${ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NS ${ws_ns_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${ws_nsd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${ws_vnfd_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. [SA-07] Events or alarms coming from SA-related VNFs in the NS. '%{PACKAGES_FOLDER}/${vnfd1_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/slice_basic_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_vnf Base directory: /robot-systest/osm-packages/slice_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descripto... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_vnf Base directory: /robot-systest/osm-packages/slice_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_vnf Package created: /robot-systest/osm-packages/slice_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/slice_basic_vnf.tar.gz 5eee3d9e-da84-4149-89d8-009973c868d2 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 5eee3d9e-da84-4149-89d8-009973c868d2 '%{PACKAGES_FOLDER}/${vnfd2_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/slice_basic_middle_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_middle_vnf Base directory: /robot-systest/osm-packages/slice_basic_middle_vnf 1 Descriptors found to validate Validation OK List of charms in... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_middle_vnf Base directory: /robot-systest/osm-packages/slice_basic_middle_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_middle_vnf Package created: /robot-systest/osm-packages/slice_basic_middle_vnf.tar.gz Uploading package /robot-systest/osm-packages/slice_basic_middle_vnf.tar.gz 10c58f7b-47e1-4d17-a3ad-bf1d4a97fad1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 10c58f7b-47e1-4d17-a3ad-bf1d4a97fad1 Onboards all the VNFDs required for the test: vnfd1_pkg and vnfd2_pkg (in the variables file) basic_network_slicing regression sanity SLICING-01 '%{PACKAGES_FOLDER}/${nsd1_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/slice_basic_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_ns Base directory: /robot-systest/osm-packages/slice_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor:... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_ns Base directory: /robot-systest/osm-packages/slice_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_ns Package created: /robot-systest/osm-packages/slice_basic_ns.tar.gz 164b3abd-0ff3-4ed2-9ae5-99ef71d041e2 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 164b3abd-0ff3-4ed2-9ae5-99ef71d041e2 '%{PACKAGES_FOLDER}/${nsd2_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/slice_basic_middle_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_middle_ns Base directory: /robot-systest/osm-packages/slice_basic_middle_ns 1 Descriptors found to validate Validation OK List of charms in t... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_middle_ns Base directory: /robot-systest/osm-packages/slice_basic_middle_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_middle_ns Package created: /robot-systest/osm-packages/slice_basic_middle_ns.tar.gz 8f119e93-be9b-4180-b504-f6165f1d1012 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 8f119e93-be9b-4180-b504-f6165f1d1012 Onboards all the NSDs required for the test: nsd1_pkg and nsd2_pkg (in the variables file) basic_network_slicing regression sanity SLICING-01 '%{PACKAGES_FOLDER}/${nst}' ${rc} ${stdout} osm netslice-template-create ${nst} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-create '/robot-systest/osm-packages/slice_basic_nst/slice_basic_nst.yaml' 2>&1'. ${rc} = 0 ${stdout} = d6b377d2-3eff-443a-a960-ec34603d1de1 ${stdout} Logs the given message with the given level. d6b377d2-3eff-443a-a960-ec34603d1de1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> Onboards the Network Slice Template: nst (in the variables file) basic_network_slicing regression sanity SLICING-01 ${id} ${nst_name} %{VIM_TARGET} ${slice_name} ${nst_config} ${publickey} Instantiates a NST and returns an instantiation id (nsi), verifying the slice is successfully instantiated Parameters: nst: Name of the slice template vim_name: Name of the VIM entry already in OSM slice_name: Name of the slice instance slice_config: Extra parameters that might require the slice instantiation i.e. configuration attributes publickey: SSH public key of the local machine Execution example: ${nsi}= Create Network Slice ${nst} ${vim_name} ${slice_name} ${slice_config} ${publickey} ${config_attr} '${slice_config}'!='${EMPTY}' --config '${slice_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{netslice-vld: [ {name: slice_vld_mgmt, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${nsi_id} ${slice_name} ${nst} ${vim_name} ${config_attr} ${sshkeys_attr} Instantiates a NST and returns an instantiation id (nsi) Parameters: slice_name: Name of the slice instance nst: Name of the slice template vim_name: Name of the VIM entry already in OSM slice_extra_args: Extra parameters that might require the slice instantiation i.e. configuration attributes Execution example: ${nsi}= Instantiate Network Slice ${slice_name} ${nst} ${vim_name} ${config_attr} ${rc} ${stdout} osm nsi-create --nsi_name ${slice_name} --nst_name ${nst} --vim_account ${vim_name} ${sshkeys_attr} ${slice_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-create --nsi_name slicebasic --nst_name slice_basic_nst --vim_account osm --ssh_keys /root/.ssh/id_rsa.pub --config '{netslice-vld: [ {name: slice_vld_mgmt, vim-network-name: osm-ext} ] }' 2>&1'. ${rc} = 0 ${stdout} = d2a23c44-d6a8-4d51-a231-09b08bd89352 ${stdout} Logs the given message with the given level. d2a23c44-d6a8-4d51-a231-09b08bd89352 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${nsi_id} = d2a23c44-d6a8-4d51-a231-09b08bd89352 ${nsi_id} Logs the given message with the given level. d2a23c44-d6a8-4d51-a231-09b08bd89352 ${slice_launch_max_wait_time} ${slice_launch_pol_time} Check For Network Slice Instance To Configured ${slice_name} Runs the specified keyword and retries if it fails. ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational s... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | running | configured | done | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. ${slice_name} Verify the slice instance is not in failure Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance For Failure ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational s... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | slicebasic | d2a23c44-d6a8-4d51-a231-09b08bd89352 | running | configured | done | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = d2a23c44-d6a8-4d51-a231-09b08bd89352 ${nsi_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${nsi_id} = d2a23c44-d6a8-4d51-a231-09b08bd89352 Instantiates the NST recently onboarded and sets the instantiation id as a suite variable (nsi_id) basic_network_slicing regression sanity SLICING-01 ${middle_ns_id} osm ns-list | grep ${middle_ns_name} | awk '{print $4}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep slicebasic.slice_basic_nsd_2 | awk '{print $4}' 2>&1'. ${middle_ns_id} = (0, '966a7e44-f84f-489f-9994-2d28f1878776') ${vnf_ip} ${middle_ns_id}[1] ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 6 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=middle | grep 966a7e44-f84f-489f-9994-2d28f1878776 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.108 ${stdout} Logs the given message with the given level. 172.21.248.108 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${vnf_ip} = 172.21.248.108 '${vnf_ip}' == '${EMPTY}' Fatal Error Variable \$\{ vnf_ip\} Empty Runs the given keyword with the given arguments, if ``condition`` is true. ${mgmt_vnf_ip} ${vnf_ip} Makes a variable available everywhere within the scope of the current suite. ${mgmt_vnf_ip} = 172.21.248.108 Obtains the management IP of the slice middle VNF (name in the reources file) and sets the ip as a suite variable (mgmt_vnf_ip) basic_network_slicing regression sanity SLICING-01 @{slice_ns_list} ${slice_name} ${middle_ns_name} Retrieves the list of NS in a slice removing one from the list. This is done to save time in the tests, avoiding one VNF to ping itself. Parameters: slice_name: Name of the slice instance exception_ns: Name of the ns that will not appear in the final list Execution example: @{slice_ns_list}= Get Slice Ns List Except One ${slice_name} ${exception_ns} ${slice_name} Verifies that the given item is not empty. Length is 10 ${exception_ns} Verifies that the given item is not empty. Length is 28 @{ns_list_string} osm ns-list | grep ${slice_name} | awk '!/${exception_ns}/' | awk '{print $4}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep slicebasic | awk '!/slicebasic.slice_basic_nsd_2/' | awk '{print $4}' 2>&1'. @{ns_list_string} = [ 0 | ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc ] @{ns_list} ${ns_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{ns_list} = [ ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 | bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc ] ${ns_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 1: bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc @{slice_ns_list} = [ ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 | bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc ] @{slice_ns_list} Logs the given messages as separate entries using the INFO level. ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${ns_id} @{slice_ns_list} ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 ${ns_id} Logs the given message with the given level. ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 @{vnf_id_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep ed8ad4a3-99ae-4f54-9b0d-13d809ca6092 | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | af42498c-addb-4d92-be54-7630856ca980 ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ af42498c-addb-4d92-be54-7630856ca980 ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: af42498c-addb-4d92-be54-7630856ca980 @{vnf_id_list} = [ af42498c-addb-4d92-be54-7630856ca980 ] @{ns_ip_list} @{vnf_id_list} @{vnf_list} Verifies that the given item is not empty. Length is 36 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${vnf_id} @{vnf_list} af42498c-addb-4d92-be54-7630856ca980 ${vnf_id} Logs the given message with the given level. af42498c-addb-4d92-be54-7630856ca980 @{vnf_ip_list} ${vnf_id} ${vnf_id} Verifies that the given item is not empty. Length is 36 @{vnf_ip_list_string} osm vnf-show ${vnf_id} --filter vdur --literal | grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}' | sort -t: -u -k1,1 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show af42498c-addb-4d92-be54-7630856ca980 --filter vdur --literal | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | sort -t: -u -k1,1 2>&1'. @{vnf_ip_list_string} = [ 0 | 172.21.248.155 192.168.138.4 ] ${vnf_ip_list_string}[1] Verifies that the given item is not empty. Length is 28 @{vnf_ip_list} ${vnf_ip_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_ip_list} = [ 172.21.248.155 | 192.168.138.4 ] ${vnf_ip_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: 172.21.248.155 1: 192.168.138.4 ${vnf_ip_list} Verifies that the given item is not empty. Length is 2 @{vnf_ip_list} = [ 172.21.248.155 | 192.168.138.4 ] @{temp_list} ${temp_list} ${vnf_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.155 | 192.168.138.4 ] ${temp_list} Verifies that the given item is not empty. Length is 2 @{ns_ip_list} = [ 172.21.248.155 | 192.168.138.4 ] @{temp_list} ${temp_list} ${ns_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.155 | 192.168.138.4 ] bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc ${ns_id} Logs the given message with the given level. bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc @{vnf_id_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep bb5545cf-0ad8-4e8d-bda6-50dd1281f1dc | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | 6d2d78f2-a140-43ba-8277-c046ec72aebe ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ 6d2d78f2-a140-43ba-8277-c046ec72aebe ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 6d2d78f2-a140-43ba-8277-c046ec72aebe @{vnf_id_list} = [ 6d2d78f2-a140-43ba-8277-c046ec72aebe ] @{ns_ip_list} @{vnf_id_list} @{vnf_list} Verifies that the given item is not empty. Length is 36 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${vnf_id} @{vnf_list} 6d2d78f2-a140-43ba-8277-c046ec72aebe ${vnf_id} Logs the given message with the given level. 6d2d78f2-a140-43ba-8277-c046ec72aebe @{vnf_ip_list} ${vnf_id} ${vnf_id} Verifies that the given item is not empty. Length is 36 @{vnf_ip_list_string} osm vnf-show ${vnf_id} --filter vdur --literal | grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}' | sort -t: -u -k1,1 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show 6d2d78f2-a140-43ba-8277-c046ec72aebe --filter vdur --literal | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | sort -t: -u -k1,1 2>&1'. @{vnf_ip_list_string} = [ 0 | 172.21.248.189 192.168.104.16 ] ${vnf_ip_list_string}[1] Verifies that the given item is not empty. Length is 29 @{vnf_ip_list} ${vnf_ip_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_ip_list} = [ 172.21.248.189 | 192.168.104.16 ] ${vnf_ip_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: 172.21.248.189 1: 192.168.104.16 ${vnf_ip_list} Verifies that the given item is not empty. Length is 2 @{vnf_ip_list} = [ 172.21.248.189 | 192.168.104.16 ] @{temp_list} ${temp_list} ${vnf_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.189 | 192.168.104.16 ] ${temp_list} Verifies that the given item is not empty. Length is 2 @{ns_ip_list} = [ 172.21.248.189 | 192.168.104.16 ] @{temp_list} ${temp_list} ${ns_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.155 | 192.168.138.4 | 172.21.248.189 | 192.168.104.16 ] ${temp_list} Logs the length and contents of the ``list`` using given ``level``. List length is 4 and it contains following items: 0: 172.21.248.155 1: 192.168.138.4 2: 172.21.248.189 3: 192.168.104.16 ${slice_vnfs_ips} ${temp_list} Makes a variable available everywhere within the scope of the current suite. ${slice_vnfs_ips} = ['172.21.248.155', '192.168.138.4', '172.21.248.189', '192.168.104.16'] Obtains the list of IPs addresses in the slice and sets the list as a suite variable (slice_vnfs_ips) basic_network_slicing regression sanity SLICING-01 60s Waiting for the network to be up Pauses the test executed for the given time. Slept 1 minute Waiting for the network to be up ${mgmt_vnf_ip} Logs the given message with the given level. 172.21.248.108 ${mgmt_vnf_ip} ${result} ping -c 5 -W 1 ${host} > /dev/null && echo OK shell=True Runs a process and waits for it to complete. Starting process: ping -c 5 -W 1 172.21.248.108 > /dev/null && echo OK Waiting for process to complete. Process completed. ${result} = <result object with rc 0> all output: ${result.stdout} Logs the given message with the given level. all output: OK ${result.stdout} OK Fails if ``container`` does not contain ``item`` one or more times. Pings the slice middle vnf (mgmt_vnf_ip) basic_network_slicing regression sanity SLICING-01 30s Waiting ssh daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting ssh daemon to be up ${mgmt_vnf_ip} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.108:22' as 'ubuntu'. Read output: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-101-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 25 04:12:19 UTC 2021 System load: 0.05 Users logged in: 0 Usage of /: 10.2% of 9.52GB IP address for ens3: 172.21.248.108 Memory usage: 12% IP address for ens4: 192.168.138.3 Swap usage: 0% IP address for ens5: 192.168.104.10 Processes: 83 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@slicebasic:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. SSH access to the slice middle vnf (mgmt_vnf_ip) with the credentials provided in the variables file basic_network_slicing regression sanity SLICING-01 ${mgmt_vnf_ip} ${username} ${password} ${privatekey} @{slice_vnfs_ips} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.108:22' as 'ubuntu'. Read output: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-101-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 25 04:12:22 UTC 2021 System load: 0.2 Users logged in: 0 Usage of /: 10.3% of 9.52GB IP address for ens3: 172.21.248.108 Memory usage: 12% IP address for ens4: 192.168.138.3 Swap usage: 0% IP address for ens5: 192.168.104.10 Processes: 83 0 packages can be updated. 0 updates are security updates. New release '20.04.2 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 04:12:21 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@slicebasic:~$ ${ip} @{ip_list} 172.21.248.155 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 172.21.248.155 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.138.4 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.138.4 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 172.21.248.189 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 172.21.248.189 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.104.16 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.104.16 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. Closes all open connections. SSH access to the slice middle vnf (mgmt_vnf_ip) with the credentials provided in the variables file and pings all the IP addresses in the list (slice_vnfs_ips) basic_network_slicing regression sanity SLICING-01 ${slice_name} Delete Network Slice Instance (NSI) Parameters: slice_name: Name of the slice instance Execution example: Delete NST ${slice_name} ${rc} ${stdout} osm nsi-delete ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-delete slicebasic 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice_delete_max_wait_time} ${slice_delete_pol_time} Check For Network Slice Instance To Be Deleted ${slice_name} Runs the specified keyword and retries if it fails. ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep slicebasic 2>&1'. ${rc} = 0 ${stdout} = slicebasic ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. slicebasic == slicebasic ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep slicebasic 2>&1'. ${rc} = 0 ${stdout} = slicebasic ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. slicebasic == slicebasic ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep slicebasic 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. Stops the slice instance (slice_name) basic_network_slicing cleanup regression sanity SLICING-01 ${nst_name} ${rc} ${stdout} osm netslice-template-delete ${nst_id} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-delete slice_basic_nst 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For NST ${nst_id} Runs the specified keyword and retries if it fails. ${nst_id} ${rc} ${stdout} osm netslice-template-list | awk '{print $2}' | grep ${nst_id} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-list | awk '{print $2}' | grep slice_basic_nst 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nst_id} Fails if objects are equal after converting them to strings. Deletes the NST (nst_name) from OSM basic_network_slicing cleanup regression sanity SLICING-01 ${nsd1_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete slice_basic_ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep slice_basic_ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. ${nsd2_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete slice_basic_middle_ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep slice_basic_middle_ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. Deletes all the NSDs created for the test: nsd1_name, nsd2_name basic_network_slicing cleanup regression sanity SLICING-01 ${vnfd1_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete slice_basic_vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep slice_basic_vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. ${vnfd2_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete slice_basic_middle_vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep slice_basic_middle_vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. Deletes all the VNFDs created for the test: vnfd1_name, vnfd2_name basic_network_slicing cleanup regression sanity SLICING-01 Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptors, instance and template Delete NST ${nst_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd1_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd2_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd1_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd2_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. '%{PACKAGES_FOLDER}/${vnfd1_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/slice_basic_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_vnf Base directory: /robot-systest/osm-packages/slice_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descripto... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_vnf Base directory: /robot-systest/osm-packages/slice_basic_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_vnf Package created: /robot-systest/osm-packages/slice_basic_vnf.tar.gz Uploading package /robot-systest/osm-packages/slice_basic_vnf.tar.gz 24a9d1cd-a6d7-4e87-b9d3-6c7ce493914a ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 24a9d1cd-a6d7-4e87-b9d3-6c7ce493914a '%{PACKAGES_FOLDER}/${vnfd2_pkg}' Onboards ("creates") a NF Package into OSM. - Parameters: - vnfd_pkg: Name (and location) of the NF Package - overrides (optional): String with options to override the EPA and/or interface properties of the Package. This is very useful to allow to deploy e.g. non-EPA packages in EPA VIMs (or vice-versa). Valid strings are the same as in the command. E.g.: - `--override-epa`: adds EPA attributes to all VDUs. - `--override-nonepa`: removes all EPA attributes from all VDUs. - `--override-paravirt`: converts all interfaces to `PARAVIRT`. This one can be combined with the others above (e.g. '--override-nonepa --override-paravirt'). - Relevant environment variables: - OVERRIDES: If the environment variable "OVERRIDES" exists, it prevails over the value in the argument. This is often more convenient to enforce the same behaviour for every test run in a given VIM. ${overrides} OVERRIDES default=${overrides} Returns the value of an environment variable with the given name. ${overrides} = ${rc} ${stdout} osm vnfd-create ${overrides} ${vnfd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-create '/robot-systest/osm-packages/slice_basic_middle_vnf' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_middle_vnf Base directory: /robot-systest/osm-packages/slice_basic_middle_vnf 1 Descriptors found to validate Validation OK List of charms in... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_middle_vnf Base directory: /robot-systest/osm-packages/slice_basic_middle_vnf 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_middle_vnf Package created: /robot-systest/osm-packages/slice_basic_middle_vnf.tar.gz Uploading package /robot-systest/osm-packages/slice_basic_middle_vnf.tar.gz ab81ffe8-1111-427f-92d1-28ae6e19e480 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 9 lines ${lines} = 9 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 8 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = ab81ffe8-1111-427f-92d1-28ae6e19e480 Onboards all the VNFDs required for the test: vnfd1_pkg and vnfd2_pkg (in the variables file) regression sanity shared_network_slicing SLICING-02 '%{PACKAGES_FOLDER}/${nsd1_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/slice_basic_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_ns Base directory: /robot-systest/osm-packages/slice_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor:... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_ns Base directory: /robot-systest/osm-packages/slice_basic_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_ns Package created: /robot-systest/osm-packages/slice_basic_ns.tar.gz b43a5241-e44c-4788-bb71-050c0f36dc5d ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = b43a5241-e44c-4788-bb71-050c0f36dc5d '%{PACKAGES_FOLDER}/${nsd2_pkg}' ${rc} ${stdout} osm nsd-create ${nsd_pkg} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-create '/robot-systest/osm-packages/slice_basic_middle_ns' 2>&1'. ${rc} = 0 ${stdout} = Validating package /robot-systest/osm-packages/slice_basic_middle_ns Base directory: /robot-systest/osm-packages/slice_basic_middle_ns 1 Descriptors found to validate Validation OK List of charms in t... ${stdout} Logs the given message with the given level. Validating package /robot-systest/osm-packages/slice_basic_middle_ns Base directory: /robot-systest/osm-packages/slice_basic_middle_ns 1 Descriptors found to validate Validation OK List of charms in the descriptor: [] Adding File: slice_basic_middle_ns Package created: /robot-systest/osm-packages/slice_basic_middle_ns.tar.gz 07ebf107-517d-4043-817b-69742f300500 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${lines} ${stdout} Returns and logs the number of lines in the given string. 8 lines ${lines} = 8 ${last} ${lines} - 1 Evaluates the given expression in Python and returns the result. ${last} = 7 ${id} ${stdout} ${last} Returns the specified line from the given ``string``. ${id} = 07ebf107-517d-4043-817b-69742f300500 Onboards all the NSDs required for the test: nsd1_pkg and nsd2_pkg (in the variables file) regression sanity shared_network_slicing SLICING-02 '%{PACKAGES_FOLDER}/${nst}' ${rc} ${stdout} osm netslice-template-create ${nst} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-create '/robot-systest/osm-packages/slice_basic_nst/slice_basic_nst.yaml' 2>&1'. ${rc} = 0 ${stdout} = fcd846cd-7460-4ca4-852c-545eff823fe4 ${stdout} Logs the given message with the given level. fcd846cd-7460-4ca4-852c-545eff823fe4 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> '%{PACKAGES_FOLDER}/${nst2}' ${rc} ${stdout} osm netslice-template-create ${nst} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-create '/robot-systest/osm-packages/slice_basic_nst/slice_basic_2nd_nst.yaml' 2>&1'. ${rc} = 0 ${stdout} = 1e8d6f34-17fd-45c7-8cd5-de5aac4974a2 ${stdout} Logs the given message with the given level. 1e8d6f34-17fd-45c7-8cd5-de5aac4974a2 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> Onboards the Network Slice Templates: nst, nst2 (in the variables file) regression sanity shared_network_slicing SLICING-02 ${id} ${nst_name} %{VIM_TARGET} ${slice_name} ${nst_config} ${publickey} Instantiates a NST and returns an instantiation id (nsi), verifying the slice is successfully instantiated Parameters: nst: Name of the slice template vim_name: Name of the VIM entry already in OSM slice_name: Name of the slice instance slice_config: Extra parameters that might require the slice instantiation i.e. configuration attributes publickey: SSH public key of the local machine Execution example: ${nsi}= Create Network Slice ${nst} ${vim_name} ${slice_name} ${slice_config} ${publickey} ${config_attr} '${slice_config}'!='${EMPTY}' --config '${slice_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{netslice-vld: [ {name: slice_vld_mgmt, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${nsi_id} ${slice_name} ${nst} ${vim_name} ${config_attr} ${sshkeys_attr} Instantiates a NST and returns an instantiation id (nsi) Parameters: slice_name: Name of the slice instance nst: Name of the slice template vim_name: Name of the VIM entry already in OSM slice_extra_args: Extra parameters that might require the slice instantiation i.e. configuration attributes Execution example: ${nsi}= Instantiate Network Slice ${slice_name} ${nst} ${vim_name} ${config_attr} ${rc} ${stdout} osm nsi-create --nsi_name ${slice_name} --nst_name ${nst} --vim_account ${vim_name} ${sshkeys_attr} ${slice_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-create --nsi_name slicebasic --nst_name slice_basic_nst --vim_account osm --ssh_keys /root/.ssh/id_rsa.pub --config '{netslice-vld: [ {name: slice_vld_mgmt, vim-network-name: osm-ext} ] }' 2>&1'. ${rc} = 0 ${stdout} = 8d67eeda-067e-4b99-b1fa-7bf82c557f35 ${stdout} Logs the given message with the given level. 8d67eeda-067e-4b99-b1fa-7bf82c557f35 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${nsi_id} = 8d67eeda-067e-4b99-b1fa-7bf82c557f35 ${nsi_id} Logs the given message with the given level. 8d67eeda-067e-4b99-b1fa-7bf82c557f35 ${slice_launch_max_wait_time} ${slice_launch_pol_time} Check For Network Slice Instance To Configured ${slice_name} Runs the specified keyword and retries if it fails. ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational s... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | running | configured | done | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. ${slice_name} Verify the slice instance is not in failure Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance For Failure ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="slicebasic" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational s... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | slicebasic | 8d67eeda-067e-4b99-b1fa-7bf82c557f35 | running | configured | done | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = 8d67eeda-067e-4b99-b1fa-7bf82c557f35 ${nsi_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${nsi_id} = 8d67eeda-067e-4b99-b1fa-7bf82c557f35 Instantiates the First NST recently onboarded (nst_name) and sets the instantiation id as a suite variable (nsi_id) The slice contains 3 NS (1 shared) regression sanity shared_network_slicing SLICING-02 ${id} ${nst2_name} %{VIM_TARGET} ${slice2_name} ${nst_config} ${publickey} Instantiates a NST and returns an instantiation id (nsi), verifying the slice is successfully instantiated Parameters: nst: Name of the slice template vim_name: Name of the VIM entry already in OSM slice_name: Name of the slice instance slice_config: Extra parameters that might require the slice instantiation i.e. configuration attributes publickey: SSH public key of the local machine Execution example: ${nsi}= Create Network Slice ${nst} ${vim_name} ${slice_name} ${slice_config} ${publickey} ${config_attr} '${slice_config}'!='${EMPTY}' --config '${slice_config}' \ Sets variable based on the given condition. ${config_attr} = --config '{netslice-vld: [ {name: slice_vld_mgmt, vim-network-name: osm-ext} ] }' ${sshkeys_attr} '${publickey}'!='${EMPTY}' --ssh_keys ${publickey} \ Sets variable based on the given condition. ${sshkeys_attr} = --ssh_keys /root/.ssh/id_rsa.pub ${nsi_id} ${slice_name} ${nst} ${vim_name} ${config_attr} ${sshkeys_attr} Instantiates a NST and returns an instantiation id (nsi) Parameters: slice_name: Name of the slice instance nst: Name of the slice template vim_name: Name of the VIM entry already in OSM slice_extra_args: Extra parameters that might require the slice instantiation i.e. configuration attributes Execution example: ${nsi}= Instantiate Network Slice ${slice_name} ${nst} ${vim_name} ${config_attr} ${rc} ${stdout} osm nsi-create --nsi_name ${slice_name} --nst_name ${nst} --vim_account ${vim_name} ${sshkeys_attr} ${slice_extra_args} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-create --nsi_name sliceshared --nst_name slice_basic_nst2 --vim_account osm --ssh_keys /root/.ssh/id_rsa.pub --config '{netslice-vld: [ {name: slice_vld_mgmt, vim-network-name: osm-ext} ] }' 2>&1'. ${rc} = 0 ${stdout} = dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da ${stdout} Logs the given message with the given level. dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${nsi_id} = dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da ${nsi_id} Logs the given message with the given level. dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da ${slice_launch_max_wait_time} ${slice_launch_pol_time} Check For Network Slice Instance To Configured ${slice_name} Runs the specified keyword and retries if it fails. ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="sliceshared" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | sliceshared | dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | sliceshared | dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="sliceshared" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id ... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | sliceshared | dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. '+------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+ | sliceshared | dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da | init | Not found | Instantiating netslice subnets | +------------------------+--------------------------------------+--------------------+---------------+--------------------------------+' does not contain any of 'READY', 'BROKEN' or 'configured' ${slice_name} Verify the slice has been instantiated Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance To Configured ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="sliceshared" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational s... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | sliceshared | dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da | running | configured | done | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} READY BROKEN configured Fails if ``container`` does not contain any of the ``*items``. ${slice_name} Verify the slice instance is not in failure Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance For Failure ${slice_name} ${rc} ${stdout} osm nsi-list --filter name="${slice_name}" Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list --filter name="sliceshared" 2>&1'. ${rc} = 0 ${stdout} = +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational s... ${stdout} Logs the given message with the given level. +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | netslice instance name | id | operational status | config status | detailed status | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ | sliceshared | dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da | running | configured | done | +------------------------+--------------------------------------+--------------------+---------------+-----------------+ ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} BROKEN Fails if ``container`` contains ``item`` one or more times. ${id} = dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da ${nsi2_id} ${id} Makes a variable available everywhere within the scope of the current suite. ${nsi2_id} = dd3cfbc6-1a5c-4fdb-b5ab-fa00d63710da Instantiates the Second NST recently onboarded (nst2_name) and sets the instantiation id as a suite variable (nsi2_id) The slice contains 2 NS (1 shared) regression sanity shared_network_slicing SLICING-02 ${slice1_count} ${slice_name} Returns the count of all the NS in a slice Parameters: slice_name: Name of the slice instance Execution example: ${slice_ns_count}= Get Slice Ns Count ${slice_name} ${slice_name} Verifies that the given item is not empty. Length is 10 ${rc} ${stdout} osm ns-list | grep ${slice_name} | wc -l 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep slicebasic | wc -l 2>&1'. ${rc} = 0 ${stdout} = 3 ${stdout} Logs the given message with the given level. 3 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice1_count} = 3 ${slice2_count} ${slice2_name} Returns the count of all the NS in a slice Parameters: slice_name: Name of the slice instance Execution example: ${slice_ns_count}= Get Slice Ns Count ${slice_name} ${slice_name} Verifies that the given item is not empty. Length is 11 ${rc} ${stdout} osm ns-list | grep ${slice_name} | wc -l 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep sliceshared | wc -l 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice2_count} = 1 ${together} ${slice1_count} + ${slice2_count} Evaluates the given expression in Python and returns the result. ${together} = 4 ${together} 4 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> Counts the NS in both slice instances and shoul be equal to 4 regression sanity shared_network_slicing SLICING-02 ${middle_ns_id} osm ns-list | grep ${middle_ns_name} | awk '{print $4}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep slicebasic.slice_basic_nsd_2 | awk '{print $4}' 2>&1'. ${middle_ns_id} = (0, '82c5a219-944c-48a5-84d2-678d030f1a42') ${vnf_ip} ${middle_ns_id}[1] ${vnf_member_index} ${ns_id} Verifies that the given item is not empty. Length is 36 ${vnf_member_index} Verifies that the given item is not empty. Length is 6 ${rc} ${stdout} osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list --filter member-vnf-index-ref=middle | grep 82c5a219-944c-48a5-84d2-678d030f1a42 | awk '{print $14}' 2>&1'. ${rc} = 0 ${stdout} = 172.21.248.210 ${stdout} Logs the given message with the given level. 172.21.248.210 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${vnf_ip} = 172.21.248.210 '${vnf_ip}' == '${EMPTY}' Fatal Error Variable \$\{ vnf_ip\} Empty Runs the given keyword with the given arguments, if ``condition`` is true. ${mgmt_vnf_ip} ${vnf_ip} Makes a variable available everywhere within the scope of the current suite. ${mgmt_vnf_ip} = 172.21.248.210 Obtains the management IP of the shared NS main (only) VNF and sets it as a suite variable (mgmt_vnf_ip) regression sanity shared_network_slicing SLICING-02 @{ip_list} ${slice_name} Retrieves the list of IP addresses that belong to each of the VNFs in the slice Parameters: slice_name: Name of the slice instance Execution example: @{slice_ip_address_list}= Get Slice Vnf Ip Addresses ${slice_name} @{slice_ns_list} ${slice_name} Retrieves the list of NS in a slice Parameters: slice_name: Name of the slice instance Execution example: @{slice_ns_list}= Get Slice Ns List ${slice_name} ${slice_name} Verifies that the given item is not empty. Length is 10 @{ns_list_string} osm ns-list | grep ${slice_name} | awk '{print $4}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep slicebasic | awk '{print $4}' 2>&1'. @{ns_list_string} = [ 0 | 37db477c-d6c9-4e23-9321-09847e64d459 82c5a219-944c-48a5-84d2-678d030f1a42 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 ] @{ns_list} ${ns_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{ns_list} = [ 37db477c-d6c9-4e23-9321-09847e64d459 | 82c5a219-944c-48a5-84d2-678d030f1a42 | 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 ] ${ns_list} Logs the length and contents of the ``list`` using given ``level``. List length is 3 and it contains following items: 0: 37db477c-d6c9-4e23-9321-09847e64d459 1: 82c5a219-944c-48a5-84d2-678d030f1a42 2: 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 @{slice_ns_list} = [ 37db477c-d6c9-4e23-9321-09847e64d459 | 82c5a219-944c-48a5-84d2-678d030f1a42 | 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 ] @{slice_ns_list} Logs the given messages as separate entries using the INFO level. 37db477c-d6c9-4e23-9321-09847e64d459 82c5a219-944c-48a5-84d2-678d030f1a42 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${ns_id} @{slice_ns_list} 37db477c-d6c9-4e23-9321-09847e64d459 ${ns_id} Logs the given message with the given level. 37db477c-d6c9-4e23-9321-09847e64d459 @{vnf_id_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep 37db477c-d6c9-4e23-9321-09847e64d459 | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb @{vnf_id_list} = [ 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb ] @{ns_ip_list} @{vnf_id_list} @{vnf_list} Verifies that the given item is not empty. Length is 36 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${vnf_id} @{vnf_list} 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb ${vnf_id} Logs the given message with the given level. 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb @{vnf_ip_list} ${vnf_id} ${vnf_id} Verifies that the given item is not empty. Length is 36 @{vnf_ip_list_string} osm vnf-show ${vnf_id} --filter vdur --literal | grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}' | sort -t: -u -k1,1 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show 15a542e4-6718-4d72-b5dc-fb5ae0f3fadb --filter vdur --literal | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | sort -t: -u -k1,1 2>&1'. @{vnf_ip_list_string} = [ 0 | 172.21.248.112 192.168.107.6 ] ${vnf_ip_list_string}[1] Verifies that the given item is not empty. Length is 28 @{vnf_ip_list} ${vnf_ip_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_ip_list} = [ 172.21.248.112 | 192.168.107.6 ] ${vnf_ip_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: 172.21.248.112 1: 192.168.107.6 ${vnf_ip_list} Verifies that the given item is not empty. Length is 2 @{vnf_ip_list} = [ 172.21.248.112 | 192.168.107.6 ] @{temp_list} ${temp_list} ${vnf_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.112 | 192.168.107.6 ] ${temp_list} Verifies that the given item is not empty. Length is 2 @{ns_ip_list} = [ 172.21.248.112 | 192.168.107.6 ] @{temp_list} ${temp_list} ${ns_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.112 | 192.168.107.6 ] 82c5a219-944c-48a5-84d2-678d030f1a42 ${ns_id} Logs the given message with the given level. 82c5a219-944c-48a5-84d2-678d030f1a42 @{vnf_id_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep 82c5a219-944c-48a5-84d2-678d030f1a42 | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | 94830c31-cda9-4392-934e-82fc254eab1c ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ 94830c31-cda9-4392-934e-82fc254eab1c ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 94830c31-cda9-4392-934e-82fc254eab1c @{vnf_id_list} = [ 94830c31-cda9-4392-934e-82fc254eab1c ] @{ns_ip_list} @{vnf_id_list} @{vnf_list} Verifies that the given item is not empty. Length is 36 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${vnf_id} @{vnf_list} 94830c31-cda9-4392-934e-82fc254eab1c ${vnf_id} Logs the given message with the given level. 94830c31-cda9-4392-934e-82fc254eab1c @{vnf_ip_list} ${vnf_id} ${vnf_id} Verifies that the given item is not empty. Length is 36 @{vnf_ip_list_string} osm vnf-show ${vnf_id} --filter vdur --literal | grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}' | sort -t: -u -k1,1 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show 94830c31-cda9-4392-934e-82fc254eab1c --filter vdur --literal | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | sort -t: -u -k1,1 2>&1'. @{vnf_ip_list_string} = [ 0 | 172.21.248.210 192.168.107.3 192.168.115.3 ] ${vnf_ip_list_string}[1] Verifies that the given item is not empty. Length is 42 @{vnf_ip_list} ${vnf_ip_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_ip_list} = [ 172.21.248.210 | 192.168.107.3 | 192.168.115.3 ] ${vnf_ip_list} Logs the length and contents of the ``list`` using given ``level``. List length is 3 and it contains following items: 0: 172.21.248.210 1: 192.168.107.3 2: 192.168.115.3 ${vnf_ip_list} Verifies that the given item is not empty. Length is 3 @{vnf_ip_list} = [ 172.21.248.210 | 192.168.107.3 | 192.168.115.3 ] @{temp_list} ${temp_list} ${vnf_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.210 | 192.168.107.3 | 192.168.115.3 ] ${temp_list} Verifies that the given item is not empty. Length is 3 @{ns_ip_list} = [ 172.21.248.210 | 192.168.107.3 | 192.168.115.3 ] @{temp_list} ${temp_list} ${ns_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.112 | 192.168.107.6 | 172.21.248.210 | 192.168.107.3 | 192.168.115.3 ] 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 ${ns_id} Logs the given message with the given level. 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 @{vnf_id_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep 52f3a07d-d147-4b40-8a7c-0305b5c6aee7 | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | a7387cc3-1301-493c-975d-6daf5c09f65b ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ a7387cc3-1301-493c-975d-6daf5c09f65b ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: a7387cc3-1301-493c-975d-6daf5c09f65b @{vnf_id_list} = [ a7387cc3-1301-493c-975d-6daf5c09f65b ] @{ns_ip_list} @{vnf_id_list} @{vnf_list} Verifies that the given item is not empty. Length is 36 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${vnf_id} @{vnf_list} a7387cc3-1301-493c-975d-6daf5c09f65b ${vnf_id} Logs the given message with the given level. a7387cc3-1301-493c-975d-6daf5c09f65b @{vnf_ip_list} ${vnf_id} ${vnf_id} Verifies that the given item is not empty. Length is 36 @{vnf_ip_list_string} osm vnf-show ${vnf_id} --filter vdur --literal | grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}' | sort -t: -u -k1,1 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show a7387cc3-1301-493c-975d-6daf5c09f65b --filter vdur --literal | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | sort -t: -u -k1,1 2>&1'. @{vnf_ip_list_string} = [ 0 | 172.21.248.229 192.168.115.2 ] ${vnf_ip_list_string}[1] Verifies that the given item is not empty. Length is 28 @{vnf_ip_list} ${vnf_ip_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_ip_list} = [ 172.21.248.229 | 192.168.115.2 ] ${vnf_ip_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: 172.21.248.229 1: 192.168.115.2 ${vnf_ip_list} Verifies that the given item is not empty. Length is 2 @{vnf_ip_list} = [ 172.21.248.229 | 192.168.115.2 ] @{temp_list} ${temp_list} ${vnf_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.229 | 192.168.115.2 ] ${temp_list} Verifies that the given item is not empty. Length is 2 @{ns_ip_list} = [ 172.21.248.229 | 192.168.115.2 ] @{temp_list} ${temp_list} ${ns_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.112 | 192.168.107.6 | 172.21.248.210 | 192.168.107.3 | 192.168.115.3 | 172.21.248.229 | 192.168.115.2 ] ${temp_list} Logs the length and contents of the ``list`` using given ``level``. List length is 7 and it contains following items: 0: 172.21.248.112 1: 192.168.107.6 2: 172.21.248.210 3: 192.168.107.3 4: 192.168.115.3 5: 172.21.248.229 6: 192.168.115.2 @{ip_list} = [ 172.21.248.112 | 192.168.107.6 | 172.21.248.210 | 192.168.107.3 | 192.168.115.3 | 172.21.248.229 | 192.168.115.2 ] ${ip_list} is not None Fails if the given condition is not true. ${slice1_vnfs_ips} ${ip_list} Makes a variable available everywhere within the scope of the current suite. ${slice1_vnfs_ips} = ['172.21.248.112', '192.168.107.6', '172.21.248.210', '192.168.107.3', '192.168.115.3', '172.21.248.229', '192.168.115.2'] Obtains the list of IPs addresses in the first slice and sets the list as a suite variable (slice1_vnfs_ips) regression sanity shared_network_slicing SLICING-02 60s Waiting for the network to be up Pauses the test executed for the given time. Slept 1 minute Waiting for the network to be up ${mgmt_vnf_ip} ${result} ping -c 5 -W 1 ${host} > /dev/null && echo OK shell=True Runs a process and waits for it to complete. Starting process: ping -c 5 -W 1 172.21.248.210 > /dev/null && echo OK Waiting for process to complete. Process completed. ${result} = <result object with rc 0> all output: ${result.stdout} Logs the given message with the given level. all output: OK ${result.stdout} OK Fails if ``container`` does not contain ``item`` one or more times. Pings the slice middle vnf (mgmt_vnf_ip) regression sanity shared_network_slicing SLICING-02 30s Waiting ssh daemon to be up Pauses the test executed for the given time. Slept 30 seconds Waiting ssh daemon to be up ${mgmt_vnf_ip} ${username} ${password} ${privatekey} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.210:22' as 'ubuntu'. Read output: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-101-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 25 04:18:55 UTC 2021 System load: 0.09 Users logged in: 0 Usage of /: 10.2% of 9.52GB IP address for ens3: 172.21.248.210 Memory usage: 12% IP address for ens4: 192.168.107.3 Swap usage: 0% IP address for ens5: 192.168.115.3 Processes: 83 0 packages can be updated. 0 updates are security updates. The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@slicebasic:~$ hostname Executes ``command`` on the remote machine and returns its outputs. Executing command 'hostname'. Command exited with return code 0. Closes all open connections. SSH access to the slice middle vnf (mgmt_vnf_ip) with the credentials provided in the variables file regression sanity shared_network_slicing SLICING-02 ${mgmt_vnf_ip} ${username} ${password} ${privatekey} @{slice1_vnfs_ips} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.210:22' as 'ubuntu'. Read output: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-101-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 25 04:18:58 UTC 2021 System load: 0.09 Users logged in: 0 Usage of /: 10.3% of 9.52GB IP address for ens3: 172.21.248.210 Memory usage: 12% IP address for ens4: 192.168.107.3 Swap usage: 0% IP address for ens5: 192.168.115.3 Processes: 83 0 packages can be updated. 0 updates are security updates. New release '20.04.2 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 04:18:56 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@slicebasic:~$ ${ip} @{ip_list} 172.21.248.112 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 172.21.248.112 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.107.6 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.107.6 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 172.21.248.210 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 172.21.248.210 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.107.3 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.107.3 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.115.3 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.115.3 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 172.21.248.229 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 172.21.248.229 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.115.2 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.115.2 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. Closes all open connections. SSH access to the slice middle vnf (mgmt_vnf_ip) with the credentials provided in the variables file and pings all the IP addresses in the list (slice1_vnfs_ips) regression sanity shared_network_slicing SLICING-02 ${slice_name} Delete Network Slice Instance (NSI) Parameters: slice_name: Name of the slice instance Execution example: Delete NST ${slice_name} ${rc} ${stdout} osm nsi-delete ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-delete slicebasic 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice_delete_max_wait_time} ${slice_delete_pol_time} Check For Network Slice Instance To Be Deleted ${slice_name} Runs the specified keyword and retries if it fails. ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep slicebasic 2>&1'. ${rc} = 0 ${stdout} = slicebasic ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. slicebasic == slicebasic ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep slicebasic 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. Stops the slice instance (slice_name) cleanup regression sanity shared_network_slicing SLICING-02 ${slice1_count} ${slice_name} Returns the count of all the NS in a slice Parameters: slice_name: Name of the slice instance Execution example: ${slice_ns_count}= Get Slice Ns Count ${slice_name} ${slice_name} Verifies that the given item is not empty. Length is 10 ${rc} ${stdout} osm ns-list | grep ${slice_name} | wc -l 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep slicebasic | wc -l 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice1_count} = 1 ${slice2_count} ${slice2_name} Returns the count of all the NS in a slice Parameters: slice_name: Name of the slice instance Execution example: ${slice_ns_count}= Get Slice Ns Count ${slice_name} ${slice_name} Verifies that the given item is not empty. Length is 11 ${rc} ${stdout} osm ns-list | grep ${slice_name} | wc -l 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep sliceshared | wc -l 2>&1'. ${rc} = 0 ${stdout} = 1 ${stdout} Logs the given message with the given level. 1 ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice2_count} = 1 ${together} ${slice1_count} + ${slice2_count} Evaluates the given expression in Python and returns the result. ${together} = 2 ${together} 2 Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> Counts the NS in both slice instances and should be equal to 2 regression sanity shared_network_slicing SLICING-02 @{ip_list} ${slice2_name} Retrieves the list of IP addresses that belong to each of the VNFs in the slice Parameters: slice_name: Name of the slice instance Execution example: @{slice_ip_address_list}= Get Slice Vnf Ip Addresses ${slice_name} @{slice_ns_list} ${slice_name} Retrieves the list of NS in a slice Parameters: slice_name: Name of the slice instance Execution example: @{slice_ns_list}= Get Slice Ns List ${slice_name} ${slice_name} Verifies that the given item is not empty. Length is 11 @{ns_list_string} osm ns-list | grep ${slice_name} | awk '{print $4}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm ns-list | grep sliceshared | awk '{print $4}' 2>&1'. @{ns_list_string} = [ 0 | 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f ] @{ns_list} ${ns_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{ns_list} = [ 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f ] ${ns_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f @{slice_ns_list} = [ 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f ] @{slice_ns_list} Logs the given messages as separate entries using the INFO level. 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${ns_id} @{slice_ns_list} 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f ${ns_id} Logs the given message with the given level. 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f @{vnf_id_list} ${ns_id} ${ns_id} Verifies that the given item is not empty. Length is 36 @{vnf_list_string} osm vnf-list | grep ${ns_id} | awk '{print $2}' 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-list | grep 19ffb882-ac37-4e79-a3c0-faaa0ce2f36f | awk '{print $2}' 2>&1'. @{vnf_list_string} = [ 0 | 7e445f00-b2d0-455f-9919-5ef72dab0f57 ] @{vnf_list} ${vnf_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_list} = [ 7e445f00-b2d0-455f-9919-5ef72dab0f57 ] ${vnf_list} Logs the length and contents of the ``list`` using given ``level``. List has one item: 7e445f00-b2d0-455f-9919-5ef72dab0f57 @{vnf_id_list} = [ 7e445f00-b2d0-455f-9919-5ef72dab0f57 ] @{ns_ip_list} @{vnf_id_list} @{vnf_list} Verifies that the given item is not empty. Length is 36 @{temp_list} Returns a list containing given items. @{temp_list} = [ ] ${vnf_id} @{vnf_list} 7e445f00-b2d0-455f-9919-5ef72dab0f57 ${vnf_id} Logs the given message with the given level. 7e445f00-b2d0-455f-9919-5ef72dab0f57 @{vnf_ip_list} ${vnf_id} ${vnf_id} Verifies that the given item is not empty. Length is 36 @{vnf_ip_list_string} osm vnf-show ${vnf_id} --filter vdur --literal | grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}' | sort -t: -u -k1,1 2>&1 Runs the given command in the system and returns the RC and output. Running command 'osm vnf-show 7e445f00-b2d0-455f-9919-5ef72dab0f57 --filter vdur --literal | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | sort -t: -u -k1,1 2>&1'. @{vnf_ip_list_string} = [ 0 | 172.21.248.231 192.168.115.13 ] ${vnf_ip_list_string}[1] Verifies that the given item is not empty. Length is 29 @{vnf_ip_list} ${vnf_ip_list_string}[1] Splits the ``string`` using ``separator`` as a delimiter string. @{vnf_ip_list} = [ 172.21.248.231 | 192.168.115.13 ] ${vnf_ip_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: 172.21.248.231 1: 192.168.115.13 ${vnf_ip_list} Verifies that the given item is not empty. Length is 2 @{vnf_ip_list} = [ 172.21.248.231 | 192.168.115.13 ] @{temp_list} ${temp_list} ${vnf_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.231 | 192.168.115.13 ] ${temp_list} Verifies that the given item is not empty. Length is 2 @{ns_ip_list} = [ 172.21.248.231 | 192.168.115.13 ] @{temp_list} ${temp_list} ${ns_ip_list} Combines the given ``lists`` together and returns the result. @{temp_list} = [ 172.21.248.231 | 192.168.115.13 ] ${temp_list} Logs the length and contents of the ``list`` using given ``level``. List length is 2 and it contains following items: 0: 172.21.248.231 1: 192.168.115.13 @{ip_list} = [ 172.21.248.231 | 192.168.115.13 ] ${ip_list} is not None Fails if the given condition is not true. ${slice2_vnfs_ips} ${ip_list} Makes a variable available everywhere within the scope of the current suite. ${slice2_vnfs_ips} = ['172.21.248.231', '192.168.115.13'] Obtains the list of IPs addresses in the second slice and sets the list as a suite variable (slice2_vnfs_ips) regression sanity shared_network_slicing SLICING-02 ${mgmt_vnf_ip} ${username} ${password} ${privatekey} @{slice2_vnfs_ips} ${host} Opens a new SSH connection to the given ``host`` and ``port``. '${password}'!='${EMPTY}' Login ${username} ${password} ELSE Login With Public Key ${username} ${privatekey} Runs the given keyword with the given arguments, if ``condition`` is true. ${username} ${privatekey} Logs into the SSH server using key-based authentication. Logging into '172.21.248.210:22' as 'ubuntu'. Read output: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-101-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 25 04:19:57 UTC 2021 System load: 0.03 Users logged in: 0 Usage of /: 10.3% of 9.52GB IP address for ens3: 172.21.248.210 Memory usage: 12% IP address for ens4: 192.168.107.3 Swap usage: 0% IP address for ens5: 192.168.115.3 Processes: 83 0 packages can be updated. 0 updates are security updates. New release '20.04.2 LTS' available. Run 'do-release-upgrade' to upgrade to it. Last login: Sun Apr 25 04:18:58 2021 from 172.21.1.7 To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. ubuntu@slicebasic:~$ ${ip} @{ip_list} 172.21.248.231 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 172.21.248.231 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. 192.168.115.13 ${result} ping -c 5 -W 1 ${ip} > /dev/null && echo OK shell=True Executes ``command`` on the remote machine and returns its outputs. Executing command 'ping -c 5 -W 1 192.168.115.13 > /dev/null && echo OK'. Command exited with return code 0. ${result} = OK ${result} Logs the given message with the given level. OK ${result} OK Fails if ``container`` does not contain ``item`` one or more times. Closes all open connections. SSH access to the slice middle vnf (mgmt_vnf_ip) with the credentials provided in the variables file and pings all the IP addresses in the list (slice2_vnfs_ips) regression sanity shared_network_slicing SLICING-02 ${slice2_name} Delete Network Slice Instance (NSI) Parameters: slice_name: Name of the slice instance Execution example: Delete NST ${slice_name} ${rc} ${stdout} osm nsi-delete ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-delete sliceshared 2>&1'. ${rc} = 0 ${stdout} = Deletion in progress ${stdout} Logs the given message with the given level. Deletion in progress ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${slice_delete_max_wait_time} ${slice_delete_pol_time} Check For Network Slice Instance To Be Deleted ${slice_name} Runs the specified keyword and retries if it fails. ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep sliceshared 2>&1'. ${rc} = 0 ${stdout} = sliceshared ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. sliceshared == sliceshared ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep sliceshared 2>&1'. ${rc} = 0 ${stdout} = sliceshared ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. sliceshared == sliceshared ${slice_name} Verify the slice instance is not present Parameters: slice_name: Name of the slice instance Execution example: Check For Network Slice Instance ${slice_name} ${rc} ${stdout} osm nsi-list | awk '{print $2}' | grep ${slice_name} Runs the given command in the system and returns the RC and output. Running command 'osm nsi-list | awk '{print $2}' | grep sliceshared 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${slice_name} Fails if objects are equal after converting them to strings. Stops the slice instance (slice2_name) cleanup regression sanity shared_network_slicing SLICING-02 ${nst_name} ${rc} ${stdout} osm netslice-template-delete ${nst_id} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-delete slice_basic_nst 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For NST ${nst_id} Runs the specified keyword and retries if it fails. ${nst_id} ${rc} ${stdout} osm netslice-template-list | awk '{print $2}' | grep ${nst_id} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-list | awk '{print $2}' | grep slice_basic_nst 2>&1'. ${rc} = 0 ${stdout} = slice_basic_nst2 ${stdout} ${nst_id} Fails if objects are equal after converting them to strings. Deletes the NST (nst_name) from OSM cleanup regression sanity shared_network_slicing SLICING-02 ${nst2_name} ${rc} ${stdout} osm netslice-template-delete ${nst_id} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-delete slice_basic_nst2 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For NST ${nst_id} Runs the specified keyword and retries if it fails. ${nst_id} ${rc} ${stdout} osm netslice-template-list | awk '{print $2}' | grep ${nst_id} Runs the given command in the system and returns the RC and output. Running command 'osm netslice-template-list | awk '{print $2}' | grep slice_basic_nst2 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nst_id} Fails if objects are equal after converting them to strings. Deletes the NST (nst2_name) from OSM cleanup regression sanity shared_network_slicing SLICING-02 ${nsd1_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete slice_basic_ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep slice_basic_ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. ${nsd2_name} ${rc} ${stdout} Run and Return RC and Output osm nsd-delete ${nsd_id} Runs the keyword and continues execution even if a failure occurs. osm nsd-delete ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-delete slice_basic_middle_ns 2>&1'. ${rc} = 0 ${stdout} = Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${stdout} Logs the given message with the given level. Deleted ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id} Runs the specified keyword and retries if it fails. ${nsd_id} ${rc} ${stdout} osm nsd-list | awk '{print $2}' | grep ${nsd_id} Runs the given command in the system and returns the RC and output. Running command 'osm nsd-list | awk '{print $2}' | grep slice_basic_middle_ns 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${nsd_id} Fails if objects are equal after converting them to strings. Deletes all the NSDs created for the test: nsd1_name, nsd2_name cleanup regression sanity shared_network_slicing SLICING-02 ${vnfd1_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete slice_basic_vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep slice_basic_vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. ${vnfd2_name} ${rc} ${stdout} osm vnfd-delete ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-delete slice_basic_middle_vnf 2>&1'. ${rc} = 0 ${stdout} = Deleted ${stdout} Logs the given message with the given level. Deleted ${rc} ${success_return_code} Fails if objects are unequal after converting them to integers. Argument types are: <class 'int'> <type 'unicode'> ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} Runs the specified keyword and retries if it fails. ${vnfd_id} ${rc} ${stdout} osm vnfd-list | awk '{print $2}' | grep ${vnfd_id} Runs the given command in the system and returns the RC and output. Running command 'osm vnfd-list | awk '{print $2}' | grep slice_basic_middle_vnf 2>&1'. ${rc} = 1 ${stdout} = ${stdout} ${vnfd_id} Fails if objects are equal after converting them to strings. Deletes all the VNFDs created for the test: vnfd1_name, vnfd2_name cleanup regression sanity shared_network_slicing SLICING-02 Test Cleanup Runs the given keyword with the given arguments and ignores possible error. Test Suit Cleanup: Deleting Descriptors, instance and templates Delete NST ${nst_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NST ${nst2_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd1_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete NSD ${nsd2_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd1_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. Delete VNFD ${vnfd2_name} Runs the given keyword with the given arguments, if the test failed. Keyword 'Run Keyword If Test Failed' can only be used in test teardown. All Tests alarms_sa_related_vnfs basic_network_slicing charm cleanup disable_port_security epa_capabilities epa_sriov hackfest_basic hackfest_cloudinit hackfest_multivdu instantiation_params k8scluster manual_scaling nopasswd openldap quota_enforcement rbac_configurations regression sanity shared_network_slicing simple_k8s SLICING-01 SLICING-02 vim vnf_vim_metrics vnf_vim_metrics_autoscaling Testsuite Testsuite.Basic 01-Crud Operations On Vim Targets Testsuite.Basic 05-Instantiation Parameters In Cloud Init Testsuite.Basic 06-Vnf With Charm Testsuite.Basic 07-Secure Key Management Testsuite.Basic 08-Disable Port Security Network Level Testsuite.Basic 09-Manual Vdu Scaling Testsuite.Basic 15-Rbac Configurations Testsuite.Epa 01-Epa Sriov Testsuite.Epa 02-Additional Capabilities Testsuite.Hackfest Basic Testsuite.Hackfest Cloudinit Testsuite.Hackfest Multivdu Testsuite.K8S 02-K8Scluster Creation Testsuite.K8S 03-Simple K8S Testsuite.K8S 04-Openldap Helm Testsuite.Quotas 01-Quota Enforcement Testsuite.Sa 01-Vnf With Vim Metrics Testsuite.Sa 02-Vnf With Vim Metrics And Autoscaling Testsuite.Sa 07-Alarms From Sa-Related Vnfs Testsuite.Slice 01-Network Slicing Testsuite.Slice 02-Shared Network Slicing Error in file '/robot-systest/testsuite/basic_01-crud_operations_on_vim_targets.robot' on line 19: Processing variable file '/robot-systest/resources/basic_01-crud_operations_on_vim_targets_data.py' failed: Importing variable file '/robot-systest/resources/basic_01-crud_operations_on_vim_targets_data.py' failed: NameError: name 'vim_insecure' is not defined Traceback (most recent call last): File "/robot-systest/resources/basic_01-crud_operations_on_vim_targets_data.py", line 60, in <module> if vim_insecure: PYTHONPATH: /usr/local/bin /usr/lib/python36.zip /usr/lib/python3.6 /usr/lib/python3.6/lib-dynload /usr/local/lib/python3.6/dist-packages /usr/lib/python3/dist-packages Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead. Keyword 'RequestsLibrary.Get Request' is deprecated. Please use `GET On Session` instead.