Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/modules/remote_management/cpm/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/modules/remote_management/cpm/cpm_plugconfig.pyc

�
�Udac@`s�ddlmZmZmZeZidd6dgd6dd6ZdZd	Zd
Z	ddl
Z
ddlZddlm
Z
dd
lmZmZmZddlmZmZddlmZmZmZd�Zd�Zd�Zedkr�e�ndS(i(tabsolute_importtdivisiontprint_functions1.1tmetadata_versiontpreviewtstatust	communitytsupported_bys2	
---
module: cpm_plugconfig
version_added: "2.8"
author: "Western Telematic Inc. (@wtinetworkgear)"
short_description: Get and Set Plug Parameters on WTI OOB and PDU power devices
description:
    - "Get and Set Plug Parameters on WTI OOB and PDU devices"
options:
  cpm_action:
    description:
      - This is the Action to send the module.
    required: true
    choices: [ "getplugconfig", "setplugconfig" ]
  cpm_url:
    description:
      - This is the URL of the WTI device to send the module.
    required: true
  cpm_username:
    description:
      - This is the Username of the WTI device to send the module.
  cpm_password:
    description:
      - This is the Password of the WTI device to send the module.
  use_https:
    description:
      - Designates to use an https connection or http connection.
    required: false
    type: bool
    default: true
  validate_certs:
    description:
      - If false, SSL certificates will not be validated. This should only be used
      - on personally controlled sites using self-signed certificates.
    required: false
    type: bool
    default: true
  use_proxy:
    description: Flag to control if the lookup will observe HTTP proxy environment variables when present.
    required: false
    type: bool
    default: false
  plug_id:
    description:
      - This is the plug number that is to be manipulated
        For the getplugconfig command, the plug_id 'all' will return the status of all the plugs the
        user has rights to access.
    required: true
  plug_name:
    description:
      - The new name of the Plug.
    required: false
  plug_bootdelay:
    description:
      - On a reboot command, this is the time when a plug will turn on power, after it has been turned off.
        0='0.5 Secs', 1='1 Sec', 2='2 Sec', 3='5 Sec', 4='15 Sec', 5='30 Sec', 6='1 Min', 7='2 Mins',
        8='3 Mins', 9='5 Mins'.
    required: false
    choices: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
  plug_default:
    description:
      - What the Plugs default state is when the device starts. 0 - Off, 1 - On.
    required: false
    choices: [ 0, 1 ]
  plug_bootpriority:
    description:
      - Prioritizes which plug gets its state changed first. The lower the number the higher the priority.
        Valid value can from 1 to the maximum number of plugs of the WTI unit.
    required: false
s�
# Get Plug parameters for all ports
- name: Get the Plug parameters for ALL ports of a WTI Power device
  cpm_plugconfig:
    cpm_action: "getplugconfig"
    cpm_url: "rest.wti.com"
    cpm_username: "restpower"
    cpm_password: "restfulpowerpass12"
    use_https: true
    validate_certs: true
    plug_id: "all"

# Get Plug parameters for port 2
- name: Get the Plug parameters for the given port of a WTI Power device
  cpm_plugconfig:
    cpm_action: "getplugconfig"
    cpm_url: "rest.wti.com"
    cpm_username: "restpower"
    cpm_password: "restfulpowerpass12"
    use_https: true
    validate_certs: false
    plug_id: "2"

# Configure plug 5
- name: Configure parameters for Plug 5 on a given WTI Power device
  cpm_plugconfig:
    cpm_action: "setplugconfig"
    cpm_url: "rest.wti.com"
    cpm_username: "restpower"
    cpm_password: "restfulpowerpass12"
    use_https: true
    plug_id: "5"
    plug_name: "NewPlugNameFive"
    plug_bootdelay: "3"
    plug_default: "0"
    plug_bootpriority: "1"
sk
data:
    description: The output JSON returned from the commands sent
    returned: always
    type: str
N(t
AnsibleModule(tto_texttto_bytest	to_native(t	HTTPErrortURLError(topen_urltConnectionErrortSSLValidationErrorcC`sad}|jdjd�}x|D]}t|�dkrDd}n
d|}d|t|�f}|jddk	r�d	|t|jd�f}n|jd
dk	r�d|t|jd
�f}n|jddk	r�d
|t|jd�f}n|jddk	r0d|t|jd�f}nd|}q#Wt|�dkr]d|}n|S(Nttplug_idt,is{"plugs": [s%s,s%s{"plug": "%s"t	plug_names%s,"plugname": "%s"tplug_bootdelays%s,"bootdelay": "%s"tplug_defaults%s,"default": "%s"tplug_bootprioritys%s,"bootpriority": "%s"s%s}s%s]}(tparamstsplittlenRtNone(t	cpmmodulet	cpmresultt	json_loadtplugspassedtval((sX/usr/lib/python2.7/site-packages/ansible/modules/remote_management/cpm/cpm_plugconfig.pyt
assemble_json�s&
	
    
c C`sptdtdddgdt�dtdddt�d	tdddt�d
tdddtdt�dtdddt�d
tdddt�dtdddtdddddddddddddg
�dtdddtdddddg�dtdddtdd�dtdddt�dtdddt�d tdddt��}td!td"d#d$d#�}td%|d&t�}|jr�|Sttjt	d'j
t|jd	�t|jd
��d(d)���}|jdtkr�d*}nd+}d}|jddkrqd,|t|jd�f}|jdj
�d-krhd.|t|jd�f}nd/}nR|jddkr�t||�}||d$<d,|t|jd�f}d0}nygt|d"|d1|d|jdd |jd d2id3d46d5|d66�}|d/kr)t|d!<nWntk
rs}	td7d8j
|t|	��d!t�}
|j|
�n�tk
r�}	td7d9j
|t|	��d!t�}
|j|
�n�tk
r�}	td7d:j
|t|	��d!t�}
|j|
�nGtk
rE}	td7d;j
|t|	��d!t�}
|j|
�nXtj|j��|d"<|j|�dS(<Nt
cpm_actiontchoicest
getplugconfigt
setplugconfigtrequiredtcpm_urlttypetstrtcpm_usernametcpm_passwordtno_logRRRtinttdefaultiiiiiiiiii	RRt	use_httpstbooltvalidate_certst	use_proxytchangedtdataRtdebugt
argument_spectsupports_check_modes{0}:{1}terrorstsurrogate_or_strictshttps://shttp://s"%s%s/api/v2/config/powerplugconfigtalls
%s?plug=%stGETtPOSTtmethodtheaderssapplication/jsonsContent-TypesBasic %st
Authorizationtmsgs!Received HTTP error for {0} : {1}sFailed lookup url for {0} : {1}s6Error validating the servers certificate for {0} : {1}s"Error connecting to  for {0} : {1}(tdicttTruetFalseRRt
check_modeR	tbase64t	b64encodeR
tformatRRtlowerR!RRt	fail_jsonR
RRtjsontloadstreadt	exit_json(tmodule_argstresulttmoduletauthtprotocoltPayloadtfullurlR=tresponseteRI((sX/usr/lib/python2.7/site-packages/ansible/modules/remote_management/cpm/cpm_plugconfig.pyt
run_module�sn?'		8	 	
	/''''cC`st�dS(N(RW(((sX/usr/lib/python2.7/site-packages/ansible/modules/remote_management/cpm/cpm_plugconfig.pytmainst__main__(t
__future__RRRR(t
__metaclass__tANSIBLE_METADATAt
DOCUMENTATIONtEXAMPLEStRETURNRERJtansible.module_utils.basicRtansible.module_utils._textR	R
Rt+ansible.module_utils.six.moves.urllib.errorRR
tansible.module_utils.urlsRRRR!RWRXt__name__(((sX/usr/lib/python2.7/site-packages/ansible/modules/remote_management/cpm/cpm_plugconfig.pyt<module>s&

H&		J	

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