首页 » ansible实战 » 正文

解决ansible dry run 报错 undefined variable

我们现在很多时候在真正执行我们的playbook 之前,都希望dry run一下,确定一下playbook 将要进行的修改是否会引发Outage

但是由于是dry run, 如果有一些task 需要使用到前边task register的变量,那么因为是dry run, 前边的task 没有执行,没有成功的注册变量,导致dry run的时候失败,但是在真正执行playbook时则会成功

例如:

注意:在ansible 2.9已经规避了这个问题,也就说新版本不会报错,但是旧版本就不可以了,例如2.8

如果我们想在dry 模式下跳过一下命令,我们需要在需要跳过的task下假如:

这样的话我们task 仅仅会在正常模式的情况下才会执行

 

Zhiming Zhang

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

Latest posts by Zhiming Zhang (see all)

本文共 2 个回复

  • 123 2020/06/01 15:57

    我这边也遇到了同样的问题,但是我安装了ansible 2.9.0,并没有解决这个问题

Comments are closed.