Attached is a workflow that creates a clustered LUN/qtree and igroup/initiatiors and maps the lun, but requires no cluster name/ip or vserver/input. It does this by retrieving this information from an existing/zoned/mapped igroup name search( the igroup name will try to match a VMware cluster name which is part of the existing igroup name ). The reason for having a workflow with minimum inputs is to be able to call it from BAO ( so we only need initiatiors, size, server_name ( which will be the volume and qtree and also part of the new igroup created name ), and VMware_cluster name ( 4 INPUTS TOTAL ), without having BAO to tell WFA on which cluster/vserver it needs to create the LUN.
I am stuck at the end with the Map LUN command, the error is the following:
Found variable - expected literal At command 'Map LUN', tab 'Lun', variable 'lun1'
The issue is in "Other parameters" tab of "Map LUN" command instance used in the workflow. LUN id parameter is of string type and should be defined accordingly.
It has been defined in the attached workflow as "lun1" which refers to the whole LUN object being created. It should be changed to lUN Id used for mapping this specific LUN to the iGroup. This is same as the last value if you were using the command line: f3270-208-238-239-240-241::> lun mapping create -vserver shails -path /vol/datavol1/lun1 -igroup igrp1 -lun-id 2
In the sample workflow, it is defined as shown in the screenshot. The sample workflows creates multiple luns using a loop and hence the LUN id is dynamically determined as shown
Now, the error message "Found variable - expected literal" is actually referring to this issue.
However, I agree that the error message is mis-leading in its location part" "At command 'Map LUN', tab 'Lun', variable 'lun1'"
The tab should have been "Other parameters"
An issue has been filed for the same. You could refer to #864894 in case of a support case.
Re: Create clustered LUN based on existing IGROUP name