Chef infra 如何在依赖于标签的测试厨房中测试烹饪书?

Chef infra 如何在依赖于标签的测试厨房中测试烹饪书?,chef-infra,chef-recipe,test-kitchen,Chef Infra,Chef Recipe,Test Kitchen,我有一本取决于标签的食谱。它搜索具有给定标记的节点,并使用搜索(:node,'tag:MyTag')获取它们的名称和IP。我如何在测试厨房里模拟这个 是否有可以使用的模拟节点对象?它不必与其他节点通信,我只想测试search()是否成功地提取了正确的信息。使用serverspec时,chef zero将使用目录test/integration/作为默认的repo位置。在这里,您可以放置一些节点文件来模拟连接到同一chef服务器的其他节点 ├── Berksfile ├── chefignore

我有一本取决于标签的食谱。它搜索具有给定标记的节点,并使用
搜索(:node,'tag:MyTag')
获取它们的名称和IP。我如何在测试厨房里模拟这个


是否有可以使用的模拟节点对象?它不必与其他节点通信,我只想测试
search()
是否成功地提取了正确的信息。

使用serverspec时,chef zero将使用目录
test/integration/
作为默认的repo位置。在这里,您可以放置一些节点文件来模拟连接到同一chef服务器的其他节点

├── Berksfile
├── chefignore
├── metadata.rb
├── README.md
├── recipes
│   └── default.rb
└── test
    └── integration
        ├── default
        │   └── serverspec
        │       └── default_spec.rb
        ├── helpers
        │   └── serverspec
        │       └── spec_helper.rb
        └── nodes
            ├── demo1.json
            └── demo2.json
demo1.json demo2.json
使现代化 我有一本食谱,用这种技术测试詹金斯的主人和奴隶


使用serverspec时,chef zero将使用目录
test/integration/
作为默认回购位置。在这里,您可以放置一些节点文件来模拟连接到同一chef服务器的其他节点

├── Berksfile
├── chefignore
├── metadata.rb
├── README.md
├── recipes
│   └── default.rb
└── test
    └── integration
        ├── default
        │   └── serverspec
        │       └── default_spec.rb
        ├── helpers
        │   └── serverspec
        │       └── spec_helper.rb
        └── nodes
            ├── demo1.json
            └── demo2.json
demo1.json demo2.json
使现代化 我有一本食谱,用这种技术测试詹金斯的主人和奴隶


或者,您可以编辑节点的test kitchen.yml文件的suite部分。“属性”部分管理普通属性,这些属性是存储标记的位置:

- name: sand01
provisioner:
  name: chef_zero
attributes:
  tags:
    - MyTag

或者,您可以为节点编辑test kitchen.yml文件的suite部分。“属性”部分管理普通属性,这些属性是存储标记的位置:

- name: sand01
provisioner:
  name: chef_zero
attributes:
  tags:
    - MyTag

这不是特定于serverspec的,并且将同时适用于zero和solo Provisioniers。这不是特定于serverspec的,并且将同时适用于zero和solo Provisioniers。