首页 » python » 正文

如何创建自己的ansible filter

ansible提供给我们了很多常用的fitler,官方文档地址:

http://docs.ansible.com/ansible/latest/playbooks_filters.html

例子:

但是有些时候,我们可能需要比较特殊的fitler, 来帮我们处理数据以达到我们的标准,如何创建自己的fitler呢,其实,和module类似,肯定是要线准备一个python函数

非常简单的函数a_filter,你传递进去一个变量,函数会在后边追加“CRAZY NEW FILETER”(filter class的格式大家记住就好了),存放的路经呢?在你的playbook同级目录创建文件夹filter_plugins,然后将自己的python文件放入即可

然后我们创建一个测试用的playbook

运行结果:

完美

再看一个复杂点的例子(多参数)

对于新的b_fileter,我们使用了多个参数变量(a_variable是输入的需要处理的数据,剩下的按照顺序进行区分)

运行结果:

 

 

 

 

 

原文地址:http://www.dasblinkenlichten.com/creating-ansible-filter-plugins/

Zhiming Zhang

Senior devops at Appannie
一个奔跑在运维路上的胖子
Zhiming Zhang

Latest posts by Zhiming Zhang (see all)