我有一套看起来像的剧本
- name: Run test
hosts: tester
roles:
- { role: setup_repos }
- { role: setup_environment }
- { role: install_packages }
- { role: run_tests }
- { role: collect_logs }
当前的问题是,我们拥有的前 4 个角色ignore_errors: true
都不是一个好的做法,因为它很难读取输出和调试。
被滥用的唯一原因ignore_errors
是我们希望能够在最后执行 collect_logs,而不管结果如何。
我们如何重构它以删除 ignore_errors 并拥有更多的快速失败策略。
请注意,我们有很多调用 collect_logs 角色的剧本,因此“在剧本中移动代码”并不是真正重用它的方法。