变量和引号
在palybook中使用变量遇到了麻烦
这个报错让我摸不着头脑,参考 Chapter 4. Variables and Facts ,早期版本可以采用类似shell中使用$
表示变量,不过现在都使用{{ }}
。不过,参考章节2中的说明:
如果刚好在模块声明之后引用变量,YAML解析器会将这个变量引用误解为内联字典,此时必须使用引号将参数引起来
修改成
则能够正常引用变量package_1
。
不过,name: copy {{ package_1 }}
这个方法不正确,输出信息并没有正确替换变量,而是显示
但是,软件包example-package-release13.el5.x86_64.rpm
确实是正确复制到目标服务器的。
这个name
中不能是哟个变量的问题比较奇怪,参考 Variable substitution in task names: inventory变量是主机相关的,不是全局变量,所以在ansible中,不能在name
中使用变量。(The variable you are using is in inventory scope, so it can't be substituted.
)
Last updated