可以在任务中使用ignore_errors关键字来实现此目的 演示实例: //查看playbook [root@localhost project]# cat playbook.yaml --- - hosts: all gather_facts: no tasks: - name: install httpd yum: name: packages //没有这个包 state: present ignore_errors: yes //可选{yes、no} - name: shoe some ...
-command: ls /sdadadsdad 这个文件是不存在的,如果正常执行playbook会出错并不会执行下面的task ignore_errors: yes 忽略错误 - command: echo 'hello' 继续执行此task TASK [command]*** fatal: [192.168.190.134]: FAILED! => {"changed": true, "cmd": ["ls", "/sdadadsdad"], "delta": "0:00:...
ignore_errors:yes//可选{yes、no} - name: shoe some massage debug: msg:"hello word" //执行play [root@localhost project]# ansible-playbook playbook.yaml PLAY [all] *** TASK [installhttpd] ***
除非这个任务设置了”ignore_errors: true”,在任务没有设置”ignore_errors: yes”的情况下,任务执行失败后,playbook就会自动终止,而fail模块天生就是一个用来”执行失败”的模块,当fail模块执行后,playbook就会认为有任务失败了,从而终止运行,实现我们想要的中断效果,fail模块默认的输出信息为’Failed as requested fro...
Task任务控制 任务控制包括以下逻辑关键字: 条件判断 when 循环语句 with_items 触发器 handlers 标签tags 包含include 忽略错误 ignore_error 错误处理 change 条件判断 假设我们安装Apache,在centos上安装的是httpd,在Ubuntu上安装的是httpd2,因此我们需要判断主机信息,安装不同的软件。
使用ignore_errors可以忽略错误,继续后续的任务 单任务忽略错误 --- - name: 单任务error处理演示剧本 hosts: all tasks: - name: 开启一个不存在的服务 service: name: noname state: started ignore_errors: yes - name: 创建一个文件 file: path: /tmp/service.txt ...
一个name只能包括一个task YAML文件扩展名通常为yml或yaml 基本规则: 大小写敏感 使用缩进表示层级关系 缩进时不允许使用Tab键,只允许使用空格。 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可 ymal支持的数据结构: 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary) ...
默认情况下,任务失败时play会中止。不过,可以通过忽略失败的任务来覆盖此行为。可以在任务中使用ignore_errors关键字来实现此目的。 [student@servera example]$ vim ignore_errors.yml --- - name: test hosts: servera remote_user: root gather_facts: no ...
ignore_errors: yes register: result - name: restart apache httpd based on postfix status service: name: httpd state: restarted when: result.rc == 0 tests 配合条件判断 通过条件语句判断tpath的路径是否存在 - hosts: dbsrvs vars: tpath: /ayunwSky ...
ignore_errors: "{{ ansible_check_mode }}" with_items: [ 1, 2 ] - debug: msg="Always reached" Execute with and results: ansible-playbook test_i.yml --check # ok=2, failed=0, but fail-task printed in red ansible-playbook test_i.yml ...