Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/modules/storage/infinidat/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pyc

�
�Udac@`sAddlmZmZmZeZidd6dgd6dd6ZdZd	Zd
Z	ddl
Z
dZy ddl
mZmZeZWn#ek
r�e
j�ZeZnXdd
lmZmZddlmZmZmZmZed��Zed��Zed��Zed��Z d�Z!e"dkr=e!�ndS(i(tabsolute_importtdivisiontprint_functions1.1tmetadata_versiontpreviewtstatust	communitytsupported_bys�
---
module: infini_pool
version_added: 2.3
short_description: Create, Delete and Modify Pools on Infinibox
description:
    - This module to creates, deletes or modifies pools on Infinibox.
author: Gregory Shulov (@GR360RY)
options:
  name:
    description:
      - Pool Name
    required: true
  state:
    description:
      - Creates/Modifies Pool when present or removes when absent
    required: false
    default: present
    choices: [ "present", "absent" ]
  size:
    description:
      - Pool Physical Capacity in MB, GB or TB units.
        If pool size is not set on pool creation, size will be equal to 1TB.
        See examples.
    required: false
  vsize:
    description:
      - Pool Virtual Capacity in MB, GB or TB units.
        If pool vsize is not set on pool creation, Virtual Capacity will be equal to Physical Capacity.
        See examples.
    required: false
  ssd_cache:
    description:
      - Enable/Disable SSD Cache on Pool
    required: false
    default: yes
    type: bool
notes:
  - Infinibox Admin level access is required for pool modifications
extends_documentation_fragment:
    - infinibox
requirements:
    - capacity
sG
- name: Make sure pool foo exists. Set pool physical capacity to 10TB
  infini_pool:
    name: foo
    size: 10TB
    vsize: 10TB
    user: admin
    password: secret
    system: ibox001

- name: Disable SSD Cache on pool
  infini_pool:
    name: foo
    ssd_cache: no
    user: admin
    password: secret
    system: ibox001
t
N(tKiBtCapacity(t
AnsibleModuletmissing_required_lib(t
HAS_INFINISDKtapi_wrappert
get_systemtinfinibox_argument_speccC`s7y|jjd|jd�SWntk
r2dSXdS(sReturn Pool on NonetnameN(tpoolstgettparamst	ExceptiontNone(tmoduletsystem((sQ/usr/lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pytget_pool`s
cC`sO|jd}|jd}|jd}|jd}|js;|r{|r{|jjd|dtd�dtd��}n�|r�|r�|jjd|dt|�dt|��}nj|r�|r�|jjd|dtd�dt|��}n-|jjd|dt|�dt|��}|s;|j|�q;n|jdt�d	S(
sCreate PoolRtsizetvsizet	ssd_cachetphysical_capacityt1TBtvirtual_capacitytchangedN(Rt
check_modeRtcreateR
tupdate_ssd_enabledt	exit_jsontTrue(RRRRRRtpool((sQ/usr/lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pytcreate_poolis



	0
0
0-c	C`s!t}|jd}|jd}|jd}|r�t|�jdt�}|j�|kr�|jsw|j|�nt}q�n|r�t|�jd	t�}|j	�|kr�|js�|j
|�nt}q�n|j�|kr
|js|j|�nt}n|j
d|�dS(
sUpdate PoolRRRii@R Ni�i�(tFalseRR
troundupR	tget_physical_capacityR!tupdate_physical_capacityR%tget_virtual_capacitytupdate_virtual_capacitytget_ssd_enabledR#R$(	RRR&R RRRRR((sQ/usr/lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pytupdate_pool�s*


				cC`s*|js|j�n|jdt�dS(sDelete PoolR N(R!tdeleteR$R%(RR&((sQ/usr/lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pytdelete_pool�s	
cC`st�}|jtdtdt�dtdddddg�dt�d	t�d
tdddt���t|d
t�}ts�|jdtd��nts�|jdtd�dt	�n|j
dr	yt|j
d�Wq	tk
r|jdd�q	Xn|j
d	rRyt|j
d	�WqRtk
rN|jdd�qRXn|j
d}t
|�}t||�}|dkr�|r�t||�nm|dkr�|r�t|||�nH|dkr�|r�t||�n&|dkr
|r
|jdt�ndS(NRtrequiredtstatetdefaulttpresenttchoicestabsentRRRttypetbooltsupports_check_modetmsgt	infinisdktcapacityt	exceptionsDsize (Physical Capacity) should be defined in MB, GB, TB or PB unitssDvsize (Virtual Capacity) should be defined in MB, GB, TB or PB unitsR (RtupdatetdictR%RR
t	fail_jsonRtHAS_CAPACITYtCAPACITY_IMP_ERRRR
RRRR'R/R1R$R((t
argument_specRR3RR&((sQ/usr/lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pytmain�sD			




t__main__(#t
__future__RRRR8t
__metaclass__tANSIBLE_METADATAt
DOCUMENTATIONtEXAMPLEStRETURNt	tracebackRRCR=R	R
R%RBtImportErrort
format_excR(tansible.module_utils.basicRRtansible.module_utils.infiniboxR
RRRRR'R/R1REt__name__(((sQ/usr/lib/python2.7/site-packages/ansible/modules/storage/infinidat/infini_pool.pyt<module>s0


.


"	 	-

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]