diff --git a/bin/kube-diagrams b/bin/kube-diagrams index 67194d3..beee205 100755 --- a/bin/kube-diagrams +++ b/bin/kube-diagrams @@ -870,9 +870,16 @@ def process_resource(resource): label = cluster_config["label"] labels = query_path(resource, "metadata.labels") if isinstance(labels, dict) and label in labels: - cluster = cluster.get_or_create_cluster( - f"{cluster_config['title']}: {labels[label]}" - ) + cluster_config_title = cluster_config['title'] + if cluster_config_title.find("{") == -1: + metadata_label_value = labels[label] + if metadata_label_value is not None: + cluster_name = f"{cluster_config_title}: {metadata_label_value}" + else: + cluster_name = cluster_config_title + else: + cluster_name = cluster_config_title.format(labels[label]) + cluster = cluster.get_or_create_cluster(cluster_name) cluster.graph_attr = cluster_config.get("graph_attr", {}) clusters.remove(cluster_config) return process_clusters(cluster, resource, clusters)