@@ -16,7 +16,7 @@ class TagClusterResources(TagClusterOperations):
1616 SHORT_ID = 5
1717 NA_VALUE = 'NA'
1818
19- def __init__ (self , cluster_name : str = None , cluster_prefix : str = None , input_tags : dict = None ,
19+ def __init__ (self , cluster_name : str = None , cluster_prefix : list = None , input_tags : dict = None ,
2020 region : str = 'us-east-2' , dry_run : str = 'yes' , cluster_only : bool = False ):
2121 super ().__init__ (cluster_name = cluster_name , cluster_prefix = cluster_prefix , input_tags = input_tags , region = region ,
2222 dry_run = dry_run , cluster_only = cluster_only )
@@ -63,7 +63,7 @@ def __add_cluster_id_tag(self, tags: list):
6363 if tag .get ('Key' ) == 'api.openshift.com/name' :
6464 cluster_name = tag ['Value' ]
6565 else :
66- if not cluster_name and self . cluster_prefix in tag .get ('Key' ):
66+ if not cluster_name and any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
6767 cluster_name = tag ['Key' ]
6868 if cluster_name :
6969 # cluster_name = cluster_id
@@ -85,7 +85,7 @@ def __check_name_in_tags(self, tags: list, resource_id: str):
8585 found = True
8686 break
8787 for tag in tags :
88- if self . cluster_prefix in tag .get ('Key' ):
88+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
8989 cluster_name = tag ['Key' ]
9090 break
9191 if not found :
@@ -106,8 +106,8 @@ def __get_cluster_tags_by_instance_cluster(self, cluster_name: str):
106106 for item in instance :
107107 if item .get ('Tags' ):
108108 for tag in item .get ('Tags' ):
109- if self . cluster_prefix in tag .get ('Key' ):
110- if tag .get ('Key' ) == cluster_name :
109+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
110+ if cluster_name in tag .get ('Key' ):
111111 i_tags = [instance_tag for instance_tag in item .get ('Tags' ) if
112112 instance_tag .get ('Key' ) != 'Name' ]
113113 return [i_tag for i_tag in i_tags if i_tag .get ('Key' ) != cluster_name ]
@@ -149,7 +149,7 @@ def __generate_cluster_resources_list_by_tag(self, resources_list: list, input_r
149149 # search that not exist permanent tags in the resource
150150 if not self .__validate_existing_tag (resource .get (tags )):
151151 for tag in resource [tags ]:
152- if self . cluster_prefix in tag .get ('Key' ):
152+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
153153 if tag .get ('Key' ) not in cluster_tags :
154154 cluster_tags [tag .get ('Key' )] = []
155155 cluster_ids [tag .get ('Key' )] = []
@@ -195,7 +195,7 @@ def __generate_cluster_resources_list_by_vpc(self, resources_list: list, input_r
195195 all_tags .extend (vpc_data .get (vpc_id ))
196196 all_tags = self .__check_name_in_tags (tags = all_tags , resource_id = resource_id )
197197 all_tags = self .__filter_resource_tags_by_add_tags (resource .get ('Tags' ), all_tags )
198- cluster_tag = [tag for tag in vpc_data .get (vpc_id ) if self . cluster_prefix in tag .get ('Key' )]
198+ cluster_tag = [tag for tag in vpc_data .get (vpc_id , [] ) if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix )]
199199 if all_tags :
200200 if self .cluster_name :
201201 if self .cluster_name in cluster_tag [0 ].get ('Key' ):
@@ -224,7 +224,7 @@ def __scan_resource_for_cluster_fullname(self, resources_list: list, tags: str =
224224 for resource in resources_list :
225225 if resource .get (tags ):
226226 for tag in resource [tags ]:
227- if tag ['Key' ].startswith (f' { self . cluster_prefix } { self .cluster_name } ' ):
227+ if any ( tag ['Key' ].startswith (f" { prefix } / { self .cluster_name } " ) for prefix in self . cluster_prefix ):
228228 return tag ['Key' ]
229229 return ''
230230
@@ -284,7 +284,7 @@ def update_cluster_tags(self, resources: list):
284284 # search that not exist permanent tags in the resource
285285 if not self .__validate_existing_tag (tags ):
286286 for tag in tags :
287- if self . cluster_prefix in tag .get ('Key' ):
287+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
288288 add_tags = self .__append_input_tags ()
289289 add_tags .append (tag )
290290 cluster_name = tag .get ('Key' ).split ('/' )[- 1 ]
@@ -472,7 +472,7 @@ def cluster_load_balancer(self):
472472 if item .get ('Tags' ):
473473 if not self .__validate_existing_tag (item .get ('Tags' )):
474474 for tag in item ['Tags' ]:
475- if self . cluster_prefix in tag .get ('Key' ):
475+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
476476 all_tags = []
477477 instance_tags = self .__get_cluster_tags_by_instance_cluster (cluster_name = tag .get ('Key' ))
478478 if not instance_tags :
@@ -520,7 +520,7 @@ def cluster_load_balancer_v2(self):
520520 if item .get ('Tags' ):
521521 if not self .__validate_existing_tag (item .get ('Tags' )):
522522 for tag in item ['Tags' ]:
523- if self . cluster_prefix in tag .get ('Key' ):
523+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
524524 all_tags = []
525525 instance_tags = self .__get_cluster_tags_by_instance_cluster (cluster_name = tag .get ('Key' ))
526526 if not instance_tags :
@@ -576,7 +576,7 @@ def get_cluster_vpc(self):
576576 for vpc in vpcs_data :
577577 if vpc .get ('Tags' ):
578578 for tag in vpc .get ('Tags' ):
579- if self . cluster_prefix in tag .get ('Key' ):
579+ if any ( prefix in tag .get ('Key' , '' ) for prefix in self . cluster_prefix ):
580580 vpc_ids [vpc .get ('VpcId' )] = [tag for tag in vpc .get ('Tags' ) if tag .get ('Key' ) != 'Name' ]
581581 break
582582 return vpc_ids
@@ -688,7 +688,7 @@ def cluster_role(self, cluster_names: list = []):
688688 role_data = role ['Role' ]
689689 all_tags = []
690690 instance_tags = self .__get_cluster_tags_by_instance_cluster (
691- cluster_name = f' { self . cluster_prefix } { cluster_key } ' )
691+ cluster_name = cluster_key )
692692 if not instance_tags :
693693 all_tags = self .__append_input_tags (role_data .get ('Tags' ))
694694 else :
@@ -738,7 +738,7 @@ def cluster_user(self, cluster_names: list = []):
738738 if cluster_name in tag ['Key' ]:
739739 all_tags = []
740740 instance_tags = self .__get_cluster_tags_by_instance_cluster (
741- cluster_name = f' { self . cluster_prefix } { cluster_name } ' )
741+ cluster_name = cluster_name )
742742 if not instance_tags :
743743 all_tags = self .__append_input_tags (data .get ('Tags' ))
744744 all_tags .extend (instance_tags )
@@ -822,7 +822,7 @@ def cluster_s3_bucket(self, cluster_names: list = []):
822822 if not self .__validate_existing_tag (bucket_tags ):
823823 add_tags = []
824824 instance_tags = self .__get_cluster_tags_by_instance_cluster (
825- cluster_name = f' { self . cluster_prefix } { cluster_name } ' )
825+ cluster_name = cluster_name )
826826 if not instance_tags :
827827 add_tags = self .__append_input_tags (bucket_tags )
828828 add_tags .extend (instance_tags )
0 commit comments