VMware Cloud Community
GurpreetKaurBab
Enthusiast
Enthusiast

vRA 7.6 : Approval Policy : To choose approver dynamically

Hi All,

I am trying to configure a Approval Policy for my XaaS Blueprint.

< We do not have Business group per Department >

USE CASE : While making a request, the requester can select his Department Name from a drop-down menu shown in catalog and then the approval must go to their respective DGM ( Deputy General manager)

ISSUE :  We donot have User : Department : DGM mapping configured in AD.

REQUIRED : How shall I make a logic so that approval goes to specific DGM ? Though I have Department : DGM maping in excel ( can save as resource element in vRO)

Any suggestions are welcome.

Regards

Gurpreet Kaur Babbar

0 Kudos
5 Replies
xian_
Expert
Expert

You could define an external (workflow based) approval policy. The event subscription invokes a vRO workflow with a user interaction. That item you can customize whom to send.

Your workflow then (dis)approves based on the user input.

The input request will show up in the user's Inbox, but not among Approvals but Manual User Action.

Drawback is that your workflow might run for a long time (and may timeout).

0 Kudos
GurpreetKaurBab
Enthusiast
Enthusiast

Hi Xian,

Thanks for replying,

The challenge here is : DGM's will probably not open vRA Portals for approving, neither they are going to approve within 24 hours.

I was wondering if we can send them an E-Mail through vRO for approving or rejecting. But now, below challenges arises:

1.  How to trace back the approver's input from E-Mail. ( vRA is capable but I guess vRO is not )

2.  Would we be able to pass inputs of XaaS form as information in E-Mail : so that Approver can see what was requested. ( I read your previous discussion of passing catalog inputs as payload to vRO workflow, though I am not sure how to do for XaaS forms - though I have Rejected/approved request through event subscription, but couldn't print inputs of XaaS Form)

3. Will these "E-Mail triggered approvals" also time-out after a short while?

However docs.vmware.com talks about using Third_party for External Approvals, but I am not able to configure them.

https://docs.vmware.com/en/vRealize-Automation/7.6/com.vmware.vra.prepare.use.doc/GUID-67A61A9A-BF1D...

0 Kudos
xian_
Expert
Expert

That is exactly what I'm talking about (3rd party, external approval). It is integrated via EBS and vRO workflow.

1. I have not tried, but MailClient is capable of fetching emails by IMAP/POP3 from a mail server, but you'll need to setup one first (i don't think vRO provides).

2. It is possible, but tricky. Here is what I use (assuming input1 as an input variable on the form):

var vcaccafehost = vCACCAFEHostManager.getDefaultHostForTenant();

var req = vCACCAFEEntitiesFinder.getCatalogItemRequest(vcaccafehost, payload.sourceInfo.externalInstanceId);

System.debug("Request data: " + req.requestData.toString());

var input1 = req.requestData.get("provider-input1").value;

3. I think so, not sure about the vRO limits though.

0 Kudos
GurpreetKaurBab
Enthusiast
Enthusiast

Hi Xian,

Yeah, I checked, It is not possible to back-trace the approvals as E-Mails through vRO. I will have to change our approach.

Is there any custom property for changing Business Group of a request after it passes approval state ?

Let me elaborate entire situation :

1. We donot have DGM mapped to AD ids of user, so now we will have to make Business Group per Department and will map DGMs as Business manager.

                Therefore ( 52 Business Group)

2. In our environment, the cluster placement policy is based on the environment ( PROD/UAT/DMZ) not as per Department (Business Group ). And we have total 10-12 clusters for PROD/UAT/DMZ collaboratively.

            Now Reservations = Business Group * Clusters  == 600-700 reservations (approx)

                 ** As we will be having repetitive reservation settings across 52 Business Groups, it will be an operation overhead.

What I wanna achieve :

1. Less reservations to easen operations.

2. Approvals policy to have approvals from DGMs.

I understand I have landed into a contradicting situation, but is there a way to achieve this ?

A vague idea in my mind is :

To have 52 Business groups with DGMs mapped as BG managers, and one common Business group ( Reservations will only be mapped to this BG ) in which actually we provision the machines.

So a user request one of the these 52 BGs then it gpes to BG's manager for approval and after it gets approved we change its Business Group to a common BG and VM is provisioned.

--- Yes, I tested, this vague idea works fine if I try to provision through XaaS and then through XaaS I request IaaS blueprint by changing the BG.

However, i wanna do through Custom Forms, I have no idea how to achieve this.

Do you by chance think of any Idea, that can help me through ?

0 Kudos
xian_
Expert
Expert

I think the most flexible solution is still XaaS invoked IaaS provisioning you already tried. But you need all the 52 BGs and all the possible reservations. Altough these can be created via the API, scripted (along with the entitlements).

If you want to go the custom forms way:

I understand you'd have 52 BGs just to map the approver, other than that you don't want to separate the departments (different reservation limits or catalog items)? Then they can be put into a single BG. For approvals, I'd set up an external system to handle approvals (ServiceNow or iTOP if you want it for free) and use the external approval solution of vRA discussed before. In that system you could map your users to approvers.

0 Kudos