def test_helm_values_try_get_by_list_index(): helm_values = HelmValues(BASE_HELM_VALUES) try: helm_values.get("nested_list[0]") except ValueError: return assert False, "expected 'ValueError' exception was not raised"
def reinstall_scylla_manager(db_cluster: ScyllaPodCluster, manager_version: str): values = HelmValues( yaml.safe_load( db_cluster.k8s_cluster.helm("get values scylla-manager -o yaml", namespace=SCYLLA_MANAGER_NAMESPACE))) if values.get("image.tag") != manager_version: log.info( "Scylla Manager '%s' is going to be installed instead of the '%s' one.", manager_version, values.get("image.tag")) values.set('image.tag', manager_version) values.set('scylla.agentImage.tag', manager_version) # Delete the current scylla-manager completely because otherwise # we won't be able to migrate DB state from a newer version to older one. db_cluster.k8s_cluster.helm("uninstall scylla-manager --wait", namespace=SCYLLA_MANAGER_NAMESPACE) wait_for_resource_absence(db_cluster=db_cluster, step=1, timeout=120, resource_name="", resource_type="pod", namespace=SCYLLA_MANAGER_NAMESPACE) db_cluster.k8s_cluster.kubectl("delete pvc --all --wait=true", namespace=SCYLLA_MANAGER_NAMESPACE) # Deploy Scylla Manager of the specified version log.debug( db_cluster.k8s_cluster.helm_install( target_chart_name="scylla-manager", source_chart_name="scylla-operator/scylla-manager", version=db_cluster.k8s_cluster._scylla_operator_chart_version, # pylint: disable=protected-access use_devel=True, values=values, namespace=SCYLLA_MANAGER_NAMESPACE, )) time.sleep(5) db_cluster.k8s_cluster.kubectl_wait("--all --for=condition=Ready pod", namespace=SCYLLA_MANAGER_NAMESPACE, timeout=600) log.info("Scylla Manager '%s' has successfully been installed", manager_version)
def test_helm_values_get_list(): helm_values = HelmValues(BASE_HELM_VALUES) assert helm_values.get("nested_list") == [1, 2, 3]
def test_helm_values_set_override(): helm_values = HelmValues(BASE_HELM_VALUES) helm_values.set("no_nesting_key", "custom_value") assert helm_values.get("no_nesting_key") == "custom_value"
def test_helm_values_set_new(): helm_values = HelmValues(BASE_HELM_VALUES) helm_values.set("new_key", "new_value") assert helm_values.get("new_key") == "new_value"
def test_helm_values_get_nonexistent(): helm_values = HelmValues(BASE_HELM_VALUES) assert helm_values.get("fake_key") is None
def test_helm_values_get(): helm_values = HelmValues(BASE_HELM_VALUES) assert helm_values.get("no_nesting_key") == "no_nesting_value"
def test_helm_values_get_by_list_index(): helm_values = HelmValues(BASE_HELM_VALUES) assert helm_values.get("nested_list.[0]") == 1