From be15ced944f8f8e57f1d27e0997a41b363a69edc Mon Sep 17 00:00:00 2001 From: Kaveh Vahedipour Date: Tue, 20 Mar 2018 11:44:33 +0100 Subject: [PATCH 01/10] i made my first test. lol! --- tests/immutable_test.go | 60 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 tests/immutable_test.go diff --git a/tests/immutable_test.go b/tests/immutable_test.go new file mode 100644 index 000000000..dc3241c61 --- /dev/null +++ b/tests/immutable_test.go @@ -0,0 +1,60 @@ +package tests + +import ( + "context" + "testing" + + "github.com/dchest/uniuri" +// "github.com/stretchr/testify/assert" + + driver "github.com/arangodb/go-driver" + api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1alpha" + "github.com/arangodb/kube-arangodb/pkg/client" +) + + +// TestImmutableStorageEngine +// Tests that storage engine of deployed cluster cannot be changed +func TestImmutableStorageEngine(t *testing.T) { + longOrSkip(t) + c := client.MustNewInCluster() + kubecli := mustNewKubeClient(t) + ns := getNamespace(t) + + // Prepare deployment config + depl := newDeployment("test-ise-" + uniuri.NewLen(4)) + depl.Spec.Mode = api.DeploymentModeCluster + depl.Spec.SetDefaults(depl.GetName()) + + // Create deployment + apiObject, err := c.DatabaseV1alpha().ArangoDeployments(ns).Create(depl) + if err != nil { + t.Fatalf("Create deployment failed: %v", err) + } + + // Wait for deployment to be ready + if _, err := waitUntilDeployment(c, depl.GetName(), ns, deploymentHasState(api.DeploymentStateRunning)); err != nil { + t.Fatalf("Deployment not running in time: %v", err) + } + + // Create a database client + ctx := context.Background() + client := mustNewArangodDatabaseClient(ctx, kubecli, apiObject, t) + + // Wait for cluster to be completely ready + if err := waitUntilClusterHealth(client, func(h driver.ClusterHealth) error { + return clusterHealthEqualsSpec(h, apiObject.Spec) + }); err != nil { + t.Fatalf("Cluster not running in expected health in time: %v", err) + } + + // Add 2 DBServers, 1 coordinator + if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { + spec.StorageEngine = api.StorageEngineMMFiles + }); err == nil { + t.Fatalf("Successfully changed storage engine to : %v", err) + } + + // Cleanup + removeDeployment(c, depl.GetName(), ns) +} From b5ab27b9acc165c4a73c70275629df3f0ff14bf7 Mon Sep 17 00:00:00 2001 From: Kaveh Vahedipour Date: Tue, 20 Mar 2018 15:23:03 +0100 Subject: [PATCH 02/10] Added first immutable test --- tests/immutable_test.go | 41 +++++++++++++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 6 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index dc3241c61..d4070a928 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -2,9 +2,11 @@ package tests import ( "context" + "fmt" "testing" "github.com/dchest/uniuri" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" // "github.com/stretchr/testify/assert" driver "github.com/arangodb/go-driver" @@ -48,13 +50,40 @@ func TestImmutableStorageEngine(t *testing.T) { t.Fatalf("Cluster not running in expected health in time: %v", err) } - // Add 2 DBServers, 1 coordinator - if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { - spec.StorageEngine = api.StorageEngineMMFiles - }); err == nil { - t.Fatalf("Successfully changed storage engine to : %v", err) - } + // Try to reset storageEngine + if _, err := updateDeployment(c, depl.GetName(), ns, + func(spec *api.DeploymentSpec) { + spec.StorageEngine = api.StorageEngineMMFiles + }); err != nil { + t.Fatalf("Failed to update the StorageEngine setting: %v", err) + } + + if _, err = waitUntilDeployment(c, depl.GetName(), ns, + func(depl *api.ArangoDeployment) error { + current, err := c.DatabaseV1alpha().ArangoDeployments(ns).Get(depl.GetName(), metav1.GetOptions{}) + if err != nil { + t.Fatalf("Cluster not running in expected health in time: %v", err) + } + if current.Spec.StorageEngine == api.StorageEngineRocksDB { + return nil + } + return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB) + }); err != nil { + t.Fatalf("StorageEngine parameter not immutable: %v", err) + } + // Cleanup removeDeployment(c, depl.GetName(), ns) } + + + + /*if current, err: = c.DatabaseV1alpha().ArangoDeployments(ns).Get(depl.GetName(), metav1.GetOptions); err != nil { + t.Fatalf("Cluster not running in expected health in time: %v", err) + } + if current.Spec.StorageEngine == api.StorageEngineRocksDB { + return nil + } + return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB)*/ + From 64aa14ac0b87bbeb93562ce4ae27d71a4e80ee3b Mon Sep 17 00:00:00 2001 From: Kaveh Vahedipour Date: Tue, 20 Mar 2018 15:29:56 +0100 Subject: [PATCH 03/10] Added first immutable test --- tests/immutable_test.go | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index d4070a928..b81b9133d 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -57,14 +57,11 @@ func TestImmutableStorageEngine(t *testing.T) { }); err != nil { t.Fatalf("Failed to update the StorageEngine setting: %v", err) } - - if _, err = waitUntilDeployment(c, depl.GetName(), ns, + + // Wait for StorageEngine parameter to be back to RocksDB + if _, err := waitUntilDeployment(c, depl.GetName(), ns, func(depl *api.ArangoDeployment) error { - current, err := c.DatabaseV1alpha().ArangoDeployments(ns).Get(depl.GetName(), metav1.GetOptions{}) - if err != nil { - t.Fatalf("Cluster not running in expected health in time: %v", err) - } - if current.Spec.StorageEngine == api.StorageEngineRocksDB { + if depl.Spec.StorageEngine == api.StorageEngineRocksDB { return nil } return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB) From 501eb3e8b85e1a8bc0a40afd946c4f36eae714e9 Mon Sep 17 00:00:00 2001 From: Kaveh Vahedipour Date: Tue, 20 Mar 2018 15:31:23 +0100 Subject: [PATCH 04/10] Added first immutable test --- tests/immutable_test.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index b81b9133d..d2e871501 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -6,8 +6,6 @@ import ( "testing" "github.com/dchest/uniuri" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" -// "github.com/stretchr/testify/assert" driver "github.com/arangodb/go-driver" api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1alpha" From 3b6e84ef39ef52cce54bc184f0a6ad5e210d7b39 Mon Sep 17 00:00:00 2001 From: Kaveh Vahedipour Date: Tue, 20 Mar 2018 15:37:25 +0100 Subject: [PATCH 05/10] removed crap at end of file --- tests/immutable_test.go | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index d2e871501..020ff1914 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -71,14 +71,3 @@ func TestImmutableStorageEngine(t *testing.T) { // Cleanup removeDeployment(c, depl.GetName(), ns) } - - - - /*if current, err: = c.DatabaseV1alpha().ArangoDeployments(ns).Get(depl.GetName(), metav1.GetOptions); err != nil { - t.Fatalf("Cluster not running in expected health in time: %v", err) - } - if current.Spec.StorageEngine == api.StorageEngineRocksDB { - return nil - } - return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB)*/ - From 167408292f00ca7730174019009c5be866352e6f Mon Sep 17 00:00:00 2001 From: Kaveh Vahedipour Date: Wed, 21 Mar 2018 09:45:29 +0100 Subject: [PATCH 06/10] rocksdb key name and mode parameters added --- tests/immutable_test.go | 42 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index 020ff1914..0c32bd270 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -48,7 +48,7 @@ func TestImmutableStorageEngine(t *testing.T) { t.Fatalf("Cluster not running in expected health in time: %v", err) } - // Try to reset storageEngine + // Try to reset storageEngine =============================================== if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { spec.StorageEngine = api.StorageEngineMMFiles @@ -64,10 +64,48 @@ func TestImmutableStorageEngine(t *testing.T) { } return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB) }); err != nil { - t.Fatalf("StorageEngine parameter not immutable: %v", err) + t.Fatalf("StorageEngine parameter should not be immutable: %v", err) + } + + // Try to reset the RocksDB encryption key ================================== + if _, err := updateDeployment(c, depl.GetName(), ns, + func(spec *api.DeploymentSpec) { + spec.RocksDB.Encryption.KeySecretName = "foobarbaz" + }); err != nil { + t.Fatalf("Failed to update the RocksDB encryption key: %v", err) + } + + // Wait for deployment mode to be set back to cluster + if _, err := waitUntilDeployment(c, depl.GetName(), ns, + func(depl *api.ArangoDeployment) error { + if depl.Spec.RocksDB.Encryption.KeySecretName == "test.encryption.keySecretName" { + return nil + } + return fmt.Errorf("RocksDB encryption key not back to %s", "test.encryption.keySecretName") + }); err != nil { + t.Fatalf("RocksDB encryption key not be mutable: %v", err) } + // Try to reset the deployment type ========================================== + if _, err := updateDeployment(c, depl.GetName(), ns, + func(spec *api.DeploymentSpec) { + spec.Mode = api.DeploymentModeSingle + }); err != nil { + t.Fatalf("Failed to update the deployment mode: %v", err) + } + + // Wait for deployment mode to be set back to cluster + if _, err := waitUntilDeployment(c, depl.GetName(), ns, + func(depl *api.ArangoDeployment) error { + if depl.Spec.Mode == api.DeploymentModeCluster { + return nil + } + return fmt.Errorf("Deployment mode not back to %s", api.DeploymentModeCluster) + }); err != nil { + t.Fatalf("Deployment mode should not be mutable: %v", err) + } + // Cleanup removeDeployment(c, depl.GetName(), ns) } From 39daf3ed375a74c5b8170bb273bb16b6d2289f06 Mon Sep 17 00:00:00 2001 From: Ewout Prangsma Date: Mon, 26 Mar 2018 15:50:32 +0200 Subject: [PATCH 07/10] Updated to master --- tests/immutable_test.go | 47 ++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index 0c32bd270..9861c832d 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -10,9 +10,9 @@ import ( driver "github.com/arangodb/go-driver" api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1alpha" "github.com/arangodb/kube-arangodb/pkg/client" + "github.com/arangodb/kube-arangodb/pkg/util" ) - // TestImmutableStorageEngine // Tests that storage engine of deployed cluster cannot be changed func TestImmutableStorageEngine(t *testing.T) { @@ -23,7 +23,7 @@ func TestImmutableStorageEngine(t *testing.T) { // Prepare deployment config depl := newDeployment("test-ise-" + uniuri.NewLen(4)) - depl.Spec.Mode = api.DeploymentModeCluster + depl.Spec.Mode = api.NewMode(api.DeploymentModeCluster) depl.Spec.SetDefaults(depl.GetName()) // Create deployment @@ -51,60 +51,59 @@ func TestImmutableStorageEngine(t *testing.T) { // Try to reset storageEngine =============================================== if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { - spec.StorageEngine = api.StorageEngineMMFiles + spec.StorageEngine = api.NewStorageEngine(api.StorageEngineMMFiles) }); err != nil { - t.Fatalf("Failed to update the StorageEngine setting: %v", err) - } + t.Fatalf("Failed to update the StorageEngine setting: %v", err) + } // Wait for StorageEngine parameter to be back to RocksDB if _, err := waitUntilDeployment(c, depl.GetName(), ns, func(depl *api.ArangoDeployment) error { - if depl.Spec.StorageEngine == api.StorageEngineRocksDB { + if api.StorageEngineOrDefault(depl.Spec.StorageEngine) == api.StorageEngineRocksDB { return nil - } + } return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB) }); err != nil { - t.Fatalf("StorageEngine parameter should not be immutable: %v", err) - } + t.Fatalf("StorageEngine parameter should not be immutable: %v", err) + } // Try to reset the RocksDB encryption key ================================== if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { - spec.RocksDB.Encryption.KeySecretName = "foobarbaz" + spec.RocksDB.Encryption.KeySecretName = util.NewString("foobarbaz") }); err != nil { - t.Fatalf("Failed to update the RocksDB encryption key: %v", err) - } + t.Fatalf("Failed to update the RocksDB encryption key: %v", err) + } // Wait for deployment mode to be set back to cluster if _, err := waitUntilDeployment(c, depl.GetName(), ns, func(depl *api.ArangoDeployment) error { - if depl.Spec.RocksDB.Encryption.KeySecretName == "test.encryption.keySecretName" { + if util.StringOrDefault(depl.Spec.RocksDB.Encryption.KeySecretName) == "test.encryption.keySecretName" { return nil - } + } return fmt.Errorf("RocksDB encryption key not back to %s", "test.encryption.keySecretName") }); err != nil { - t.Fatalf("RocksDB encryption key not be mutable: %v", err) - } + t.Fatalf("RocksDB encryption key not be mutable: %v", err) + } - // Try to reset the deployment type ========================================== if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { - spec.Mode = api.DeploymentModeSingle + spec.Mode = api.NewMode(api.DeploymentModeSingle) }); err != nil { - t.Fatalf("Failed to update the deployment mode: %v", err) - } + t.Fatalf("Failed to update the deployment mode: %v", err) + } // Wait for deployment mode to be set back to cluster if _, err := waitUntilDeployment(c, depl.GetName(), ns, func(depl *api.ArangoDeployment) error { - if depl.Spec.Mode == api.DeploymentModeCluster { + if api.ModeOrDefault(depl.Spec.Mode) == api.DeploymentModeCluster { return nil - } + } return fmt.Errorf("Deployment mode not back to %s", api.DeploymentModeCluster) }); err != nil { - t.Fatalf("Deployment mode should not be mutable: %v", err) - } + t.Fatalf("Deployment mode should not be mutable: %v", err) + } // Cleanup removeDeployment(c, depl.GetName(), ns) From 4f9178b2d0b258ff18c4908462f8a763cae2e01b Mon Sep 17 00:00:00 2001 From: Ewout Prangsma Date: Mon, 26 Mar 2018 15:52:24 +0200 Subject: [PATCH 08/10] Added fileheader --- tests/immutable_test.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index 9861c832d..156ede67d 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -1,3 +1,26 @@ +// +// DISCLAIMER +// +// Copyright 2018 ArangoDB GmbH, Cologne, Germany +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// Copyright holder is ArangoDB GmbH, Cologne, Germany +// +// Author Kaveh Vahedipour +// Author Ewout Prangsma +// + package tests import ( From 74536a6f4660102126e73ffd690c5d228c91d731 Mon Sep 17 00:00:00 2001 From: Ewout Prangsma Date: Mon, 26 Mar 2018 16:02:33 +0200 Subject: [PATCH 09/10] Various fixes --- tests/immutable_test.go | 38 +++++++++++++++++++------------------- tests/test_util.go | 8 ++++++-- 2 files changed, 25 insertions(+), 21 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index 156ede67d..49c75c29b 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -27,26 +27,27 @@ import ( "context" "fmt" "testing" + "time" "github.com/dchest/uniuri" - driver "github.com/arangodb/go-driver" api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1alpha" "github.com/arangodb/kube-arangodb/pkg/client" "github.com/arangodb/kube-arangodb/pkg/util" ) -// TestImmutableStorageEngine -// Tests that storage engine of deployed cluster cannot be changed -func TestImmutableStorageEngine(t *testing.T) { +// TestImmutableFields tests that several immutable fields in the deployment +// spec are reverted to their original value. +func TestImmutableFields(t *testing.T) { longOrSkip(t) c := client.MustNewInCluster() kubecli := mustNewKubeClient(t) ns := getNamespace(t) + revertTimeout := time.Second * 30 // Prepare deployment config depl := newDeployment("test-ise-" + uniuri.NewLen(4)) - depl.Spec.Mode = api.NewMode(api.DeploymentModeCluster) + depl.Spec.Mode = api.NewMode(api.DeploymentModeSingle) depl.Spec.SetDefaults(depl.GetName()) // Create deployment @@ -64,11 +65,9 @@ func TestImmutableStorageEngine(t *testing.T) { ctx := context.Background() client := mustNewArangodDatabaseClient(ctx, kubecli, apiObject, t) - // Wait for cluster to be completely ready - if err := waitUntilClusterHealth(client, func(h driver.ClusterHealth) error { - return clusterHealthEqualsSpec(h, apiObject.Spec) - }); err != nil { - t.Fatalf("Cluster not running in expected health in time: %v", err) + // Wait for single server to be completely ready + if err := waitUntilVersionUp(client); err != nil { + t.Fatalf("Single server not up in time: %v", err) } // Try to reset storageEngine =============================================== @@ -86,8 +85,8 @@ func TestImmutableStorageEngine(t *testing.T) { return nil } return fmt.Errorf("StorageEngine not back to %s", api.StorageEngineRocksDB) - }); err != nil { - t.Fatalf("StorageEngine parameter should not be immutable: %v", err) + }, revertTimeout); err != nil { + t.Errorf("StorageEngine parameter is immutable: %v", err) } // Try to reset the RocksDB encryption key ================================== @@ -105,14 +104,14 @@ func TestImmutableStorageEngine(t *testing.T) { return nil } return fmt.Errorf("RocksDB encryption key not back to %s", "test.encryption.keySecretName") - }); err != nil { - t.Fatalf("RocksDB encryption key not be mutable: %v", err) + }, revertTimeout); err != nil { + t.Errorf("RocksDB encryption key is mutable: %v", err) } // Try to reset the deployment type ========================================== if _, err := updateDeployment(c, depl.GetName(), ns, func(spec *api.DeploymentSpec) { - spec.Mode = api.NewMode(api.DeploymentModeSingle) + spec.Mode = api.NewMode(api.DeploymentModeCluster) }); err != nil { t.Fatalf("Failed to update the deployment mode: %v", err) } @@ -120,12 +119,13 @@ func TestImmutableStorageEngine(t *testing.T) { // Wait for deployment mode to be set back to cluster if _, err := waitUntilDeployment(c, depl.GetName(), ns, func(depl *api.ArangoDeployment) error { - if api.ModeOrDefault(depl.Spec.Mode) == api.DeploymentModeCluster { + expected := api.DeploymentModeSingle + if api.ModeOrDefault(depl.Spec.Mode) == expected { return nil } - return fmt.Errorf("Deployment mode not back to %s", api.DeploymentModeCluster) - }); err != nil { - t.Fatalf("Deployment mode should not be mutable: %v", err) + return fmt.Errorf("Deployment mode not back to %s", expected) + }, revertTimeout); err != nil { + t.Errorf("Deployment mode is mutable: %v", err) } // Cleanup diff --git a/tests/test_util.go b/tests/test_util.go index fa187a3c5..c2ca4d164 100644 --- a/tests/test_util.go +++ b/tests/test_util.go @@ -116,7 +116,7 @@ func newDeployment(name string) *api.ArangoDeployment { // waitUntilDeployment waits until a deployment with given name in given namespace // reached a state where the given predicate returns true. -func waitUntilDeployment(cli versioned.Interface, deploymentName, ns string, predicate func(*api.ArangoDeployment) error) (*api.ArangoDeployment, error) { +func waitUntilDeployment(cli versioned.Interface, deploymentName, ns string, predicate func(*api.ArangoDeployment) error, timeout ...time.Duration) (*api.ArangoDeployment, error) { var result *api.ArangoDeployment op := func() error { obj, err := cli.DatabaseV1alpha().ArangoDeployments(ns).Get(deploymentName, metav1.GetOptions{}) @@ -132,7 +132,11 @@ func waitUntilDeployment(cli versioned.Interface, deploymentName, ns string, pre } return nil } - if err := retry.Retry(op, deploymentReadyTimeout); err != nil { + actualTimeout := deploymentReadyTimeout + if len(timeout) > 0 { + actualTimeout = timeout[0] + } + if err := retry.Retry(op, actualTimeout); err != nil { return nil, maskAny(err) } return result, nil From e2488ef6a90f672a62587ebcc47932ca4697069e Mon Sep 17 00:00:00 2001 From: Ewout Prangsma Date: Tue, 27 Mar 2018 10:59:33 +0200 Subject: [PATCH 10/10] Excluded secrets --- tests/immutable_test.go | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/tests/immutable_test.go b/tests/immutable_test.go index 49c75c29b..2869536e4 100644 --- a/tests/immutable_test.go +++ b/tests/immutable_test.go @@ -33,7 +33,6 @@ import ( api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1alpha" "github.com/arangodb/kube-arangodb/pkg/client" - "github.com/arangodb/kube-arangodb/pkg/util" ) // TestImmutableFields tests that several immutable fields in the deployment @@ -89,24 +88,27 @@ func TestImmutableFields(t *testing.T) { t.Errorf("StorageEngine parameter is immutable: %v", err) } - // Try to reset the RocksDB encryption key ================================== - if _, err := updateDeployment(c, depl.GetName(), ns, - func(spec *api.DeploymentSpec) { - spec.RocksDB.Encryption.KeySecretName = util.NewString("foobarbaz") - }); err != nil { - t.Fatalf("Failed to update the RocksDB encryption key: %v", err) - } - - // Wait for deployment mode to be set back to cluster - if _, err := waitUntilDeployment(c, depl.GetName(), ns, - func(depl *api.ArangoDeployment) error { - if util.StringOrDefault(depl.Spec.RocksDB.Encryption.KeySecretName) == "test.encryption.keySecretName" { - return nil - } - return fmt.Errorf("RocksDB encryption key not back to %s", "test.encryption.keySecretName") - }, revertTimeout); err != nil { - t.Errorf("RocksDB encryption key is mutable: %v", err) - } + /* + Secrets are a special case that we'll deal with later + // Try to reset the RocksDB encryption key ================================== + if _, err := updateDeployment(c, depl.GetName(), ns, + func(spec *api.DeploymentSpec) { + spec.RocksDB.Encryption.KeySecretName = util.NewString("foobarbaz") + }); err != nil { + t.Fatalf("Failed to update the RocksDB encryption key: %v", err) + } + + // Wait for deployment mode to be set back to cluster + if _, err := waitUntilDeployment(c, depl.GetName(), ns, + func(depl *api.ArangoDeployment) error { + if util.StringOrDefault(depl.Spec.RocksDB.Encryption.KeySecretName) == "test.encryption.keySecretName" { + return nil + } + return fmt.Errorf("RocksDB encryption key not back to %s", "test.encryption.keySecretName") + }, revertTimeout); err != nil { + t.Errorf("RocksDB encryption key is mutable: %v", err) + } + */ // Try to reset the deployment type ========================================== if _, err := updateDeployment(c, depl.GetName(), ns,