+ if grant_type == GRANT_TYPE.TERMINATE:
+ res_index = 1
+ content_args['removeResources'] = []
+ for vdu in vdus:
+ res_def = {
+ 'id': str(res_index),
+ 'type': 'COMPUTE',
+ # 'vduId': None,
+ # 'resourceTemplateId': None,
+ 'resource': {
+ # 'vimConnectionId': None,
+ # 'resourceProviderId': None,
+ 'resourceId': vdu.resourceid,
+ # 'vimLevelResourceType': None
+ }
+ }
+ content_args['removeResources'].append(res_def)
+ res_index += 1
+ if vdus and vdus[0].vimid:
+ split_vim = vdus[0].vimid.split('_')
+ cloud_owner = split_vim[0]
+ cloud_region = "".join(split_vim[1:])
+ content_args['additionalParams']['vimid'] = json.dumps({
+ "cloud_owner": cloud_owner,
+ 'cloud_regionid': cloud_region})
+ elif grant_type == GRANT_TYPE.INSTANTIATE:
+ vim_id = ignore_case_get(ignore_case_get(data, "additionalParams"), "vimId")
+ res_index = 1
+ content_args['addResources'] = []
+ for vdu in vdus:
+ res_def = {
+ 'id': str(res_index),
+ 'type': 'COMPUTE',
+ # 'vduId': vdu["vdu_id"],
+ 'resourceTemplateId': vdu["vdu_id"] # , None,
+ # 'resource': None
+ }
+ content_args['addResources'].append(res_def)
+ res_index += 1
+ if vim_id:
+ content_args['additionalParams']['vimid'] = vim_id
+ elif grant_type == GRANT_TYPE.OPERATE:
+ res_index = 1
+ content_args['updateResources'] = []
+ for vdu in vdus:
+ res_def = {
+ 'id': str(res_index),
+ 'type': 'COMPUTE',
+ 'vduId': None,
+ 'resourceTemplateId': None,
+ 'resource': {
+ 'vimConnectionId': None,
+ 'resourceProviderId': None,
+ 'resourceId': vdu.resourceid,
+ 'vimLevelResourceType': None
+ }
+ }
+ content_args['updateResources'].append(res_def)
+ res_index += 1
+ if vdus and vdus[0].vimid:
+ content_args['additionalParams']['vimid'] = vdus[0].vimid