Change-Id: I756aedef764cdbbc91d27b6eba060cb4e5fea66b
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
50 files changed:
[Arguments] ${host}
${rc} ${stdout}= Run and Return RC and Output ping -c 2 -W 1 ${host}
[Arguments] ${host}
${rc} ${stdout}= Run and Return RC and Output ping -c 2 -W 1 ${host}
Should Be Equal As Integers ${rc} ${success_return_code}
Test Connectivity
Should Be Equal As Integers ${rc} ${success_return_code}
Test Connectivity
Should Not Be Empty ${application_name} ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju show-status ${application_name} --format yaml -m ${model_name} | grep scale | awk -F ': ' '{print $2}'
Should Not Be Empty ${application_name} ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju show-status ${application_name} --format yaml -m ${model_name} | grep scale | awk -F ': ' '{print $2}'
[Return] ${stdout}
Get Model Name
[Return] ${stdout}
Get Model Name
Should Not Be Empty ${ns_id} ${kdu_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju models | grep -i ${kdu_name} | grep -i ${ns_id} | cut -f1 -d " "
Should Not Be Empty ${ns_id} ${kdu_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju models | grep -i ${kdu_name} | grep -i ${ns_id} | cut -f1 -d " "
${model_name}= Set Variable ${kdu_name}-${ns_id}
Should Be Equal As Strings ${model_name} ${stdout}
[Return] ${stdout}
${model_name}= Set Variable ${kdu_name}-${ns_id}
Should Be Equal As Strings ${model_name} ${stdout}
[Return] ${stdout}
Should Not Be Empty ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju status -m ${model_name} | grep "\\-vdu" | grep -v "*" | grep -i ${vdu_profile_id} | cut -f1 -d " "
Should Not Be Empty ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju status -m ${model_name} | grep "\\-vdu" | grep -v "*" | grep -i ${vdu_profile_id} | cut -f1 -d " "
Should Not Be Empty ${stdout}
Should Contain ${stdout} ${ee_name}
[Return] ${stdout}
Should Not Be Empty ${stdout}
Should Contain ${stdout} ${ee_name}
[Return] ${stdout}
Should Not Be Empty ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju status -m ${model_name} | grep "\\-ns" | grep -v "*" | grep -i ${charm_name} | cut -f1 -d " "
Should Not Be Empty ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju status -m ${model_name} | grep "\\-ns" | grep -v "*" | grep -i ${charm_name} | cut -f1 -d " "
Should Not Be Empty ${stdout}
[Return] ${stdout}
Should Not Be Empty ${stdout}
[Return] ${stdout}
Should Not Be Empty ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju status -m ${model_name} | grep "\\-vnf" | grep -v "*" | grep -i ${vnf_profile_id} | cut -f1 -d " "
Should Not Be Empty ${model_name}
${host}= Remove String Using Regexp ${endpoint} :([0-9]+)$
${stdout}= Execute Remote Command Check Rc Return Output ${host} ${username} ${password} ${privatekey} juju status -m ${model_name} | grep "\\-vnf" | grep -v "*" | grep -i ${vnf_profile_id} | cut -f1 -d " "
Should Not Be Empty ${stdout}
Should Contain ${stdout} ${ee_name}
[Return] ${stdout}
\ No newline at end of file
Should Not Be Empty ${stdout}
Should Contain ${stdout} ${ee_name}
[Return] ${stdout}
\ No newline at end of file
Create K8s Cluster
[Arguments] ${k8scluster_creds} ${k8scluster_version} ${k8scluster_vim} ${k8scluster_net} ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-add --creds ${k8scluster_creds} --version ${k8scluster_version} --vim ${k8scluster_vim} --k8s-nets '{"net1": "${k8scluster_net}"}' ${k8scluster_name} --description "Robot cluster"
Create K8s Cluster
[Arguments] ${k8scluster_creds} ${k8scluster_version} ${k8scluster_vim} ${k8scluster_net} ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-add --creds ${k8scluster_creds} --version ${k8scluster_version} --vim ${k8scluster_vim} --k8s-nets '{"net1": "${k8scluster_net}"}' ${k8scluster_name} --description "Robot cluster"
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${k8scluster_launch_max_wait_time} ${k8scluster_launch_pol_time} Check For K8s Cluster To Be Ready ${k8scluster_name}
Check For K8s Cluster To Be Enabled ${k8scluster_name}
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${k8scluster_launch_max_wait_time} ${k8scluster_launch_pol_time} Check For K8s Cluster To Be Ready ${k8scluster_name}
Check For K8s Cluster To Be Enabled ${k8scluster_name}
Get K8s Cluster
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-list
Should Be Equal As Integers ${rc} ${success_return_code}
Get K8s Cluster
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-list
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Check for K8s Cluster
[Return] ${stdout}
Check for K8s Cluster
Check For K8s Cluster To Be Ready
[Arguments] ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED"
Check For K8s Cluster To Be Ready
[Arguments] ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED,DEGRADED"
${rc} ${stdout}= Run and Return RC and Output echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Strings ${stdout} ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Strings ${stdout} ${k8scluster_name}
Check For K8s Cluster To Be Enabled
[Arguments] ${k8scluster_name}
${rc2} ${stdout2}= Run and Return RC and Output osm k8scluster-show ${k8scluster_name}
Check For K8s Cluster To Be Enabled
[Arguments] ${k8scluster_name}
${rc2} ${stdout2}= Run and Return RC and Output osm k8scluster-show ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED"
${rc} ${stdout}= Run and Return RC and Output osm k8scluster-list --filter name="${k8scluster_name}" --filter _admin.operationalState="ENABLED"
${rc} ${stdout}= Run and Return RC and Output echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Strings ${stdout} ${k8scluster_name}
${rc} ${stdout}= Run and Return RC and Output echo "${stdout}" | awk '{print $2}' | grep ${k8scluster_name}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Strings ${stdout} ${k8scluster_name}
${config_file_attr} Set Variable If '${config_file}'!='${EMPTY}' --config_file '${config_file}' \
${ns_id}= Instantiate Network Service ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${config_file_attr}
${config_file_attr} Set Variable If '${config_file}'!='${EMPTY}' --config_file '${config_file}' \
${ns_id}= Instantiate Network Service ${ns_name} ${nsd} ${vim_name} ${config_attr} ${sshkeys_attr} ${config_file_attr}
WAIT UNTIL KEYWORD SUCCEEDS ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name}
Check For NS Instance For Failure ${ns_name}
WAIT UNTIL KEYWORD SUCCEEDS ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For NS Instance To Configured ${ns_name}
Check For NS Instance For Failure ${ns_name}
[Arguments] ${ns_name} ${nsd} ${vim_name} ${ns_extra_args}
${rc} ${stdout}= Run and Return RC and Output osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args}
[Arguments] ${ns_name} ${nsd} ${vim_name} ${ns_extra_args}
${rc} ${stdout}= Run and Return RC and Output osm ns-create --ns_name ${ns_name} --nsd_name ${nsd} --vim_account ${vim_name} ${ns_extra_args}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
[Arguments] ${ns_id} ${update_type} ${ns_update_config} ${ns_update_timeout}
${rc} ${stdout}= Run and Return RC and Output osm ns-update ${ns_id} --updatetype ${update_type} --config ${ns_update_config} --timeout ${ns_update_timeout} --wait
[Arguments] ${ns_id} ${update_type} ${ns_update_config} ${ns_update_timeout}
${rc} ${stdout}= Run and Return RC and Output osm ns-update ${ns_id} --updatetype ${update_type} --config ${ns_update_config} --timeout ${ns_update_timeout} --wait
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${ns_id}
Should Not Be Empty ${vnf_member_index}
${rc} ${stdout}= Run and Return RC and Output osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1
Should Not Be Empty ${ns_id}
Should Not Be Empty ${vnf_member_index}
${rc} ${stdout}= Run and Return RC and Output osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $14}' 2>&1
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${ns_id}
Should Not Be Empty ${vnf_member_index}
${rc} ${stdout}= Run and Return RC and Output osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $2}' 2>&1
Should Not Be Empty ${ns_id}
Should Not Be Empty ${vnf_member_index}
${rc} ${stdout}= Run and Return RC and Output osm vnf-list --filter member-vnf-index-ref=${vnf_member_index} | grep ${ns_id} | awk '{print $2}' 2>&1
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output osm ns-list | grep ${ns_name} | awk '{print $4}' 2>&1
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output osm ns-list | grep ${ns_name} | awk '{print $4}' 2>&1
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Be Empty ${stdout}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Be Empty ${stdout}
[Return] ${stdout}
should not be empty @{vnf_list}
@{temp_list}= Create List
FOR ${vnf_id} IN @{vnf_list}
should not be empty @{vnf_list}
@{temp_list}= Create List
FOR ${vnf_id} IN @{vnf_list}
@{vnf_ip_list} Get Vnf Ip List ${vnf_id}
@{temp_list}= Combine Lists ${temp_list} ${vnf_ip_list}
END
@{vnf_ip_list} Get Vnf Ip List ${vnf_id}
@{temp_list}= Combine Lists ${temp_list} ${vnf_ip_list}
END
# returns a string of ip addresses and needs to be converted into a list
should not be empty ${vnf_ip_list_string}[1]
@{vnf_ip_list} = split string ${vnf_ip_list_string}[1]
# returns a string of ip addresses and needs to be converted into a list
should not be empty ${vnf_ip_list_string}[1]
@{vnf_ip_list} = split string ${vnf_ip_list_string}[1]
- log list ${vnf_ip_list}
+ Log Many ${vnf_ip_list}
should not be empty ${vnf_ip_list}
[return] @{vnf_ip_list}
should not be empty ${vnf_ip_list}
[return] @{vnf_ip_list}
[arguments] ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list
[arguments] ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list
${rc} ${stdout}= run and return rc and output osm ns-list --filter name="${ns_name}"
${rc} ${stdout}= run and return rc and output osm ns-list --filter name="${ns_name}"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain Any ${stdout} READY BROKEN
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain Any ${stdout} READY BROKEN
[Arguments] ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list
[Arguments] ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list
${rc} ${stdout}= Run and Return RC and Output osm ns-list --filter name="${ns_name}"
${rc} ${stdout}= Run and Return RC and Output osm ns-list --filter name="${ns_name}"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Contain ${stdout} BROKEN
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Contain ${stdout} BROKEN
[Arguments] ${ns}
${rc} ${stdout}= Run and Return RC and Output openstack server list
[Arguments] ${ns}
${rc} ${stdout}= Run and Return RC and Output openstack server list
${rc} ${stdout}= Run and Return RC and Output osm ns-list | awk '{print $2}' | grep ${ns}
Should Not Be Equal As Strings ${stdout} ${ns}
${rc} ${stdout}= Run and Return RC and Output osm ns-list | awk '{print $2}' | grep ${ns}
Should Not Be Equal As Strings ${stdout} ${ns}
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-list ${ns_name}
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-list ${ns_name}
- log ${stdout}
- log ${rc}
+ Log ${stdout}
+ Log ${rc}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Be Empty ${ns_operation_id}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-show ${ns_operation_id} --literal | yq .operationState | tr -d \\"
Should Not Be Empty ${ns_operation_id}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-show ${ns_operation_id} --literal | yq .operationState | tr -d \\"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain ${stdout} COMPLETED msg=The ns-action with id ${ns_operation_id} was not completed values=False
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain ${stdout} COMPLETED msg=The ns-action with id ${ns_operation_id} was not completed values=False
Should Not Be Empty ${ns_operation_id}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-show ${ns_operation_id} --literal | yq .operationState | tr -d \\"
Should Not Be Empty ${ns_operation_id}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-show ${ns_operation_id} --literal | yq .operationState | tr -d \\"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain ${stdout} FAILED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain ${stdout} FAILED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False
Should Not Be Empty ${ns_operation_id}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-show ${ns_operation_id} --literal | yq .operationState | tr -d \\"
Should Not Be Empty ${ns_operation_id}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-show ${ns_operation_id} --literal | yq .operationState | tr -d \\"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain Any ${stdout} FAILED COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain Any ${stdout} FAILED COMPLETED msg=Timeout waiting for ns-action with id ${ns_operation_id} values=False
[Arguments] ${ns_name} ${vnf_id} ${vdur_id}
${rc} ${affinity_group_id}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[] | select(.id == "'${vdur_id}'")' | yq '."affinity-or-anti-affinity-group-id"[0]' | tr -d \\" 2>&1
[Arguments] ${ns_name} ${vnf_id} ${vdur_id}
${rc} ${affinity_group_id}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[] | select(.id == "'${vdur_id}'")' | yq '."affinity-or-anti-affinity-group-id"[0]' | tr -d \\" 2>&1
- log ${affinity_group_id}
+ Log ${affinity_group_id}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${affinity_group_id} values=False
${rc} ${affinity_group_name}= Run and Return RC and Output osm ns-show ${ns_name} --literal | yq '."affinity-or-anti-affinity-group"[] | select(.id == "'${affinity_group_id}'")' | yq '.name' | tr -d \\" 2>&1
Should Be Equal As Integers ${rc} ${success_return_code} msg=${affinity_group_id} values=False
${rc} ${affinity_group_name}= Run and Return RC and Output osm ns-show ${ns_name} --literal | yq '."affinity-or-anti-affinity-group"[] | select(.id == "'${affinity_group_id}'")' | yq '.name' | tr -d \\" 2>&1
- log ${affinity_group_name}
+ Log ${affinity_group_name}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${affinity_group_name} values=False
[Return] ${affinity_group_name}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${affinity_group_name} values=False
[Return] ${affinity_group_name}
Should Not Be Empty ${ns_id}
Should Not Be Empty ${type}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-list ${ns_id} | grep ${type} | awk '{print $2}' 2>&1
Should Not Be Empty ${ns_id}
Should Not Be Empty ${type}
${rc} ${stdout}= Run and Return RC and Output osm ns-op-list ${ns_id} | grep ${type} | awk '{print $2}' 2>&1
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Be Empty ${stdout}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Be Empty ${stdout}
[Return] ${stdout}
*** Keywords ***
Get NSDs List
${rc} ${stdout}= Run and Return RC and Output osm nspkg-list
*** Keywords ***
Get NSDs List
${rc} ${stdout}= Run and Return RC and Output osm nspkg-list
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
[Arguments] ${nsd_pkg}
${rc} ${stdout}= Run and Return RC and Output osm nspkg-create ${nsd_pkg}
[Arguments] ${nsd_pkg}
${rc} ${stdout}= Run and Return RC and Output osm nspkg-create ${nsd_pkg}
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
${rc} ${stdout}= Run Keyword And Continue On Failure Run and Return RC and Output osm nspkg-delete ${nsd_id}
Should Be Equal As Integers ${rc} ${success_return_code}
${rc} ${stdout}= Run Keyword And Continue On Failure Run and Return RC and Output osm nspkg-delete ${nsd_id}
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id}
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For NSD ${nsd_id}
${config_file_attr} Set Variable If '${config_file}'!='${EMPTY}' --config_file '${config_file}' \
${nsi_id}= Instantiate Network Slice ${slice_name} ${nst} ${vim_name} ${config_attr} ${config_file_attr} ${sshkeys_attr}
${config_file_attr} Set Variable If '${config_file}'!='${EMPTY}' --config_file '${config_file}' \
${nsi_id}= Instantiate Network Slice ${slice_name} ${nst} ${vim_name} ${config_attr} ${config_file_attr} ${sshkeys_attr}
WAIT UNTIL KEYWORD SUCCEEDS ${slice_launch_max_wait_time} ${slice_launch_pol_time} Check For Network Slice Instance To Configured ${slice_name}
Check For Network Slice Instance For Failure ${slice_name}
WAIT UNTIL KEYWORD SUCCEEDS ${slice_launch_max_wait_time} ${slice_launch_pol_time} Check For Network Slice Instance To Configured ${slice_name}
Check For Network Slice Instance For Failure ${slice_name}
[Arguments] ${slice_name} ${nst} ${vim_name} ${slice_extra_args} ${sshkeys_attr}
${rc} ${stdout}= Run and Return RC and Output osm nsi-create --nsi_name ${slice_name} --nst_name ${nst} --vim_account ${vim_name} ${sshkeys_attr} ${slice_extra_args}
[Arguments] ${slice_name} ${nst} ${vim_name} ${slice_extra_args} ${sshkeys_attr}
${rc} ${stdout}= Run and Return RC and Output osm nsi-create --nsi_name ${slice_name} --nst_name ${nst} --vim_account ${vim_name} ${sshkeys_attr} ${slice_extra_args}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${slice_name}
${rc} ${stdout}= Run and Return RC and Output osm ns-list | grep ${slice_name} | wc -l 2>&1
Should Not Be Empty ${slice_name}
${rc} ${stdout}= Run and Return RC and Output osm ns-list | grep ${slice_name} | wc -l 2>&1
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
# Get all the ns_id in the slice
@{slice_ns_list} Get Slice Ns List ${slice_name}
# Get all the ns_id in the slice
@{slice_ns_list} Get Slice Ns List ${slice_name}
- log many @{slice_ns_list}
+ Log Many @{slice_ns_list}
@{temp_list}= Create List
# For each ns_id in the list, get all the vnf_id and their IP addresses
FOR ${ns_id} IN @{slice_ns_list}
@{temp_list}= Create List
# For each ns_id in the list, get all the vnf_id and their IP addresses
FOR ${ns_id} IN @{slice_ns_list}
@{vnf_id_list} Get Ns Vnf List ${ns_id}
# For each vnf_id in the list, get all its IP addresses
@{ns_ip_list} Get Ns Ip List @{vnf_id_list}
@{vnf_id_list} Get Ns Vnf List ${ns_id}
# For each vnf_id in the list, get all its IP addresses
@{ns_ip_list} Get Ns Ip List @{vnf_id_list}
[Arguments] ${slice_name}
${rc} ${stdout}= Run and Return RC and Output osm nsi-list --filter name="${slice_name}"
[Arguments] ${slice_name}
${rc} ${stdout}= Run and Return RC and Output osm nsi-list --filter name="${slice_name}"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain Any ${stdout} READY BROKEN configured
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain Any ${stdout} READY BROKEN configured
[Arguments] ${slice_name}
${rc} ${stdout}= Run and Return RC and Output osm nsi-list --filter name="${slice_name}"
[Arguments] ${slice_name}
${rc} ${stdout}= Run and Return RC and Output osm nsi-list --filter name="${slice_name}"
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Contain ${stdout} failed
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Contain ${stdout} failed
[Arguments] ${slice_name} ${slice_delete_max_wait_time}=4min
${rc} ${stdout}= Run and Return RC and Output osm nsi-delete ${slice_name}
[Arguments] ${slice_name} ${slice_delete_max_wait_time}=4min
${rc} ${stdout}= Run and Return RC and Output osm nsi-delete ${slice_name}
Should Be Equal As Integers ${rc} ${success_return_code}
${slice_delete_max_wait_time}= Convert Time ${slice_delete_max_wait_time} result_format=number
Should Be Equal As Integers ${rc} ${success_return_code}
${slice_delete_max_wait_time}= Convert Time ${slice_delete_max_wait_time} result_format=number
*** Keywords ***
Get NST List
${rc} ${stdout}= Run and Return RC and Output osm netslice-template-list
*** Keywords ***
Get NST List
${rc} ${stdout}= Run and Return RC and Output osm netslice-template-list
- log ${stdout}
- log ${rc}
+ Log ${stdout}
+ Log ${rc}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
[Arguments] ${nst}
${rc} ${stdout}= Run and Return RC and Output osm netslice-template-create ${nst}
[Arguments] ${nst}
${rc} ${stdout}= Run and Return RC and Output osm netslice-template-create ${nst}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
[Arguments] ${nst_id}
${rc} ${stdout}= Run and Return RC and Output osm netslice-template-delete ${nst_id}
[Arguments] ${nst_id}
${rc} ${stdout}= Run and Return RC and Output osm netslice-template-delete ${nst_id}
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For NST ${nst_id}
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For NST ${nst_id}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server show ${server_id} | grep flavor | awk 'NR>1{print $1}' RS='(' FS=')'
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server show ${server_id} | grep flavor | awk 'NR>1{print $1}' RS='(' FS=')'
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${flavor_id}
${rc} ${stdout}= Run and Return RC and Output openstack flavor show ${flavor_id} | grep properties | awk -F '|' '{print $3}'
Should Not Be Empty ${flavor_id}
${rc} ${stdout}= Run and Return RC and Output openstack flavor show ${flavor_id} | grep properties | awk -F '|' '{print $3}'
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list | grep ${ns_name} | awk '{print $4}'
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list | grep ${ns_name} | awk '{print $4}'
Should Be Equal As Integers ${rc} ${success_return_code}
@{servers} = Split String ${stdout}
${n_servers}= Get Length ${servers}
Should Be Equal As Integers ${rc} ${success_return_code}
@{servers} = Split String ${stdout}
${n_servers}= Get Length ${servers}
Should Not Be Empty ${field}
${rc} ${stdout}= Run and Return RC and Output openstack quota show -c ${field} -f value
Should Not Be Empty ${field}
${rc} ${stdout}= Run and Return RC and Output openstack quota show -c ${field} -f value
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${server_id}
Should Not Be Empty ${field}
${rc} ${stdout}= Run and Return RC and Output openstack server show ${server_id} -c ${field} -f value
Should Not Be Empty ${server_id}
Should Not Be Empty ${field}
${rc} ${stdout}= Run and Return RC and Output openstack server show ${server_id} -c ${field} -f value
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${server_group_name}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server group show ${server_group_name} -c members -f value
Should Not Be Empty ${server_group_name}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server group show ${server_group_name} -c members -f value
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain ${stdout} ${server_id}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Contain ${stdout} ${server_id}
Should Not Be Empty ${volume_id}
${rc} ${stdout}= Run and Return RC and Output openstack volume list | grep ${volume_id} | wc -l
Should Not Be Empty ${volume_id}
${rc} ${stdout}= Run and Return RC and Output openstack volume list | grep ${volume_id} | wc -l
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${volume_id}
${rc} ${stdout}= Run and Return RC and Output openstack volume delete ${volume_id}
Should Not Be Empty ${volume_id}
${rc} ${stdout}= Run and Return RC and Output openstack volume delete ${volume_id}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server stop ${server_id}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server stop ${server_id}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server set --state error ${server_id}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server set --state error ${server_id}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server delete ${server_id}
Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server delete ${server_id}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output tar -czf ${pkg}.tar.gz -C ${pkg} .
${rc} ${stdout}= Run and Return RC and Output osm upload-package ${pkg}.tar.gz
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output tar -czf ${pkg}.tar.gz -C ${pkg} .
${rc} ${stdout}= Run and Return RC and Output osm upload-package ${pkg}.tar.gz
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${project_name}
Should Not Be Empty ${new_name}
${rc} ${stdout}= Run and Return RC and Output osm project-update ${project_name} --name ${new_name}
Should Not Be Empty ${project_name}
Should Not Be Empty ${new_name}
${rc} ${stdout}= Run and Return RC and Output osm project-update ${project_name} --name ${new_name}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
${osm_update_command}= Catenate ${osm_update_command} --${param_name}=${param_value}
END
${rc} ${stdout}= Run and Return RC and Output ${osm_update_command}
${osm_update_command}= Catenate ${osm_update_command} --${param_name}=${param_value}
END
${rc} ${stdout}= Run and Return RC and Output ${osm_update_command}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
${osm_sdnc_create_command}= Catenate ${osm_sdnc_create_command} --${param_name}=${param_value}
END
${rc} ${stdout}= Run and Return RC and Output ${osm_sdnc_create_command}
${osm_sdnc_create_command}= Catenate ${osm_sdnc_create_command} --${param_name}=${param_value}
END
${rc} ${stdout}= Run and Return RC and Output ${osm_sdnc_create_command}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
[Arguments] ${sdnc_name}
${rc} ${stdout}= Run Keyword And Continue On Failure Run and Return RC and Output osm sdnc-delete ${sdnc_name}
[Arguments] ${sdnc_name}
${rc} ${stdout}= Run Keyword And Continue On Failure Run and Return RC and Output osm sdnc-delete ${sdnc_name}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
Wait Until Keyword Succeeds ${delete_max_wait_time} ${delete_pol_time} Check for SDNC To Be Deleted ${sdnc_name}
Get SDNC List
${rc} ${stdout}= Run and Return RC and Output osm sdnc-list
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
Wait Until Keyword Succeeds ${delete_max_wait_time} ${delete_pol_time} Check for SDNC To Be Deleted ${sdnc_name}
Get SDNC List
${rc} ${stdout}= Run and Return RC and Output osm sdnc-list
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
[Arguments] ${sdnc_id}
${rc} ${stdout}= Run and Return RC and Output osm sdnc-show ${sdnc_id} | grep -io ENABLED
[Arguments] ${sdnc_id}
${rc} ${stdout}= Run and Return RC and Output osm sdnc-show ${sdnc_id} | grep -io ENABLED
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
&{headers} Create Dictionary Content-Type=application/json Accept=application/json
&{data} Create Dictionary username=${osm_user} password=${osm_password} project-id=${osm_project}
${resp}= Post On Session osmhit ${auth_token_uri} json=${data} headers=${headers}
&{headers} Create Dictionary Content-Type=application/json Accept=application/json
&{data} Create Dictionary username=${osm_user} password=${osm_password} project-id=${osm_project}
${resp}= Post On Session osmhit ${auth_token_uri} json=${data} headers=${headers}
Pass Execution If ${resp.status_code} in ${success_status_code_list} Get Auth Token completed
Set Suite Variable ${token_status_code} ${resp.status_code}
${access_token}= Get Value From Json ${resp.json()} $..id
Pass Execution If ${resp.status_code} in ${success_status_code_list} Get Auth Token completed
Set Suite Variable ${token_status_code} ${resp.status_code}
${access_token}= Get Value From Json ${resp.json()} $..id
Run Keyword If '${password}'!='${EMPTY}' Login ${username} ${password}
... ELSE Login With Public Key ${username} ${privatekey}
${stdout} ${rc}= Execute Command ${command} return_rc=True return_stdout=True
Run Keyword If '${password}'!='${EMPTY}' Login ${username} ${password}
... ELSE Login With Public Key ${username} ${privatekey}
${stdout} ${rc}= Execute Command ${command} return_rc=True return_stdout=True
- log ${rc}
- log ${stdout}
+ Log ${rc}
+ Log ${stdout}
Close All Connections
Should Be Equal As Integers ${rc} 0
[Return] ${stdout}
Close All Connections
Should Be Equal As Integers ${rc} 0
[Return] ${stdout}
${osm_vim_create_command}= Catenate ${osm_vim_create_command} --${param_name}=${param_value}
END
${rc} ${stdout}= Run and Return RC and Output ${osm_vim_create_command}
${osm_vim_create_command}= Catenate ${osm_vim_create_command} --${param_name}=${param_value}
END
${rc} ${stdout}= Run and Return RC and Output ${osm_vim_create_command}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
[Arguments] ${vim_name}
${rc} ${stdout}= Run Keyword And Continue On Failure Run and Return RC and Output osm vim-delete ${vim_name}
[Arguments] ${vim_name}
${rc} ${stdout}= Run Keyword And Continue On Failure Run and Return RC and Output osm vim-delete ${vim_name}
Wait Until Keyword Succeeds ${delete_max_wait_time} ${delete_pol_time} Check for VIM Target ${vim_name}
Get VIM Targets
${rc} ${stdout}= Run and Return RC and Output osm vim-list
Wait Until Keyword Succeeds ${delete_max_wait_time} ${delete_pol_time} Check for VIM Target ${vim_name}
Get VIM Targets
${rc} ${stdout}= Run and Return RC and Output osm vim-list
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Be Empty ${vnf_id}
${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | grep vim-id | awk '{print $2}'
Should Not Be Empty ${vnf_id}
${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | grep vim-id | awk '{print $2}'
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
[Return] ${stdout}
Should Not Be Empty ${vnf_id}
${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[].id'
Should Not Be Empty ${vnf_id}
${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[].id'
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
@{vdur_ids}= Split String ${stdout}
[Return] @{vdur_ids}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
@{vdur_ids}= Split String ${stdout}
[Return] @{vdur_ids}
Should Not Be Empty ${vnf_id}
${rc} ${vm_vim_id}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[] | select(.id == "'${vdur_id}'")' | yq '."vim-id"' | tr -d \\"
Should Not Be Empty ${vnf_id}
${rc} ${vm_vim_id}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[] | select(.id == "'${vdur_id}'")' | yq '."vim-id"' | tr -d \\"
Should Be Equal As Integers ${rc} ${success_return_code} msg=${vm_vim_id} values=False
[Return] ${vm_vim_id}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${vm_vim_id} values=False
[Return] ${vm_vim_id}
*** Keywords ***
Get VNFDs List
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-list
*** Keywords ***
Get VNFDs List
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-list
- log ${stdout}
- log ${rc}
+ Log ${stdout}
+ Log ${rc}
Should Be Equal As Integers ${rc} ${success_return_code}
Should Be Equal As Integers ${rc} ${success_return_code}
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-create ${overrides} ${vnfd_pkg}
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-create ${overrides} ${vnfd_pkg}
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-update --content ${vnfd_pkg} ${vnfd_name}
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-update --content ${vnfd_pkg} ${vnfd_name}
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-create ${overrides} ${vnfd_pkg} --override '${override_fields}'
# Proceedes with the onboarding with the appropriate arguments
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-create ${overrides} ${vnfd_pkg} --override '${override_fields}'
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
Should Be Equal As Integers ${rc} ${success_return_code}
${lines}= Get Line Count ${stdout}
${last}= Evaluate ${lines} - 1
[Arguments] ${vnfd_id}
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-delete ${vnfd_id}
[Arguments] ${vnfd_id}
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-delete ${vnfd_id}
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id}
Should Be Equal As Integers ${rc} ${success_return_code}
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id}
[Arguments] ${vnfd_id}
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-delete ${vnfd_id}
[Arguments] ${vnfd_id}
${rc} ${stdout}= Run and Return RC and Output osm vnfpkg-delete ${vnfd_id}
Should Be Equal As Integers ${rc} ${failure_return_code}
Should Contain ${stdout} 409 msg=Expected Conflict values=False
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} True
Should Be Equal As Integers ${rc} ${failure_return_code}
Should Contain ${stdout} 409 msg=Expected Conflict values=False
WAIT UNTIL KEYWORD SUCCEEDS ${delete_max_wait_time} ${delete_pol_time} Check For VNFD ${vnfd_id} True
Get Management Ip Addresses
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Management Ip Addresses
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Get Management Ip Addresses
[Tags] verify
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Management Ip Addresses
[Tags] verify
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
[Arguments] ${folder_name}
${rc} ${stdout}= Run and Return RC and Output rm -rf '${folder_name}'
[Arguments] ${folder_name}
${rc} ${stdout}= Run and Return RC and Output rm -rf '${folder_name}'
Set Suite Variable ${vnf_id2} ${vnfr_list}[1]
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf1_ipmgmt} ${ip}
Set Suite Variable ${vnf_id2} ${vnfr_list}[1]
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf1_ipmgmt} ${ip}
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf2_ipmgmt} ${ip}
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf2_ipmgmt} ${ip}
Variable Should Exist ${privatekey} msg=SSH private key not available
Sleep 10 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ip --brief addr show up | grep -v "^lo" | awk '{print $3}'
Variable Should Exist ${privatekey} msg=SSH private key not available
Sleep 10 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ip --brief addr show up | grep -v "^lo" | awk '{print $3}'
@{ip} = Split String ${stdout}
Should Match Regexp ${ip}[1] ${datanet1_prefix} msg=${ip}[1] doesn't match subnet's regexp ${datanet1_prefix}
Should Match Regexp ${ip}[2] ${datanet2_prefix} msg=${ip}[2] doesn't match subnet's regexp ${datanet2_prefix}
@{ip} = Split String ${stdout}
Should Match Regexp ${ip}[1] ${datanet1_prefix} msg=${ip}[1] doesn't match subnet's regexp ${datanet1_prefix}
Should Match Regexp ${ip}[2] ${datanet2_prefix} msg=${ip}[2] doesn't match subnet's regexp ${datanet2_prefix}
Variable Should Exist ${vnf2_ipmgmt} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
Variable Should Exist ${privatekey} msg=SSH private key not available
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip --brief addr show up | grep -v "^lo" | awk '{print $3}'
Variable Should Exist ${vnf2_ipmgmt} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
Variable Should Exist ${privatekey} msg=SSH private key not available
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip --brief addr show up | grep -v "^lo" | awk '{print $3}'
@{ip} = Split String ${stdout}
Should Match Regexp ${ip}[1] ${datanet1_prefix} msg=${ip}[1] doesn't match subnet's regexp ${datanet1_prefix}
Should Match Regexp ${ip}[2] ${datanet2_prefix} msg=${ip}[2] doesn't match subnet's regexp ${datanet2_prefix}
@{ip} = Split String ${stdout}
Should Match Regexp ${ip}[1] ${datanet1_prefix} msg=${ip}[1] doesn't match subnet's regexp ${datanet1_prefix}
Should Match Regexp ${ip}[2] ${datanet2_prefix} msg=${ip}[2] doesn't match subnet's regexp ${datanet2_prefix}
Variable Should Exist ${vnf1_ipmgmt} msg=IP address of the data VNF '${vnf_member_index_1}' is not available
Variable Should Exist ${privatekey} msg=SSH private key not available
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf2_ipmgmt}
Variable Should Exist ${vnf1_ipmgmt} msg=IP address of the data VNF '${vnf_member_index_1}' is not available
Variable Should Exist ${privatekey} msg=SSH private key not available
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf2_ipmgmt}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ping -c 5 ${vnf2_ip1}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ping -c 5 ${vnf2_ip1}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ping -c 5 ${vnf2_ip2}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ping -c 5 ${vnf2_ip2}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ping -c 5 ${vnf2_ip3}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf1_ipmgmt} ${username} ${EMPTY} ${privatekey} ping -c 5 ${vnf2_ip3}
Variable Should Exist ${vnf1_ipmgmt} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
Variable Should Exist ${privatekey} msg=SSH private key not available
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ipmgmt}
Variable Should Exist ${vnf1_ipmgmt} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
Variable Should Exist ${privatekey} msg=SSH private key not available
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ipmgmt}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ip1}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ip1}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ip2}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ip2}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ip3}
${stdout}= Execute Remote Command Check Rc Return Output ${vnf2_ipmgmt} ${username} ${EMPTY} ${privatekey} ip addr ; ping -c 5 ${vnf1_ip3}
Set Suite Variable ${vnf_id} ${vnfr_list}[0]
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_ipmgmt} ${ip}
Set Suite Variable ${vnf_id} ${vnfr_list}[0]
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_ipmgmt} ${ip}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${num_virtual_storage}= Convert To Integer ${stdout}
Set Suite Variable ${vnf_num_volumes} ${num_virtual_storage}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${num_virtual_storage}= Convert To Integer ${stdout}
Set Suite Variable ${vnf_num_volumes} ${num_virtual_storage}
Get VNF IP Address
[Tags] verify
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get VNF IP Address
[Tags] verify
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Variable Should Exist ${vnf_ip_addr} msg=VNF is not available
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
Variable Should Exist ${vnf_ip_addr} msg=VNF is not available
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
# [Tags] cleanup
# Variable Should Exist ${volume_id} msg=Volume is not available
# ${exists}= Check If Volume Exists ${volume_id}
# [Tags] cleanup
# Variable Should Exist ${volume_id} msg=Volume is not available
# ${exists}= Check If Volume Exists ${volume_id}
# IF ${exists}==0
# Fail msg=Persistent volume was deleted
# Set Suite Variable ${volume_id} ${EMPTY}}
# ELSE
# IF ${exists}==0
# Fail msg=Persistent volume was deleted
# Set Suite Variable ${volume_id} ${EMPTY}}
# ELSE
-# log Persistent volume still exists, deleting...
+# Log Persistent volume still exists, deleting...
# Delete Volume ${volume_id}
# Set Suite Variable ${volume_id} ${EMPTY}}
# END
# Delete Volume ${volume_id}
# Set Suite Variable ${volume_id} ${EMPTY}}
# END
Variable Should Exist ${ns_id} msg=NS is not available
${id} Get Vnf Id ${ns_id} ${vnf_member_index}
Variable Should Exist ${ns_id} msg=NS is not available
${id} Get Vnf Id ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_id} ${id}
Set Suite Variable ${ns_update_config} '{changeVnfPackageData: [{vnfInstanceId: "${vnf_id}", vnfdId: "${vnfd_id}"}]}'
Set Suite Variable ${vnf_id} ${id}
Set Suite Variable ${ns_update_config} '{changeVnfPackageData: [{vnfInstanceId: "${vnf_id}", vnfdId: "${vnfd_id}"}]}'
Get Management Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Management Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Get Management Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Management Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Variable Should Exist ${ns_id} msg=NS is not available
${id} Get Vnf Id ${ns_id} ${vnf_member_index}
Variable Should Exist ${ns_id} msg=NS is not available
${id} Get Vnf Id ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_id} ${id}
Set Suite Variable ${ns_update_config} '{changeVnfPackageData: [{vnfInstanceId: "${vnf_id}", vnfdId: "${vnfd_id}"}]}'
Set Suite Variable ${vnf_id} ${id}
Set Suite Variable ${ns_update_config} '{changeVnfPackageData: [{vnfInstanceId: "${vnf_id}", vnfdId: "${vnfd_id}"}]}'
Get Management Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Management Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Get VNF IP Address
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get VNF IP Address
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
${vnfs_list}= Get Ns Vnf List ${ns_id}
${vim_id}= Get VNF VIM ID ${vnfs_list}[0]
${vnfs_list}= Get Ns Vnf List ${ns_id}
${vim_id}= Get VNF VIM ID ${vnfs_list}[0]
Set Suite Variable ${vnf_server_id} ${vim_id}
Set Suite Variable ${vnf_server_id} ${vim_id}
${flavor_id}= Get Server Flavor ID ${vnf_server_id}
${properties}= Get Flavor Properties ${flavor_id}
${flavor_id}= Get Server Flavor ID ${vnf_server_id}
${properties}= Get Flavor Properties ${flavor_id}
Set Suite Variable ${flavor_properties} ${properties}
Set Suite Variable ${flavor_properties} ${properties}
Variable Should Exist ${ns_id} msg=Network service instance is not available
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${ip_mgmt_1} ${ip}
Variable Should Exist ${ns_id} msg=Network service instance is not available
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${ip_mgmt_1} ${ip}
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${ip_mgmt_2} ${ip}
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${ip_mgmt_2} ${ip}
Variable Should Exist ${ip_mgmt_1} msg=IP address of the data VNF '${vnf_member_index_1}' is not available
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_1} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip2}
Variable Should Exist ${ip_mgmt_1} msg=IP address of the data VNF '${vnf_member_index_1}' is not available
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_1} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip2}
Ping from Vnf2 to Vnf1
Variable Should Exist ${ip_mgmt_2} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_2} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip1}
Ping from Vnf2 to Vnf1
Variable Should Exist ${ip_mgmt_2} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_2} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip1}
Variable Should Exist ${ns_id} msg=Network service instance is not available
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${ip_mgmt_1} ${ip}
Variable Should Exist ${ns_id} msg=Network service instance is not available
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${ip_mgmt_1} ${ip}
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${ip_mgmt_2} ${ip}
${ip} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${ip_mgmt_2} ${ip}
Variable Should Exist ${ip_mgmt_1} msg=IP address of the data VNF '${vnf_member_index_1}' is not available
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_1} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip2}
Variable Should Exist ${ip_mgmt_1} msg=IP address of the data VNF '${vnf_member_index_1}' is not available
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_1} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip2}
Ping from Vnf2 to Vnf1
Variable Should Exist ${ip_mgmt_2} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_2} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip1}
Ping from Vnf2 to Vnf1
Variable Should Exist ${ip_mgmt_2} msg=IP address of the data VNF '${vnf_member_index_2}' is not available
${stdout}= Execute Remote Command Check Rc Return Output ${ip_mgmt_2} ${username} ${password} ${EMPTY} ip addr ; ping -c 5 ${datanet_ip1}
ELSE
${memory}= Evaluate ${ram_quota} / 1000
END
ELSE
${memory}= Evaluate ${ram_quota} / 1000
END
Create VNFD Overriding Fields '%{PACKAGES_FOLDER}/${vnfd_pkg}' virtual-compute-desc.1.virtual-memory.size=${memory}
Create VNFD Overriding Fields '%{PACKAGES_FOLDER}/${vnfd_pkg}' virtual-compute-desc.1.virtual-memory.size=${memory}
${rand}= Generate Random String 4 [NUMBERS]
${ns_name}= Catenate SEPARATOR=_ ${ns_name_prefix} ${rand}
Set Suite Variable ${ns_name}
${rand}= Generate Random String 4 [NUMBERS]
${ns_name}= Catenate SEPARATOR=_ ${ns_name_prefix} ${rand}
Set Suite Variable ${ns_name}
${id}= Instantiate Network Service ${ns_name} ${nsd_name} %{VIM_TARGET} --config '${ns_config}' --ssh_keys ${publickey}
${id}= Instantiate Network Service ${ns_name} ${nsd_name} %{VIM_TARGET} --config '${ns_config}' --ssh_keys ${publickey}
Set Suite Variable ${ns_id} ${id}
WAIT UNTIL KEYWORD SUCCEEDS ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For Ns Instance To Configured ${ns_name}
${rc} ${stdout}= run and return rc and output osm ns-list --filter id="${ns_id}" | grep ${ns_id} | awk '{print $8}'
Set Suite Variable ${ns_id} ${id}
WAIT UNTIL KEYWORD SUCCEEDS ${ns_launch_max_wait_time} ${ns_launch_pol_time} Check For Ns Instance To Configured ${ns_name}
${rc} ${stdout}= run and return rc and output osm ns-list --filter id="${ns_id}" | grep ${ns_id} | awk '{print $8}'
Should Contain ${stdout} BROKEN
${rc} ${stdout}= run and return rc and output osm ns-show ${ns_id} --literal | yq .errorDetail
Should Contain ${stdout} BROKEN
${rc} ${stdout}= run and return rc and output osm ns-show ${ns_id} --literal | yq .errorDetail
Should Contain ${stdout} Deploying at VIM: Error at create vdu
Should Contain ${stdout} Deploying at VIM: Error at create vdu
Get Vnf Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Vnf Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Test Ping
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Test Ping
Get Vnf Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Vnf Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Check Remote File Injected Via Cloud-init
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_ip_addr} ${username} ${password} ${EMPTY} sudo cat /root/helloworld.txt
Check Remote File Injected Via Cloud-init
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_ip_addr} ${username} ${password} ${EMPTY} sudo cat /root/helloworld.txt
Get Vnf Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get Vnf Ip Address
${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Test Ping
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Test Ping
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
FOR ${vnf_id} IN @{vnf_id_list}
FOR ${vnf_id} IN @{vnf_id_list}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
Get Volume VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_several_index}
Get Volume VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_volumes_id} ${id}
Set Suite Variable ${vnf_volumes_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_volumes_id} ${id}
@{volumes_ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Set Suite Variable @{volumes_ip_list} @{volumes_ip_list}
@{volumes_ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Set Suite Variable @{volumes_ip_list} @{volumes_ip_list}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${num_virtual_storage}= Convert To Integer ${stdout}
Set Suite Variable ${vnf_num_volumes} ${num_virtual_storage}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${num_virtual_storage}= Convert To Integer ${stdout}
Set Suite Variable ${vnf_num_volumes} ${num_virtual_storage}
${volumes_attached}= Get Server Property ${vdu_volumes_id} volumes_attached
${match}= Get Regexp Matches ${volumes_attached} '([0-9a-f\-]+)' 1
Set Suite Variable ${volume_id} ${match}[0]
${volumes_attached}= Get Server Property ${vdu_volumes_id} volumes_attached
${match}= Get Regexp Matches ${volumes_attached} '([0-9a-f\-]+)' 1
Set Suite Variable ${volume_id} ${match}[0]
Variable Should Exist ${vnf_volumes_ip_addr} msg=VNF is not available
Sleep 20 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_volumes_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
Variable Should Exist ${vnf_volumes_ip_addr} msg=VNF is not available
Sleep 20 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_volumes_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
Variable Should Exist ${vnf_volumes_id} msg=VNF is not available
@{ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Variable Should Exist ${vnf_volumes_id} msg=VNF is not available
@{ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Should Be Equal ${ip_list} ${volumes_ip_list} IP addresses have changed after healing
${id}= Get VNF VIM ID ${vnf_volumes_id}
Should Be Equal ${ip_list} ${volumes_ip_list} IP addresses have changed after healing
${id}= Get VNF VIM ID ${vnf_volumes_id}
Should Not Be Equal ${id} ${vdu_volumes_id} VDU id has not changed after healing
${volumes_attached}= Get Server Property ${id} volumes_attached
Should Not Be Equal ${id} ${vdu_volumes_id} VDU id has not changed after healing
${volumes_attached}= Get Server Property ${id} volumes_attached
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_volumes_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_volumes_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
- log Checking if volume ${vol_id} is still in VIM
+ Log Checking if volume ${vol_id} is still in VIM
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
- log Deleting volume ${vol_id}
+ Log Deleting volume ${vol_id}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
- log Checking if server ${vdu_id} is still in VIM
+ Log Checking if server ${vdu_id} is still in VIM
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
- log Deleting server ${vdu_id}
+ Log Deleting server ${vdu_id}
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
FOR ${vnf_id} IN @{vnf_id_list}
FOR ${vnf_id} IN @{vnf_id_list}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
${id}= Get VNF VIM ID ${vnf_charm_id}
@{vdu_charm_ids}= Split String ${id}
Set Suite Variable @{vdu_charm_ids} @{vdu_charm_ids}
${id}= Get VNF VIM ID ${vnf_charm_id}
@{vdu_charm_ids}= Split String ${id}
Set Suite Variable @{vdu_charm_ids} @{vdu_charm_ids}
- log ${vdu_charm_ids}[1]
+ Log ${vdu_charm_ids}[1]
@{charm_ip_list}= Get Vnf Vdur IPs ${vnf_charm_id}
Set Suite Variable @{charm_ip_list} @{charm_ip_list}
@{charm_ip_list}= Get Vnf Vdur IPs ${vnf_charm_id}
Set Suite Variable @{charm_ip_list} @{charm_ip_list}
${ip}= Get Vdu Attribute ${vnf_charm_id} ip-address 1
${stdout}= Execute Remote Command Check Rc Return Output ${ip} ${username} ${password} ${privatekey} sudo ls ${vnf_charm_cloudinit_file}
${ip}= Get Vdu Attribute ${vnf_charm_id} ip-address 1
${stdout}= Execute Remote Command Check Rc Return Output ${ip} ${username} ${password} ${privatekey} sudo ls ${vnf_charm_cloudinit_file}
Check If remote File Exists ${ip} ${username} ${password} ${privatekey} ${vnf_charm_day1_file}
Check If remote File Exists ${ip} ${username} ${password} ${privatekey} ${vnf_charm_day1_file}
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
- log Checking if volume ${vol_id} is still in VIM
+ Log Checking if volume ${vol_id} is still in VIM
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
- log Deleting volume ${vol_id}
+ Log Deleting volume ${vol_id}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
- log Checking if server ${vdu_id} is still in VIM
+ Log Checking if server ${vdu_id} is still in VIM
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
- log Deleting server ${vdu_id}
+ Log Deleting server ${vdu_id}
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
FOR ${vnf_id} IN @{vnf_id_list}
FOR ${vnf_id} IN @{vnf_id_list}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
${id}= Get VNF VIM ID ${vnf_charm_id}
@{vdu_charm_ids}= Split String ${id}
Set Suite Variable @{vdu_charm_ids} @{vdu_charm_ids}
${id}= Get VNF VIM ID ${vnf_charm_id}
@{vdu_charm_ids}= Split String ${id}
Set Suite Variable @{vdu_charm_ids} @{vdu_charm_ids}
- log ${vdu_charm_ids}[1]
+ Log ${vdu_charm_ids}[1]
@{charm_ip_list}= Get Vnf Vdur IPs ${vnf_charm_id}
Set Suite Variable @{charm_ip_list} @{charm_ip_list}
@{charm_ip_list}= Get Vnf Vdur IPs ${vnf_charm_id}
Set Suite Variable @{charm_ip_list} @{charm_ip_list}
Get Volume VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_several_index}
Get Volume VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_volumes_id} ${id}
Set Suite Variable ${vnf_volumes_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_volumes_id} ${id}
@{volumes_ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Set Suite Variable @{volumes_ip_list} @{volumes_ip_list}
@{volumes_ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Set Suite Variable @{volumes_ip_list} @{volumes_ip_list}
${ip}= Get Vdu Attribute ${vnf_charm_id} ip-address 1
${stdout}= Execute Remote Command Check Rc Return Output ${ip} ${username} ${password} ${privatekey} sudo ls ${vnf_charm_cloudinit_file}
${ip}= Get Vdu Attribute ${vnf_charm_id} ip-address 1
${stdout}= Execute Remote Command Check Rc Return Output ${ip} ${username} ${password} ${privatekey} sudo ls ${vnf_charm_cloudinit_file}
Check If remote File Exists ${ip} ${username} ${password} ${privatekey} ${vnf_charm_day1_file}
Check If remote File Exists ${ip} ${username} ${password} ${privatekey} ${vnf_charm_day1_file}
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
- log Checking if volume ${vol_id} is still in VIM
+ Log Checking if volume ${vol_id} is still in VIM
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
- log Deleting volume ${vol_id}
+ Log Deleting volume ${vol_id}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
- log Checking if server ${vdu_id} is still in VIM
+ Log Checking if server ${vdu_id} is still in VIM
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
- log Deleting server ${vdu_id}
+ Log Deleting server ${vdu_id}
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
FOR ${vnf_id} IN @{vnf_id_list}
FOR ${vnf_id} IN @{vnf_id_list}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
END
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
END
Get VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_index}
Get VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_index}
Set Suite Variable ${vnf_autoheal_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_autoheal_id} ${id}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_index}
Set Suite Variable ${vnf_autoheal_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_autoheal_id} ${id}
@{autoheal_ip_list}= Get Vnf Vdur IPs ${vnf_autoheal_id}
Set Suite Variable @{autoheal_ip_list} @{autoheal_ip_list}
@{autoheal_ip_list}= Get Vnf Vdur IPs ${vnf_autoheal_id}
Set Suite Variable @{autoheal_ip_list} @{autoheal_ip_list}
- log @{autoheal_ip_list}
+ Log @{autoheal_ip_list}
Variable Should Exist ${vnf_autoheal_id} msg=VNF is not available
@{ip_list}= Get Vnf Vdur IPs ${vnf_autoheal_id}
Variable Should Exist ${vnf_autoheal_id} msg=VNF is not available
@{ip_list}= Get Vnf Vdur IPs ${vnf_autoheal_id}
Should Be Equal ${ip_list} ${autoheal_ip_list} IP addresses have changed after healing
${id}= Get VNF VIM ID ${vnf_autoheal_id}
Should Be Equal ${ip_list} ${autoheal_ip_list} IP addresses have changed after healing
${id}= Get VNF VIM ID ${vnf_autoheal_id}
Should Not Be Equal ${id} ${vdu_autoheal_id} VDU id has not changed after healing
Should Not Be Equal ${id} ${vdu_autoheal_id} VDU id has not changed after healing
[Tags] cleanup
${error}= Set Variable 0
FOR ${vdu_id} IN @{vim_vdus}
[Tags] cleanup
${error}= Set Variable 0
FOR ${vdu_id} IN @{vim_vdus}
- log Checking if server ${vdu_id} is still in VIM
+ Log Checking if server ${vdu_id} is still in VIM
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
- log Deleting server ${vdu_id}
+ Log Deleting server ${vdu_id}
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
${ip_addr_3} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_3}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
${ip_addr_3} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_3}
Set Suite Variable ${vnf_3_ip_addr} ${ip_addr_3}
${ip_addr_4} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_4}
Set Suite Variable ${vnf_3_ip_addr} ${ip_addr_3}
${ip_addr_4} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_4}
Set Suite Variable ${vnf_4_ip_addr} ${ip_addr_4}
${ip_addr_5} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_5}
Set Suite Variable ${vnf_4_ip_addr} ${ip_addr_4}
${ip_addr_5} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_5}
Set Suite Variable ${vnf_5_ip_addr} ${ip_addr_5}
Set Suite Variable ${vnf_5_ip_addr} ${ip_addr_5}
[Tags] verify
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
[Tags] verify
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Should Be Equal As Integers ${count} ${replica_count}
Execute Rollback Operation
Should Be Equal As Integers ${count} ${replica_count}
Execute Rollback Operation
[Tags] verify
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
[Tags] verify
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Should Be Empty ${count}
Delete Network Service Instance
Should Be Empty ${count}
Delete Network Service Instance
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Get Management Ip Addresses
[Tags] verify
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Get Management Ip Addresses
[Tags] verify
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Get Management Ip Addresses
${ip_addr_1} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_1}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_1_ip_addr} ${ip_addr_1}
${ip_addr_2} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Set Suite Variable ${vnf_2_ip_addr} ${ip_addr_2}
Variable Should Exist ${ns_id} msg=Network service instance is not available
${kdu_count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Variable Should Exist ${ns_id} msg=Network service instance is not available
${kdu_count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Set Suite Variable ${initial_kdu_count} ${kdu_count}
Perform Manual KDU Scale Out
Set Suite Variable ${initial_kdu_count} ${kdu_count}
Perform Manual KDU Scale Out
Variable Should Exist ${initial_kdu_count} msg=Initial KDU count is not available
${kdu_count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Variable Should Exist ${initial_kdu_count} msg=Initial KDU count is not available
${kdu_count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Run Keyword If ${kdu_count} != ${initial_kdu_count} + 2 Fail msg=There is no new KDU in the model after Scale Out
Perform Manual KDU Scale In
Run Keyword If ${kdu_count} != ${initial_kdu_count} + 2 Fail msg=There is no new KDU in the model after Scale Out
Perform Manual KDU Scale In
Check Replicas After Upgrade Operation
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Check Replicas After Upgrade Operation
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Should Be Equal As Integers ${count} ${replica_count}
Execute Rollback Operation
Should Be Equal As Integers ${count} ${replica_count}
Execute Rollback Operation
Check Replicas After Rollback Operation
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Check Replicas After Rollback Operation
Variable Should Exist ${ns_id} msg=Network service instance is not available
${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
Should Be Empty ${count}
Delete Network Service Instance
Should Be Empty ${count}
Delete Network Service Instance
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${scaleout_threshold}= Convert To Number ${stdout}
Set Suite Variable ${metric_threshold} ${scaleout_threshold}
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${scaleout_threshold}= Convert To Number ${stdout}
Set Suite Variable ${metric_threshold} ${scaleout_threshold}
- log ${metric_threshold}
+ Log ${metric_threshold}
Get VNF IP Address
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Get VNF IP Address
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Set Suite Variable ${vnf_ip_addr} ${ip_addr}
Get Webhook Service VNF IP Address
${ip_addr}= Get Vnf Management Ip Address ${ws_ns_id} ${ws_vnf_member_index}
Get Webhook Service VNF IP Address
${ip_addr}= Get Vnf Management Ip Address ${ws_ns_id} ${ws_vnf_member_index}
Set Suite Variable ${ws_vnf_ip_addr} ${ip_addr}
Set Suite Variable ${ws_vnf_ip_addr} ${ip_addr}
Create VNF Descriptor
${rc} ${stdout}= Run and Return RC and Output 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}'
Create VNF Descriptor
${rc} ${stdout}= Run and Return RC and Output 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}'
Should Be Equal As Integers ${rc} ${success_return_code}
Create VNFD '%{PACKAGES_FOLDER}/${new_vnfd_pkg}'
Should Be Equal As Integers ${rc} ${success_return_code}
Create VNFD '%{PACKAGES_FOLDER}/${new_vnfd_pkg}'
[Documentation] Removes the temporary package folder created for the test
[Arguments] ${folder_name}
${rc} ${stdout}= Run and Return RC and Output rm -rf '${folder_name}'
[Documentation] Removes the temporary package folder created for the test
[Arguments] ${folder_name}
${rc} ${stdout}= Run and Return RC and Output rm -rf '${folder_name}'
# Get all the ns_id in the slice except the middle one to avoid self ping
@{slice_ns_list} Get Slice Ns List Except One ${slice_name} ${middle_ns_name}
# Get all the ns_id in the slice except the middle one to avoid self ping
@{slice_ns_list} Get Slice Ns List Except One ${slice_name} ${middle_ns_name}
- log many @{slice_ns_list}
+ Log many @{slice_ns_list}
@{temp_list}= Create List
# For each ns_id in the list, get all the vnf_id and their IP addresses
FOR ${ns_id} IN @{slice_ns_list}
@{temp_list}= Create List
# For each ns_id in the list, get all the vnf_id and their IP addresses
FOR ${ns_id} IN @{slice_ns_list}
@{vnf_id_list} Get Ns Vnf List ${ns_id}
# For each vnf_id in the list, get all its IP addresses
@{ns_ip_list} Get Ns Ip List @{vnf_id_list}
@{vnf_id_list} Get Ns Vnf List ${ns_id}
# For each vnf_id in the list, get all its IP addresses
@{ns_ip_list} Get Ns Ip List @{vnf_id_list}
Sleep 60s Waiting for the network to be up
# Ping to the middle VNF
Sleep 60s Waiting for the network to be up
# Ping to the middle VNF
Test Connectivity ${mgmt_vnf_ip}
Test Connectivity ${mgmt_vnf_ip}