diff --git a/src/cloud_provider/aws/databases/redis.rs b/src/cloud_provider/aws/databases/redis.rs index 5ee92fd6..1444c8aa 100644 --- a/src/cloud_provider/aws/databases/redis.rs +++ b/src/cloud_provider/aws/databases/redis.rs @@ -171,10 +171,10 @@ impl Redis { return Ok(()); } - let context = match self.tera_context(*kubernetes, *environment) { - Ok(c) => c, - Err(e) => return Err(e), - }; + let context = self.tera_context(*kubernetes, *environment)?; + + // deploy before destroy to avoid missing elements + self.on_create(target)?; let _ = cast_simple_error_to_engine_error( self.engine_error_scope(), @@ -296,10 +296,7 @@ impl Create for Redis { DeploymentTarget::ManagedServices(kubernetes, environment) => { // use terraform info!("deploy Redis on AWS Elasticcache for {}", self.name()); - let context = match self.tera_context(*kubernetes, *environment) { - Ok(c) => c, - Err(e) => return Err(e), - }; + let context = self.tera_context(*kubernetes, *environment)?; let workspace_dir = self.workspace_directory(); @@ -350,10 +347,7 @@ impl Create for Redis { // use helm info!("deploy Redis on Kubernetes for {}", self.name()); - let context = match self.tera_context(*kubernetes, *environment) { - Ok(c) => c, - Err(e) => return Err(e), - }; + let context = self.tera_context(*kubernetes, *environment)?; let workspace_dir = self.workspace_directory(); let aws = kubernetes diff --git a/src/cloud_provider/aws/databases/utilities.rs b/src/cloud_provider/aws/databases/utilities.rs index d2edeb3c..c76eb326 100644 --- a/src/cloud_provider/aws/databases/utilities.rs +++ b/src/cloud_provider/aws/databases/utilities.rs @@ -3,7 +3,7 @@ use crate::cloud_provider::environment::Environment; use crate::cloud_provider::kubernetes::Kubernetes; use crate::cmd::kubectl::{kubectl_exec_create_namespace, kubectl_exec_delete_secret}; use crate::constants::{AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY}; -use crate::error::{EngineError, EngineErrorCause, EngineErrorScope, SimpleError, StringError}; +use crate::error::{SimpleError, StringError}; use std::collections::HashMap; // unfortunately some proposed versions are not SemVer like Elasticache (6.x)