From d82b80f96191ebcec7189bc81880e46b1929203e Mon Sep 17 00:00:00 2001 From: Tarun Menon Date: Thu, 30 Jun 2022 11:37:44 +1000 Subject: [PATCH 1/2] Fixed source_backup reference in cluster backups --- shelvery/documentdb_backup.py | 6 +++--- shelvery/rds_cluster_backup.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/shelvery/documentdb_backup.py b/shelvery/documentdb_backup.py index 6ec5c49..f6138f3 100644 --- a/shelvery/documentdb_backup.py +++ b/shelvery/documentdb_backup.py @@ -139,7 +139,7 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) kms_key = source_backup.resource_properties['KmsKeyId'] self.logger.info(f"Snapshot {source_backup.backup_id} is encrypted with the kms key {kms_key}") - copy_kms_key = RuntimeConfig.get_copy_kms_key_id(backup_resource.entity_resource.tags, self) + copy_kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) # if a new key is provided by config encypt the copy with the new kms key if copy_kms_key is not None: self.logger.info( @@ -149,8 +149,8 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) params['KmsKeyId'] = kms_key else: # if the backup is not encrypted and the encrypt_copy is enabled, encrypted the backup with the provided kms key - if RuntimeConfig.get_encrypt_copy(backup_resource.entity_resource.tags, self): - kms_key = RuntimeConfig.get_copy_kms_key_id(backup_resource.entity_resource.tags, self) + if RuntimeConfig.get_encrypt_copy(source_backup.entity_resource.tags, self): + kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) if kms_key is not None: self.logger.info( f"Snapshot {source_backup.backup_id} is not encrypted. Encrypting the copy with KMS key {kms_key}") diff --git a/shelvery/rds_cluster_backup.py b/shelvery/rds_cluster_backup.py index 8f81f5a..cc2e709 100644 --- a/shelvery/rds_cluster_backup.py +++ b/shelvery/rds_cluster_backup.py @@ -134,7 +134,7 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) kms_key = source_backup.resource_properties['KmsKeyId'] self.logger.info(f"Snapshot {source_backup.backup_id} is encrypted with the kms key {kms_key}") - copy_kms_key = RuntimeConfig.get_copy_kms_key_id(backup_resource.entity_resource.tags, self) + copy_kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) # if a new key is provided by config encypt the copy with the new kms key if copy_kms_key is not None: self.logger.info(f"Snapshot {source_backup.backup_id} will be copied and encrypted with the kms key {copy_kms_key}") @@ -143,8 +143,8 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) params['KmsKeyId'] = kms_key else: # if the backup is not encrypted and the encrypt_copy is enabled, encrypted the backup with the provided kms key - if RuntimeConfig.get_encrypt_copy(backup_resource.entity_resource.tags, self): - kms_key = RuntimeConfig.get_copy_kms_key_id(backup_resource.entity_resource.tags, self) + if RuntimeConfig.get_encrypt_copy(source_backup.entity_resource.tags, self): + kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) if kms_key is not None: self.logger.info(f"Snapshot {source_backup.backup_id} is not encrypted. Encrypting the copy with KMS key {kms_key}") params['KmsKeyId'] = kms_key From 093e2f2acc9b412fc56f6f1d7d591a7713a893c8 Mon Sep 17 00:00:00 2001 From: Tarun Menon Date: Thu, 30 Jun 2022 12:11:14 +1000 Subject: [PATCH 2/2] Removed entity resource reference --- shelvery/documentdb_backup.py | 6 +++--- shelvery/rds_cluster_backup.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/shelvery/documentdb_backup.py b/shelvery/documentdb_backup.py index f6138f3..71acf96 100644 --- a/shelvery/documentdb_backup.py +++ b/shelvery/documentdb_backup.py @@ -139,7 +139,7 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) kms_key = source_backup.resource_properties['KmsKeyId'] self.logger.info(f"Snapshot {source_backup.backup_id} is encrypted with the kms key {kms_key}") - copy_kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) + copy_kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.tags, self) # if a new key is provided by config encypt the copy with the new kms key if copy_kms_key is not None: self.logger.info( @@ -149,8 +149,8 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) params['KmsKeyId'] = kms_key else: # if the backup is not encrypted and the encrypt_copy is enabled, encrypted the backup with the provided kms key - if RuntimeConfig.get_encrypt_copy(source_backup.entity_resource.tags, self): - kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) + if RuntimeConfig.get_encrypt_copy(source_backup.tags, self): + kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.tags, self) if kms_key is not None: self.logger.info( f"Snapshot {source_backup.backup_id} is not encrypted. Encrypting the copy with KMS key {kms_key}") diff --git a/shelvery/rds_cluster_backup.py b/shelvery/rds_cluster_backup.py index cc2e709..0dcc1fc 100644 --- a/shelvery/rds_cluster_backup.py +++ b/shelvery/rds_cluster_backup.py @@ -134,7 +134,7 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) kms_key = source_backup.resource_properties['KmsKeyId'] self.logger.info(f"Snapshot {source_backup.backup_id} is encrypted with the kms key {kms_key}") - copy_kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) + copy_kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.tags, self) # if a new key is provided by config encypt the copy with the new kms key if copy_kms_key is not None: self.logger.info(f"Snapshot {source_backup.backup_id} will be copied and encrypted with the kms key {copy_kms_key}") @@ -143,8 +143,8 @@ def copy_shared_backup(self, source_account: str, source_backup: BackupResource) params['KmsKeyId'] = kms_key else: # if the backup is not encrypted and the encrypt_copy is enabled, encrypted the backup with the provided kms key - if RuntimeConfig.get_encrypt_copy(source_backup.entity_resource.tags, self): - kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.entity_resource.tags, self) + if RuntimeConfig.get_encrypt_copy(source_backup.tags, self): + kms_key = RuntimeConfig.get_copy_kms_key_id(source_backup.tags, self) if kms_key is not None: self.logger.info(f"Snapshot {source_backup.backup_id} is not encrypted. Encrypting the copy with KMS key {kms_key}") params['KmsKeyId'] = kms_key