Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/modules/network/f5/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyo

�
�Udac@`sSddlmZmZmZeZidd6dgd6dd6ZdZd	Zd
Z	ddl
mZddlm
Z
ytdd
lmZddlmZddlmZddlmZddlmZddlmZddlmZWn�ek
ridd
lmZddlmZddlmZddlmZddlmZddlmZddlmZnXdefd��YZdefd��YZdefd��YZdefd��YZdefd��YZ defd��YZ!d e"fd!��YZ#d"e"fd#��YZ$d$e"fd%��YZ%d&�Z&e'd'krOe&�nd(S()i(tabsolute_importtdivisiontprint_functions1.1tmetadata_versiontstableinterfacetstatust	certifiedtsupported_bysN
---
module: bigip_remote_syslog
short_description: Manipulate remote syslog settings on a BIG-IP
description:
  - Manipulate remote syslog settings on a BIG-IP.
version_added: 2.5
options:
  remote_host:
    description:
      - Specifies the IP address, or hostname, for the remote system to
        which the system sends log messages.
    type: str
    required: True
  name:
    description:
      - Specifies the name of the syslog object.
      - This option is required when multiple C(remote_host) with the same IP
        or hostname are present on the device.
      - If C(name) is not provided C(remote_host) is used by default.
    type: str
    version_added: 2.8
  remote_port:
    description:
      - Specifies the port that the system uses to send messages to the
        remote logging server.
      - When creating a remote syslog, if this parameter is not specified, the
        default value C(514) is used.
    type: str
  local_ip:
    description:
      - Specifies the local IP address of the system that is logging. To
        provide no local IP, specify the value C(none).
      - When creating a remote syslog, if this parameter is not specified, the
        default value C(none) is used.
    type: str
  state:
    description:
      - When C(present), guarantees that the remote syslog exists with the provided
        attributes.
      - When C(absent), removes the remote syslog from the system.
    type: str
    choices:
      - absent
      - present
    default: present
extends_documentation_fragment: f5
author:
  - Tim Rupp (@caphrim007)
  - Wojciech Wypior (@wojtek0806)
s�
- name: Add a remote syslog server to log to
  bigip_remote_syslog:
    remote_host: 10.10.10.10
    provider:
      password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost

- name: Add a remote syslog server on a non-standard port to log to
  bigip_remote_syslog:
    remote_host: 10.10.10.10
    remote_port: 1234
    provider:
      password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost
s�
remote_port:
  description: New remote port of the remote syslog server.
  returned: changed
  type: int
  sample: 514
local_ip:
  description: The new local IP of the remote syslog server
  returned: changed
  type: str
  sample: 10.10.10.10
(t
AnsibleModule(t	iteritems(tF5RestClient(t
F5ModuleError(tAnsibleF5Parameters(tf5_argument_spec(tis_valid_hostname(tfq_name(tis_valid_ipt
ParameterscB`s_eZidd6dd6dd6ZddddgZdddddgZdddddgZRS(tremote_portt
remotePorttlocal_iptlocalIptremote_hostthosttnamet
remoteServers(t__name__t
__module__tapi_mapt
updatablestreturnablestapi_attributes(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyRzs$
		t
ApiParameterscB`seZRS((RR(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR �stModuleParameterscB`sDeZed��Zed��Zed��Zed��ZRS(cC`sRt|jd�r|jdSt|jd�rBt|jd�Std��dS(NRs8The provided 'remote_host' is not a valid IP or hostname(Rt_valuesRtstrR(tself((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR�scC`sJ|jddkrdS|jddkr9td��nt|jd�S(NRtnoneis0The 'remote_port' value must between 1 and 65535(NR%(R"tNoneRtint(R$((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR�scC`sE|jddkrdSt|jd�r5|jdStd��dS(NRR%s1The provided 'local_ip' is not a valid IP address(Nsnone(R"R&RR(R$((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR�scC`sK|jddkrdS|jddkr.dSt|j|jd�}|S(NRR(R"R&Rt	partition(R$R((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR�s(RRtpropertyRRRR(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR!�s

tChangescB`seZd�ZRS(cC`s}i}y_xI|jD]>}t||�}t|t�rG|j|�q|||<qW|j|�}Wntk
rxnX|S(N(Rtgetattrt
isinstancetdicttupdatet_filter_paramst	Exception(R$tresultt
returnabletchange((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt	to_return�s
(RRR4(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR*�st
UsableChangescB`seZRS((RR(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR5�stReportableChangescB`s&eZed��Zed��ZRS(cC`s(|jddkrdSt|jd�S(NR(R"R&R'(R$((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR�scC`sdS(N((R$((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR�s(RRR)RR(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR6�st
DifferencecB`s&eZdd�Zd�Zd�ZRS(cC`s(||_||_d|_d|_dS(N(twantthaveR&t	_local_ipt_remote_port(R$R8R9((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt__init__�s			cC`s9yt||�}|SWntk
r4|j|�SXdS(N(R+tAttributeErrort_Difference__default(R$tparamR1((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pytcompare�s

cC`sQt|j|�}y&t|j|�}||kr7|SWntk
rL|SXdS(N(R+R8R9R=(R$R?tattr1tattr2((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt	__default�s
N(RRR&R<R@R>(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR7�s	t
ModuleManagercB`sbeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�ZRS(
cO`sj|jdd�|_t|jj�|_td|jj�|_t�|_	t
�|_t�|_
dS(Ntmoduletparams(tpopR&RER
RFtclientR!R8R R9R5tchangesR-tsyslogs(R$targstkwargs((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR<scC`sH|jdg�}x/|D]'}|jjd|dd|d�qWdS(Nt
__warningstmsgtversion(RGREt	deprecate(R$R1twarningstwarning((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt_announce_deprecations
s


cC`s�t|j|j�}tj}t�}xX|D]P}|j|�}|dkrUq.q.t|t�rt|j	|�q.|||<q.W|r�t
d|�|_tSt
S(NRF(R7R8R9RRR-R@R&R,R.R5RItTruetFalse(R$tdiffRtchangedtkR3((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt_update_changed_optionss		
cC`s�d}xi|D]a}td|�}||j|j<|j|jjkrP|}q
|j|jjkr
|}q
q
W|st�S|S(NRF(R&R RJRR8R(R$RJR1txtsyslog((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pytformat_syslogs's
	
cC`smt�}|j�}td|jj��}|j�}|j|�|jtd|��|j|�|S(NRFRW(R-tpresentR6RIR4R.RS(R$R1RWt
reportableRI((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pytexec_module6s	

cC`s
|j�S(N(R.(R$((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR]BscC`s|j�}|rtStS(N(RYRTRU(R$R1((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt
should_updateEscC`s?|j|j��|_|j�r;|jjdkr;tS|jjrKt	S|jj
dkr|jji|jj
d6�gt|j�D]\}}|^q�}g|D]"}|d|jj
kr�|^q�}t|�dkrtdj|jj
���qn|jjdkr2|jj
|jkr2tSnt|jj��}|jj
|jkry|j|jj
j|�n||j|jj
<|j|jj
ji|jj
d6�|jjdkr�|j|jj
=ngt|j�D]\}}|^q�}tdtd|��|_|jj|jj�|j�t	S(NtabsentRRisOMultiple occurrences of hostname: {0} detected, please specify 'name' parameterRFR(R\tread_current_from_deviceR9R`R8tstateRUREt
check_modeRTRR&R.RR	RJtlenRtformatR-RIt
api_paramsR*R"tupdate_on_device(R$RXtvRJRZtdupesRIR1((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR.Ks6(/'	(
cC`s�|jj�}td|jd��}dj|jjd|jjd�}|jjj|d|�}y|j	�}Wn%t
k
r�}tt|���nXd|kr�|dd
kr�d	|kr�t|d	��q�t|j
��ndS(NRs#https://{0}:{1}/mgmt/tm/sys/syslog/tservertserver_porttjsontcodei�i�tmessage(i�i�(RIRgR-tgetRfRHtprovidertapitpatchRmt
ValueErrorRR#tcontent(R$RFturitresptresponsetex((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyRh�s
cC`s�dj|jjd|jjd�}|jjj|�}y|j�}Wn%tk
rr}tt|���nXd|kr�|ddkr�d|kr�t|d��q�t|j	��n|jdg�}|S(Ns#https://{0}:{1}/mgmt/tm/sys/syslog/RkRlRni�RoR(
RfRHRqRrRpRmRtRR#Ru(R$RvRwRxRyR1((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyRb�s
(RRR<RSRYR\R_R]R`R.RhRb(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyRD�s	
							:	tArgumentSpeccB`seZd�ZRS(cC`s�t|_tdtdt�dt�dt�dt�dtddd	d
dg��}i|_|jjt�|jj|�dS(NRtrequiredRRRRctdefaultR]tchoicesRa(RTtsupports_check_modeR-t
argument_specR.R
(R$R((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyR<�s						(RRR<(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyRz�scC`s�t�}td|jd|j�}y,td|�}|j�}|j|�Wn)tk
r{}|jdt	|��nXdS(NRR~RERN(
RzRRR~RDR_t	exit_jsonRt	fail_jsonR#(tspecREtmmtresultsRy((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pytmain�s		t__main__N((t
__future__RRRttypet
__metaclass__tANSIBLE_METADATAt
DOCUMENTATIONtEXAMPLEStRETURNtansible.module_utils.basicRtansible.module_utils.sixR	t%library.module_utils.network.f5.bigipR
t&library.module_utils.network.f5.commonRRR
RRt)library.module_utils.network.f5.ipaddressRtImportErrort%ansible.module_utils.network.f5.bigipt&ansible.module_utils.network.f5.commont)ansible.module_utils.network.f5.ipaddressRR R!R*R5R6tobjectR7RDRzR�R(((sR/usr/lib/python2.7/site-packages/ansible/modules/network/f5/bigip_remote_syslog.pyt<module>sJ


4

*�	

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