X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=robot-systest%2Flib%2Fvnf_lib.robot;h=9fa2f95cfced4e03f1e798ad9310494c4a76eee0;hb=f4ebaa88025189ede4f073ab8a1f27c95efff867;hp=12f44bc5d63f2418699e2232aab82e712b23cae1;hpb=bde6780a9608369aaf84501af5e6098d7ac6d7aa;p=osm%2Ftests.git diff --git a/robot-systest/lib/vnf_lib.robot b/robot-systest/lib/vnf_lib.robot index 12f44bc..9fa2f95 100644 --- a/robot-systest/lib/vnf_lib.robot +++ b/robot-systest/lib/vnf_lib.robot @@ -22,4 +22,53 @@ Get VNF VIM ID ${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | grep vim-id | awk '{print $2}' log ${stdout} Should Be Equal As Integers ${rc} ${success_return_code} - [Return] ${stdout} + [Return] ${stdout} + + +Get VDU list from VNF + [Documentation] Return a list of the VDUr ids for a VNF + + [Arguments] ${vnf_id} + + Should Not Be Empty ${vnf_id} + ${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[].id' + log ${stdout} + Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False + @{vdur_ids}= Split String ${stdout} + [Return] @{vdur_ids} + + +Get VDU VIM Id + [Documentation] Return the VIM VM ID for a VDU + + [Arguments] ${vnf_id} ${vdur_id} + + 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 \\" + log ${vm_vim_id} + Should Be Equal As Integers ${rc} ${success_return_code} msg=${vm_vim_id} values=False + [Return] ${vm_vim_id} + + +Get Vnf Vdur IPs + [Documentation] Return a list with the IP addresses of the VDU records of a VNF instance. + + [Arguments] ${vnf_id} + + Should Not Be Empty ${vnf_id} + ${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[].interfaces[]."ip-address"' | tr -d \\" + Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False + @{ip} = Split String ${stdout} + [Return] @{ip} + + +Get Vdu Attribute + [Documentation] Return an attribute from VDU records selected by count_index of a VNF instance. + + [Arguments] ${vnf_id} ${attribute} ${count_index}=0 + + Should Not Be Empty ${vnf_id} + Should Not Be Empty ${attribute} + ${rc} ${stdout}= Run and Return RC and Output osm vnf-show ${vnf_id} --literal | yq '.vdur[] | select(."count-index" == ${count_index})' | yq '."${attribute}"' | tr -d \\" + Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False + [Return] ${stdout}