db_cluster["credentials"] = cluster_creds
# Retrieve subnets
- if db_cluster["vim_type"] == "aws":
- generic_object = await self.odu.list_object(
- api_group="ec2.aws.upbound.io",
- api_plural="subnets",
- api_version="v1beta1",
- )
- private_subnet = []
- public_subnet = []
- for subnet in generic_object:
- labels = subnet.get("metadata", {}).get("labels", {})
- status = subnet.get("status", {}).get("atProvider", {})
- # Extract relevant label values
- cluster_label = labels.get("cluster")
- access_label = labels.get("access")
- subnet_id = status.get("id")
- # Apply filtering
- if cluster_label == db_cluster["name"] and subnet_id:
- if access_label == "private":
- private_subnet.append(subnet_id)
- elif access_label == "public":
- public_subnet.append(subnet_id)
- # Update db_cluster
- db_cluster["private_subnet"] = private_subnet
- db_cluster["public_subnet"] = public_subnet
+ if op_params.get("private_subnet") and op_params.get("public_subnet"):
+ db_cluster["private_subnet"] = op_params["private_subnet"]
+ db_cluster["public_subnet"] = op_params["public_subnet"]
+ else:
+ if db_vim["vim_type"] == "aws":
+ generic_object = await self.odu.list_object(
+ api_group="ec2.aws.upbound.io",
+ api_plural="subnets",
+ api_version="v1beta1",
+ )
+ private_subnet = []
+ public_subnet = []
+ for subnet in generic_object:
+ labels = subnet.get("metadata", {}).get("labels", {})
+ status = subnet.get("status", {}).get("atProvider", {})
+ # Extract relevant label values
+ cluster_label = labels.get("cluster")
+ access_label = labels.get("access")
+ subnet_id = status.get("id")
+ # Apply filtering
+ if cluster_label == db_cluster["name"] and subnet_id:
+ if access_label == "private":
+ private_subnet.append(subnet_id)
+ elif access_label == "public":
+ public_subnet.append(subnet_id)
+ # Update db_cluster
+ db_cluster["private_subnet"] = private_subnet
+ db_cluster["public_subnet"] = public_subnet
+ self.logger.info("DB cluster: {}".format(db_cluster))
# Register the cluster in k8sclusters collection
db_register["credentials"] = cluster_creds