�
�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
Z
d d l Z d d l m
Z
d d
l m Z m Z m Z d d l m Z m Z d d l m Z m Z m 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_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( t to_textt to_bytest to_native( t HTTPErrort URLError( t open_urlt ConnectionErrort SSLValidationErrorc C` sa d } | j d j d � } x| D]} t | � d k rD d } n
d | } d | t | � f } | j d d k r� d | t | j d � f } n | j d
d k r� d | t | j d
� f } n | j d d k r� d
| t | j d � f } n | j d d k r0d | t | j d � f } n d | } q# Wt | � d k r]d | } n | S( Nt t plug_idt ,i s {"plugs": [s %s,s %s{"plug": "%s"t plug_names %s,"plugname": "%s"t plug_bootdelays %s,"bootdelay": "%s"t plug_defaults %s,"default": "%s"t plug_bootprioritys %s,"bootpriority": "%s"s %s}s %s]}( t paramst splitt lenR t None( t cpmmodulet cpmresultt json_loadt plugspassedt val( ( sX /usr/lib/python2.7/site-packages/ansible/modules/remote_management/cpm/cpm_plugconfig.pyt
assemble_json� s&