我想用
搜索主机名searchnode = search(:node, "zookeeper:true")
想要输出Hostname.fqdn.com
作为节点,但我没有得到它。也许我不知道如何访问该属性。
---
driver:
name: vagrant
provisioner:
name: chef_zero
environments_path: test/integration/default/environments
client_rb:
environment: stg
always_update_cookbooks: true
verifier:
name: inspec
platforms:
- name: centos-7.2
suites:
- name: Hostname.fqdn.com
run_list:
- recipe[test-cookbook::test]
data_bags_path: "test/integration/default/data_bags"
attributes: {zookeeper: "true"}
答案 0 :(得分:3)
您的.kitchen.yml
无效,因为忽略了顶级attributes
部分。你应该将它移到suite
的元素下面(缩进与YAML有关!):
suites:
- name: Hostname.fqdn.com
run_list:
- recipe[test-cookbook::test]
data_bags_path: "test/integration/default/data_bags"
attributes: {zookeeper: "true"}
然后,您的search
应找到此节点。您可以使用kitchen diagnose
查看结果属性。
如果要模拟测试厨房中的其他节点,可以将包含节点定义的JSON文件放在test/integration/nodes
中(在this cookbook中使用;可以通过node_path
配置) 。然后,您可以使用搜索来发现"其他节点基于其属性或运行列表。