�
�Udac @` s� d d l m Z m Z m Z e Z i d d 6d g d 6d d 6Z d Z d Z d
Z d d l
m Z d d l m
Z
m Z m Z d
� Z d � Z d � Z d � Z d � Z d � Z d � Z e d k r� e � n d S( i ( t absolute_importt divisiont print_functions 1.1t metadata_versiont previewt statust communityt supported_bys�
---
module: vexata_eg
version_added: 2.9
short_description: Manage export groups on Vexata VX100 storage arrays
description:
- Create or delete export groups on a Vexata VX100 array.
- An export group is a tuple of a volume group, initiator group and port
group that allows a set of volumes to be exposed to one or more hosts
through specific array ports.
author:
- Sandeep Kasargod (@vexata)
options:
name:
description:
- Export group name.
required: true
type: str
state:
description:
- Creates export group when present or delete when absent.
default: present
choices: [ present, absent ]
type: str
vg:
description:
- Volume group name.
type: str
ig:
description:
- Initiator group name.
type: str
pg:
description:
- Port group name.
type: str
extends_documentation_fragment:
- vexata.vx100
sw
- name: Create export group named db_export.
vexata_eg:
name: db_export
vg: dbvols
ig: dbhosts
pg: pg1
state: present
array: vx100_ultra.test.com
user: admin
password: secret
- name: Delete export group named db_export
vexata_eg:
name: db_export
state: absent
array: vx100_ultra.test.com
user: admin
password: secret
t
( t
AnsibleModule( t
argument_spect get_arrayt required_togetherc ` s{ | j d � yF | j � } t � f d � | � } t | � d k rN | d Sd SWn! t k
rv | j d d � n Xd S( s1 Retrieve a named vg if it exists, None if absent.t namec ` s | d � k S( NR
( ( t eg( R
( sL /usr/lib/python2.7/site-packages/ansible/modules/storage/vexata/vexata_eg.pyt <lambda>Z s i i t msgs1 Error while attempting to retrieve export groups.N( t paramst list_egst filtert lent Nonet Exceptiont fail_json( t modulet arrayt egsR ( ( R
sL /usr/lib/python2.7/site-packages/ansible/modules/storage/vexata/vexata_eg.pyt get_egU s
c ` s� | j d � y_ | j � } t � f d � | � } t | � d k rR | d d S| j d d j � � � Wn! t k
r� | j d d � n Xd S(
s7 Retrieve a named vg's id if it exists, error if absent.t vgc ` s | d � k S( NR
( ( R ( R
( sL /usr/lib/python2.7/site-packages/ansible/modules/storage/vexata/vexata_eg.pyR h s i i t idR s Volume group {0} was not found.s1 Error while attempting to retrieve volume groups.N( R t list_vgsR R R t formatR ( R R t vgsR ( ( R
sL /usr/lib/python2.7/site-packages/ansible/modules/storage/vexata/vexata_eg.pyt get_vg_idc s
c ` s� | j d � y_ | j � } t � f d � | � } t | � d k rR | d d S| j d d j � � � Wn! t k
r� | j d d � n Xd S(
s7 Retrieve a named ig's id if it exists, error if absent.t igc ` s | d � k S( NR
( ( R"