import boto3 client = boto3.client('secretsmanager') def get_secrets(): secrets = [] response = client.list_secrets() secrets.extend(response['SecretList']) while 'NextToken' in response: response = client.list_secrets(NextToken=response['NextToken']) secrets.extend(response['SecretList']) return secrets def get_secrets_with_app_family(secrets): contains_app_family = [] i = 0 while i < len(secrets): if 'Tags' in secrets[i]: tags = secrets[i]['Tags'] j = 0 while j < len(tags): if 'application_family' in tags[j].values(): contains_app_family.append(secrets[i]) j += 1 i += 1 return contains_app_family def print_percentage_info(secrets, contains_app_family): percent = (len(contains_app_family) / len(secrets)) * 100 print('Amount of secrets ' + str(len(secrets))) print('Contains app-family tag ' + str(len(contains_app_family))) print('Percent ' + str(int(percent)) + '%') def main(): """Start script.""" secrets = get_secrets() secrets_with_app_family = get_secrets_with_app_family(secrets) print_percentage_info(secrets, secrets_with_app_family) if __name__ == '__main__': main()