Ansible 開發(fā)插件之【Callback】

callback 是經(jīng)常用到的插件麸拄,而且還是自定義很強(qiáng)的实柠,在任務(wù)的每個(gè)狀態(tài)下執(zhí)行某些動(dòng)作橱脸。

觸發(fā)事件的列表


可以定義的狀態(tài)如下抒和,本次不考慮使用v1的方法
def v2_on_any(self, *args, **kwargs):
def v2_runner_on_failed(self, result, ignore_errors=False): 任務(wù)失敗的時(shí)候
def v2_runner_on_ok(self, result): 任務(wù)成功的時(shí)候
def v2_runner_on_skipped(self, result): 任務(wù)跳過的時(shí)候
def v2_runner_on_unreachable(self, result):
def v2_runner_on_no_hosts(self, task):
def v2_runner_on_async_poll(self, result):
def v2_runner_on_async_ok(self, result):
def v2_runner_on_async_failed(self, result):
def v2_runner_on_file_diff(self, result, diff):
def v2_playbook_on_start(self, playbook):
def v2_playbook_on_notify(self, result, handler):
def v2_playbook_on_no_hosts_matched(self):
def v2_playbook_on_no_hosts_remaining(self):
def v2_playbook_on_task_start(self, task, is_conditional):
def v2_playbook_on_cleanup_task_start(self, task):
def v2_playbook_on_handler_task_start(self, task):
def v2_playbook_on_vars_prompt(self, varname, private=True, prompt=None, encrypt=None, confirm=False, salt_size=None, salt=None, default=None):
def v2_playbook_on_setup(self): playbook 在執(zhí)行setup操作的時(shí)候執(zhí)行
def v2_playbook_on_import_for_host(self, result, imported_file):
def v2_playbook_on_not_import_for_host(self, result, missing_file):
def v2_playbook_on_play_start(self, play):
def v2_playbook_on_stats(self, stats):
def v2_on_file_diff(self, result):
def v2_playbook_on_include(self, included_file):
def v2_runner_item_on_ok(self, result):
def v2_runner_item_on_failed(self, result):
def v2_runner_item_on_skipped(self, result):
def v2_runner_retry(self, result):

方法的result值


print(result._task) 輸出任務(wù)名
print(result._check_key)
print(result._host) 輸出主機(jī)名
print(result._result) 輸出任務(wù)執(zhí)行的結(jié)果
print(result.is_changed)
print(result.is_failed)

callback class都是繼承ansible.plugins.callback.CallbackBase類,而作為一個(gè)新類存在的汗菜。


from ansible.plugins.callback import CallbackBase

class CallbackModule(CallbackBase):
    pass

定義callback說明信息


CALLBACK_VERSION = 2.0 插件版本
CALLBACK_TYPE = 'aggregate' 插件類型让禀,如果是'stdout'時(shí),只會(huì)加載一個(gè)這樣的回調(diào)插件
CALLBACK_NAME = 'timer' 插件名稱陨界,需與文件名稱一致巡揍。
CALLBACK_NEEDS_WHITELIST = True 插件是否需要在配置文件配置whitelist。為true是菌瘪,ansible檢查ansible.cfg文件中的callback_whitelist是否有插件名稱腮敌,有則執(zhí)行,無(wú)則跳過俏扩。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末糜工,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子录淡,更是在濱河造成了極大的恐慌捌木,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,919評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件嫉戚,死亡現(xiàn)場(chǎng)離奇詭異刨裆,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)彬檀,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門帆啃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人窍帝,你說我怎么就攤上這事努潘。” “怎么了?”我有些...
    開封第一講書人閱讀 163,316評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵慈俯,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我拥峦,道長(zhǎng)贴膘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,294評(píng)論 1 292
  • 正文 為了忘掉前任略号,我火速辦了婚禮刑峡,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘玄柠。我一直安慰自己突梦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,318評(píng)論 6 390
  • 文/花漫 我一把揭開白布羽利。 她就那樣靜靜地躺著宫患,像睡著了一般。 火紅的嫁衣襯著肌膚如雪这弧。 梳的紋絲不亂的頭發(fā)上娃闲,一...
    開封第一講書人閱讀 51,245評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音匾浪,去河邊找鬼皇帮。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蛋辈,可吹牛的內(nèi)容都是我干的属拾。 我是一名探鬼主播,決...
    沈念sama閱讀 40,120評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼冷溶,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼渐白!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起挂洛,我...
    開封第一講書人閱讀 38,964評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤礼预,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后虏劲,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體托酸,經(jīng)...
    沈念sama閱讀 45,376評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,592評(píng)論 2 333
  • 正文 我和宋清朗相戀三年柒巫,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了励堡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,764評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡堡掏,死狀恐怖应结,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤鹅龄,帶...
    沈念sama閱讀 35,460評(píng)論 5 344
  • 正文 年R本政府宣布揩慕,位于F島的核電站,受9級(jí)特大地震影響扮休,放射性物質(zhì)發(fā)生泄漏迎卤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,070評(píng)論 3 327
  • 文/蒙蒙 一玷坠、第九天 我趴在偏房一處隱蔽的房頂上張望蜗搔。 院中可真熱鬧,春花似錦八堡、人聲如沸樟凄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)缝龄。三九已至,卻和暖如春溶耘,著一層夾襖步出監(jiān)牢的瞬間二拐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工凳兵, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留百新,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,819評(píng)論 2 370
  • 正文 我出身青樓庐扫,卻偏偏與公主長(zhǎng)得像饭望,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子形庭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,665評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理铅辞,服務(wù)發(fā)現(xiàn),斷路器萨醒,智...
    卡卡羅2017閱讀 134,654評(píng)論 18 139
  • ?王越:VMware存儲(chǔ)API整理斟珊,比如核心的存儲(chǔ)池與卷兩者的CURD「恢剑可以參考:VMware in OpenSt...
    笨手笨腳越閱讀 5,656評(píng)論 0 2
  • 術(shù)后84天囤踩,滿12周,今天一起訓(xùn)練的還有李傲晓褪。 今天又有新突破啦堵漱。 1.上午鄒哥帶我訓(xùn)練了下樓梯,獲得了鄒哥和浩天...
    慕洋閱讀 176評(píng)論 0 0
  • 我們有個(gè)雙城記 倫敦和巴黎的浪漫 怎抵過兩城的相惜 ...
    迷小希閱讀 230評(píng)論 0 3
  • 最近想離開一個(gè)地方換到新的一個(gè)地方涣仿,開始新的生活勤庐。給身邊最理智關(guān)系最好的盆友說了之后示惊,我們就聊了半晚上。各自說到了...
    拉西西菲閱讀 193評(píng)論 0 0