VMware Cloud Community
Danco74
Enthusiast
Enthusiast

vRO provision blueprint to the wrong business group

Hey guys,


I'm using vRO 7.1 vRA plug-in to provision a blueprint in a particular business group.
I'm retrieving the catalog items for that particular blueprint here:

catalogItems = vCACCAFEEntitiesFinder.findCatalogItems(vCACHost, "Someblueprint")

And then i'm searching for the one entitled to the current business group:

for each(var cat in catalogItems)

  if ((cat.organization.getSubtenantLabel().toLowerCase() == targetBG.toLowerCase()))

  catalogItem = cat;

When printing the returned catalog item, I can clearly see that this is the correct catalog item.

I then provision the blueprint with a provisioning template here:

ar vmProvisioningRequest = vCACCAFERequestsHelper.getProvisioningRequestForCatalogItem(catalogItem)

var getProvisioningRequestData = vCACCAFERequestsHelper.getProvisioningRequestData(vmProvisioningRequest);

var setRequestData = JSON.parse(getProvisioningRequestData);

//Update provision request with source VM properties

setRequestData.vSphere_Machine_1.data.cpu = srcVmProps.cpu;

setRequestData.vSphere_Machine_1.data.memory = srcVmProps.memory;

//Sends the request to the CAFE host

vCACCAFERequestsHelper.setProvisioningRequestData(vmProvisioningRequest, JSON.stringify(setRequestData));

request = System.getModule("com.vmware.library.vcaccafe.request").requestCatalogItemWithProvisioningRequest(catalogItem,vmProvisioningRequest)


Everything is working fine except the blueprint is being provisioned to the wrong business group.
I'm going insane here trying to figure out what's wrong.

I'd really appreciate your assistance

0 Kudos
1 Reply
Shahid79
Contributor
Contributor

I came across same issue, it looks like bug in ‘getProvisioningRequestForCatalogItem’ action, you expect passing a catalog item it returns Provisioning Request data of correct catalog but it’s not, what I noticed it always returns the Provisioning Request of catalog item of business group which is first in entitlement alphabetic list.

So, it’s always going to have business group id of first entitled business group even though you have select catalog item for different business group.

To get around this I set business group id in provisioning request to the catalog item subtenantRef, then it provisions to correct business group.

var vmProvisioningRequest = vCACCAFERequestsHelper.getProvisioningRequestForCatalogItem(catalogItem)

vmProvisioningRequest.setBusinessGroupId(catalogItem.organization.getSubtenantRef());

hope this helps someone else facing same issue

0 Kudos