Bases: object
Masking class for SMI-S based EMC volume drivers.
Masking code to dynamically create a masking view This masking class is for EMC volume drivers based on SMI-S. It supports VMAX arrays.
Add a volume to an existing storage group.
| Parameters: | 
 | 
|---|---|
| Returns: | int – rc the return code of the job | 
| Returns: | dict – the job dict | 
Find the newly created volume.
| Parameters: | 
 | 
|---|---|
| Returns: | dict – maskingViewInstance | 
Given the port Group name get the port group instance name.
| Parameters: | 
 | 
|---|---|
| Returns: | foundPortGroupInstanceName | 
Get the associated storage groups from the volume Instance name.
Given the volume instance name get the associated storage group instance names.
| Parameters: | 
 | 
|---|---|
| Returns: | list – list of storage group instance names | 
Get the associated volume Instance names.
Given the storage group instance name get the associated volume Instance names.
| Parameters: | 
 | 
|---|---|
| Returns: | list – volumeInstanceNames list of volume instance names | 
Get initiator group in a masking view.
| Parameters: | 
 | 
|---|---|
| Returns: | initiatorGroupInstanceName or None if it is not found | 
Given volume, retrieve the masking view instance name.
| Parameters: | 
 | 
|---|---|
| Returns: | masking view instance name | 
Get the associated maskingview instance name.
Given storage group instance name, get the associated masking view instance name.
| Parameters: | 
 | 
|---|---|
| Returns: | instance name foundMaskingViewInstanceName | 
Given initiator group, retrieve the masking view instance name.
Retrieve the list of masking view instances associated with the initiator group instance name.
| Parameters: | 
 | 
|---|---|
| Returns: | list of masking view instance names | 
Given port group, retrieve the masking view instance name.
| Parameters: | 
 | 
|---|---|
| Returns: | masking view instance names | 
Get or Create a masking view and add a volume to the storage group.
Given a masking view tuple either get or create a masking view and add the volume to the associated storage group. If it is a live migration operation then we do not need to remove the volume from any storage group (default or otherwise).
| Parameters: | 
 | 
|---|---|
| Returns: | dict – rollbackDict | 
| Raises: | VolumeBackendAPIException | 
Get the port group in a masking view.
| Parameters: | 
 | 
|---|---|
| Returns: | portGroupInstanceName | 
Get the DA ports wwns.
| Parameters: | 
 | 
|---|---|
| Returns: | list – the list of target wwns for the masking view | 
This is called on a delete, unmap device or rollback.
If the connector is not None get the associated SG and remove volume from the storage group, otherwise it is a VMAX3 deletion.
| Parameters: | 
 | 
|---|---|
| Returns: | storageGroupInstanceName | 
Remove the volume from the default storage group.
Remove the volume from the default storage group for the FAST policy and return the default storage group instance name.
| Parameters: | 
 | 
|---|---|
| Returns: | instance name defaultStorageGroupInstanceName | 
Return volume to the default storage group in v3.
| Parameters: | 
 | 
|---|---|
| Raises: | VolumeBackendAPIException |