From 1ae3fd26cc22851c43cd4d2d0a654d9459bf4ca6 Mon Sep 17 00:00:00 2001 From: Mitch Clarke <39038062+mitchclarkebase2@users.noreply.github.com> Date: Wed, 21 May 2025 18:37:53 +1000 Subject: [PATCH 1/2] Add validation that tags exist, fix StepFunctions service name --- lib/services/ecs_services.py | 4 ++-- lib/services/stepfunctions.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/services/ecs_services.py b/lib/services/ecs_services.py index 1c33bbf..4431c63 100644 --- a/lib/services/ecs_services.py +++ b/lib/services/ecs_services.py @@ -43,7 +43,7 @@ def get_resources(self): 'ServiceName': item['serviceName'], 'Cluster': clusterName }, - 'tags': item['tags'] + 'tags': item['tags'] if 'tags' in item else [] } for item in client.describe_services(cluster=clusterName, services=array, include=['TAGS'])['services']) else: self.identifiers.extend({ @@ -51,7 +51,7 @@ def get_resources(self): 'ServiceName': item['serviceName'], 'Cluster': clusterName }, - 'tags': item['tags'] + 'tags': item['tags'] if 'tags' in item else [] } for item in client.describe_services(cluster=clusterName, services=serviceArns, include=['TAGS'])['services']) except Exception as e: diff --git a/lib/services/stepfunctions.py b/lib/services/stepfunctions.py index 5cfff80..e0fe470 100644 --- a/lib/services/stepfunctions.py +++ b/lib/services/stepfunctions.py @@ -9,7 +9,7 @@ def __init__(self, region): self.identifiers = [] self.templates = { 'cfn-monitor': 'Stepfunctions', - 'cfn-guardian': 'Stepfunctions' + 'cfn-guardian': 'StepFunctions' } self.get_resources() From 9fb92fc65f95990556a8582d22a780bfac25672a Mon Sep 17 00:00:00 2001 From: Mitch Clarke <39038062+mitchclarkebase2@users.noreply.github.com> Date: Tue, 28 Oct 2025 14:40:21 +1100 Subject: [PATCH 2/2] Fix docdb to retrieve and post as clusters --- lib/services/docdb.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/services/docdb.py b/lib/services/docdb.py index 9503211..02806a0 100644 --- a/lib/services/docdb.py +++ b/lib/services/docdb.py @@ -14,19 +14,19 @@ def __init__(self, region): def get_resources(self): try: - client = boto3.client('rds', region_name=self.region) - paginator = client.get_paginator('describe_db_instances') + client = boto3.client('docdb', region_name=self.region) + paginator = client.get_paginator('describe_db_clusters') page_iterator = paginator.paginate() - instances = [] + clusters = [] for page in page_iterator: - instances.extend([{ - 'id': item['DBInstanceIdentifier'], - 'arn': item['DBInstanceArn'], - } for item in page['DBInstances'] if 'DBClusterIdentifier' in item and item['Engine'] == 'docdb']) - for instance in instances: - tags = client.list_tags_for_resource(ResourceName=instance['arn'])['TagList'] + clusters.extend([{ + 'id': item['DBClusterIdentifier'], + 'arn': item['DBClusterArn'], + } for item in page['DBClusters'] if 'DBClusterIdentifier' in item and item['Engine'] == 'docdb']) + for cluster in clusters: + tags = client.list_tags_for_resource(ResourceName=cluster['arn'])['TagList'] self.identifiers.extend([{ - 'id': instance['id'], + 'id': cluster['id'], 'tags': [{ 'key': t['Key'], 'value': t['Value']