Ansible技术问询:如何隐藏已跳过的主机/任务及无Ansible安装主机访问权限时按剧本修改默认stdout回调插件
问题2:无需访问Ansible安装主机,针对单个剧本修改stdout回调插件
完全可以实现,以下几种方法都不需要修改远程主机的ansible.cfg,完美适配你的Jenkins执行场景:
环境变量方式(最通用):在Jenkins执行playbook的命令前加上环境变量,指定你需要的回调插件。比如要使用精简的
minimal输出:ANSIBLE_STDOUT_CALLBACK=minimal ansible-playbook your-playbook.yml常用的回调插件包括
default(默认)、yaml(结构化输出)、json(机器可读格式),根据你的需求选择即可。剧本内内置配置:如果希望剧本本身自带这个规则,直接在play的
vars中设置ansible_stdout_callback变量(要求Ansible 2.10及以上版本):--- - name: Your Playbook hosts: all vars: ansible_stdout_callback: yaml tasks: # 任务内容命令行传参方式:执行时通过
-e参数直接传递变量,效果和环境变量一致:ansible-playbook -e "ansible_stdout_callback=json" your-playbook.yml
这些方法都仅作用于当前执行的剧本,不会影响Ansible主机上的全局配置,完全适配你无法访问安装主机的限制。
内容的提问来源于stack exchange,提问作者O.K.
相关产品推荐
相关产品推荐

