raise type(e)("{} while '{}'".format(e, step), http_code=e.http_code)
def _create_cluster(self, cls_request, rollback, session, indata, kwargs, headers):
- # Check whether the region name and resource group have been given
- region_given = "region_name" in indata
- resource_group_given = "resource_group" in indata
-
# Get the vim_account details
vim_account_details = self.db.get_one(
"vim_accounts", {"name": cls_request["vim_account"]}
)
# Check whether the region name and resource group have been given
- if not region_given and not resource_group_given:
- region_name = vim_account_details["config"]["region_name"]
- resource_group = vim_account_details["config"]["resource_group"]
- elif region_given and not resource_group_given:
+ if "region_name" in indata:
region_name = cls_request["region_name"]
- resource_group = vim_account_details["config"]["resource_group"]
- elif not region_given and resource_group_given:
- region_name = vim_account_details["config"]["region_name"]
- resource_group = cls_request["resource_group"]
else:
- region_name = cls_request["region_name"]
- resource_group = cls_request["resource_group"]
+ region_name = vim_account_details["config"].get("region_name")
cls_desc = {
"name": cls_request["name"],
"node_count": cls_request["node_count"],
"bootstrap": cls_request["bootstrap"],
"region_name": region_name,
- "resource_group": resource_group,
"infra_controller_profiles": [
self._create_default_profiles(
rollback, session, indata, kwargs, headers, self.infra_contr_topic
"resourceState": "IN_PROGRESS.REQUEST_RECEIVED",
}
# Add optional fields if they exist in the request
+ if "resource_group" in indata:
+ resource_group = cls_request["resource_group"]
+ else:
+ resource_group = vim_account_details["config"].get("resource_group")
+ if resource_group:
+ cls_desc["resource_group"] = resource_group
if "description" in cls_request:
cls_desc["description"] = cls_request["description"]
return cls_desc