ns_lib: update scaling timeout with the env modifier OSM_VIM_MULTIPLIER_TIMEOUT
[osm/tests.git] / robot-systest / testsuite / k8s_04-openldap_helm.robot
index d7aa177..d5bac76 100644 (file)
@@ -11,6 +11,8 @@
 #   limitations under the License.
 
 *** Settings ***
+Documentation     [K8s-04] Openldap Helm chart.
+
 Library   OperatingSystem
 Library   String
 Library   Collections
@@ -25,53 +27,83 @@ Resource   %{ROBOT_DEVOPS_FOLDER}/lib/k8scluster_lib.robot
 
 Variables   %{ROBOT_DEVOPS_FOLDER}/resources/k8s_04-openldap_helm_data.py
 
-Suite Teardown   Run Keyword And Ignore Error   Test Cleanup
+Force Tags   k8s_04   cluster_k8s   daily   regression   sanity
+
+Suite Teardown   Run Keyword And Ignore Error   Suite Cleanup
 
 
 *** Variables ***
 ${ns_id}   ${EMPTY}
 ${ns_config}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
 ${publickey}   ${EMPTY}
+${vnf_member_index}   openldap
+${kdu_name}   ldap
+${upgrade_action}   upgrade
+${rollback_action}   rollback
+${replica_count}   3
+
 
 *** Test Cases ***
 Create Package For OpenLDAP CNF
-    [Tags]   openldap   sanity   regression
     Create VNFD   '%{PACKAGES_FOLDER}/${vnfd_pkg}'
 
 Create Package For OpenLDAP NS
-    [Tags]   openldap   sanity   regression
     Create NSD   '%{PACKAGES_FOLDER}/${nsd_pkg}'
 
 Add K8s Cluster To OSM
-    [Tags]   openldap   sanity   regression
     Create K8s Cluster  %{K8S_CREDENTIALS}  ${k8scluster_version}  %{VIM_TARGET}  %{VIM_MGMT_NET}  ${k8scluster_name}
 
 Create Network Service Instance
-    [Tags]   openldap   sanity   regression
     ${id}=   Create Network Service   ${nsd_name}   %{VIM_TARGET}   ${ns_name}   ${ns_config}  ${publickey}
     Set Suite Variable   ${ns_id}   ${id}
 
+Get Vnf Id
+    Variable Should Exist  ${ns_id}  msg=Network service instance is not available
+    @{vnfr_list}=  Get Ns Vnfr Ids  ${ns_id}
+    Log List  ${vnfr_list}
+    Set Suite Variable  ${vnf_id}  ${vnfr_list}[0]
+
+Execute Upgrade Operation
+    Variable Should Exist  ${ns_id}  msg=Network service instance is not available
+    ${ns_op_id}=  Execute NS K8s Action   ${ns_name}   ${upgrade_action}   ${vnf_member_index}   ${kdu_name}   replicaCount=${replica_count}
+
+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}
+    log   ${count}
+    Should Be Equal As Integers   ${count}   ${replica_count}
+
+Execute Rollback Operation
+    Variable Should Exist  ${ns_id}  msg=Network service instance is not available
+    ${ns_op_id}=  Execute NS K8s Action   ${ns_name}   ${rollback_action}   ${vnf_member_index}   ${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}
+    log   ${count}
+    Should Be Empty   ${count}
+
 Delete Network Service Instance
-    [Tags]   openldap   sanity   regression   cleanup
+    [Tags]   cleanup
     Delete NS   ${ns_name}
 
 Remove K8s Cluster from OSM
-    [Tags]   openldap   sanity   regression
+    [Tags]   cleanup
     Delete K8s Cluster  ${k8scluster_name}
 
 Delete NS Descriptor Test
-    [Tags]   openldap   sanity   regression   cleanup
+    [Tags]   cleanup
     Delete NSD   ${nsd_name}
 
 Delete VNF Descriptor Test
-    [Tags]   openldap   sanity   regression   cleanup
+    [Tags]   cleanup
     Delete VNFD   ${vnfd_name}
 
 
 *** Keywords ***
-Test Cleanup
+Suite Cleanup
     [Documentation]  Test Suit Cleanup: Deleting Descriptor, instance and vim
-    Run Keyword If Test Failed  Delete NS   ${ns_name}
-    Run Keyword If Test Failed  Delete NSD   ${nsd_name}
-    Run Keyword If Test Failed  Delete VNFD   ${vnfd_name}
-    Run Keyword If Test Failed  Delete K8s Cluster   ${k8scluster_name}
+    Run Keyword If Any Tests Failed  Delete NS   ${ns_name}
+    Run Keyword If Any Tests Failed  Delete NSD   ${nsd_name}
+    Run Keyword If Any Tests Failed  Delete VNFD   ${vnfd_name}
+    Run Keyword If Any Tests Failed  Delete K8s Cluster   ${k8scluster_name}