??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
ó àUdac@`s²ddlmZmZmZeZdZddlZddlZddl Z ddl Z ddl m Z ddl mZddlmZddlmZdefd „ƒYZdS( i(tabsolute_importtdivisiontprint_functions! callback: mail type: notification short_description: Sends failure events via email description: - This callback will report failures via email version_added: '2.0' author: - Dag Wieers (@dagwieers) requirements: - whitelisting in configuration options: mta: description: Mail Transfer Agent, server that accepts SMTP env: - name: SMTPHOST ini: - section: callback_mail key: smtphost version_added: '2.5' default: localhost mtaport: description: Mail Transfer Agent Port, port at which server SMTP ini: - section: callback_mail key: smtpport version_added: '2.5' default: 25 to: description: Mail recipient ini: - section: callback_mail key: to version_added: '2.5' default: root sender: description: Mail sender ini: - section: callback_mail key: sender version_added: '2.5' cc: description: CC'd recipient ini: - section: callback_mail key: cc version_added: '2.5' bcc: description: BCC'd recipient ini: - section: callback_mail key: bcc version_added: '2.5' note: - "TODO: expand configuration options now that plugins can leverage Ansible's configuration" N(t string_types(tto_bytes(tAnsibleJSONEncoder(t CallbackBasetCallbackModulecB`sªeZdZdZdZdZeZdd„Z dddd„Z ddd„Z d„Z d d „Z d „Zd „Zd „Zed„Zd„Zd„Zd„ZRS(sB This Ansible callback plugin mails errors to interested parties. g@t notificationtmailcC`s_tt|ƒjd|ƒd|_d|_tjddƒ|_d|_ d|_ d|_ dS(NtdisplaytroottSMTPHOSTt localhosti( tsuperRt__init__tNonetsenderttotostgetenvtsmtphosttsmtpporttcctbcc(tselfR ((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyRTs    cC`s›tt|ƒjd|d|d|ƒ|jdƒ|_|jdƒ|_|jdƒ|_t|jdƒƒ|_|jdƒ|_ |jd ƒ|_ dS( Nt task_keyst var_optionstdirectRRtmtatmtaportRR( RRt set_optionst get_optionRRRtintRRR(RRRR((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyR]s%sAnsible error mailc C`sM|dkr|}ntj|jd|jƒ}t|jƒ}t|jƒ}t|jƒ}t|j ƒ}t|ƒ}t|ƒ} d|} | d|7} |jr¶| d|7} n| d|7} | | 7} |j dƒ} |jrü| |j dƒ7} n|j r| |j dƒ7} nx!| D]} |j || | ƒq"W|j ƒdS(Ntports From: %s sTo: %s sCc: %s s Subject: %s t,( RtsmtplibtSMTPRRRRRRRtsplittsendmailtquit( Rtsubjecttbodytsmtptb_sendertb_totb_cctb_bcct b_subjecttb_bodyt b_contentt b_addressest b_address((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyR hs.          cC`s!d||jdƒjƒ|fS(Ns%s: %ss (tstript splitlines(Rt multilinetfailtypetlinenr((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyt subject_msg‡sicC`s tjdd||dtjƒS(Nt^t tflags(tretsubt MULTILINE(RR7tindent((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyRAŠscC`sSd|}d}x+|jdƒjƒD]}|d|7}q&W||j|ƒdS(sK Turn some text output in a well-indented block for sending in a mail body swith the following %s: ts s%s s (R5R6RA(RR7ttexttypetintrotblobtline((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyt body_blobs  c C`s¸|jjƒ}|js(d||_n|jr=|j}n|jjdƒtkr^d}næ|jjdƒr|j|jd|dƒ}nµ|jjdƒrÀ|j|jd|dƒ}n„|jjdƒrñ|j|jd|dƒ}nS|jjd ƒr"|j|jd |dƒ}n"d ||j j p=|j j f}d t j j|jjƒ}|j j rƒ|d |j j 7}n|d |j j 7}|d|7}|d7}|d7}d|jkr||jd|j j tj|jddddƒfƒ7}nU|j j r@||jd|j j |j j fƒ7}n||jd|j j ƒ7}|d7}|jr€||j7}n{|jjdƒtkrÉ|d|jddj|j jƒƒd7}n2|jjdƒrû||j|jddƒ7}n|jjdƒr-||j|jddƒ7}n|jjdƒr_||j|jddƒ7}n|jjd ƒr‘||j|jd d ƒ7}n|jjdƒrøxRtt|jjdƒƒƒD]/}||j|jd|d |d!ƒ7}qÂWn|jjd"ƒr_xRtt|jjd"ƒƒƒD]/}||j|jd"|d |d!ƒ7}q)Wn|d#7}||jd |tj|jd$tddƒfƒ7}|jd%|d&|ƒdS('Ns"Ansible: %s" tfailed_when_results%Failed due to 'failed_when' conditiontmsgitstderriÿÿÿÿtstdoutt exceptions%s: %ss Playbook: %s s Task: %s s Module: %s s Host: %s s sThe following task failed: t invocations%s: %s t module_argsRAis%s (%s) s%s s!due to the following condition: sfailed_when: - s - s tmessagesstandard outputs error outputtwarningss exception %dit deprecationss#and a complete dump of the error: tclsR)R*(t_hosttget_nameRtitembodyt itemsubjectt_resulttgettTrueR:t_tasktnametactionRtpathtbasenametplaybookt _file_nameRAtjsontdumpstjoint failed_whenRGtrangetlenRR (RtresultR8thostR)R*ti((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyt mail_result•sd    "   @ ,  1    %0%0 5cC`s||_d|_dS(NRB(R_RU(RR_((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pytv2_playbook_on_start×s cC`s|r dS|j|dƒdS(NtFailed(Rj(RRgt ignore_errors((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pytv2_runner_on_failedÛscC`s|j|dƒdS(Nt Unreachable(Rj(RRg((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pytv2_runner_on_unreachableáscC`s|j|dƒdS(Ns Async failure(Rj(RRg((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pytv2_runner_on_async_failedäsc C`sN|jd|_|j|jtj|jdtddƒd|jƒ7_dS(NRIRRRAisfailed item dump '%(item)s'(RWRVRURGRaRbR(RRg((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pytv2_runner_item_on_failedçsN(t__name__t __module__t__doc__tCALLBACK_VERSIONt CALLBACK_TYPEt CALLBACK_NAMERYtCALLBACK_NEEDS_WHITELISTRRRR R:RARGRjRktFalseRnRpRqRr(((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyRMs"      B    (t __future__RRRttypet __metaclass__t DOCUMENTATIONRaRR>R$tansible.module_utils.sixRtansible.module_utils._textRtansible.parsing.ajsonRtansible.plugins.callbackRR(((sA/usr/lib/python2.7/site-packages/ansible/plugins/callback/mail.pyts9