【发布时间】:2016-09-19 07:11:14
【问题描述】:
我正在尝试设置 Ansible + Test Kitchen 来测试 Sonatype Nexus 的 Galaxy 模块。为了做到这一点,我想要对geerlingguy.java 的依赖,并且我想通过传递一个数组java_packages: ['java-1.8.0-openjdk'] 来覆盖默认的Java 版本。
role dependencies 的文档声明:
角色依赖允许你自动拉入其他角色 使用角色。角色依赖存储在 meta/main.yml 文件中 包含在角色目录中。该文件应包含一个列表 要在指定角色之前插入的角色和参数,例如 以下示例中的角色/myapp/meta/main.yml
后面是如何传入标量数据的示例,但后面没有数组或哈希数据的示例。
我尝试了这两种方法:
---
dependencies:
- { role: geerlingguy.java,
java_packages: ['java-1.8.0-openjdk'] }
也都在一条线上:
---
dependencies:
- { role: geerlingguy.java, java_packages: ['java-1.8.0-openjdk'] }
在这种情况下,java_packages 似乎被忽略了,并使用了 Java 1.7.0 的默认值。
我也试过这个:
---
dependencies:
- { role: geerlingguy.java,
java_packages:
- java-1.8.0-openjdk }
这会导致发出语法错误。
是否可以像我在使用 Test Kitchen 时尝试做的那样传入数组数据?
【问题讨论】:
标签: ansible test-kitchen