Spec-Zone.ru › Chef 16

yaml ресурс

[править на GitHub]

Используйте yaml ресурс проверки Chef InSpec, чтобы протестировать данные конфигурации в файле Yaml.

Доступность

Установка

Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.

Версия

Этот ресурс стал доступен в версии v1.0.0 InSpec.

Синтаксис

Блок ресурса yaml объявляет данные конфигурации, которые необходимо проверить. Предположим следующий файл Yaml:

name: foo
array:
  - zero
  - one

Этот файл можно запросить, используя:

describe yaml('filename.yml') do
  its('name') { should eq 'foo' }
  its(['array', 1]) { should eq 'one' }
end

где

  • name — это параметр конфигурации в файле Yaml
  • should eq 'foo' проверяет значение name, как оно читается из файла Yaml, по сравнению со значением, объявленным в тесте

Как и ресурс json, ресурс yaml может читать файл, запускать команду или принимать содержимое встрокой:

describe yaml('config.yaml') do
  its(['driver', 'name']) { should eq 'vagrant' }
end

describe yaml({ command: 'retrieve_data.py --yaml' }) do
  its('state') { should eq 'open' }
end

describe yaml({ content: "\"key1: value1\nkey2: value2\"" }) do
  its('key2') { should cmp 'value2' }
end

Примеры

Следующие примеры показывают, как использовать этот ресурс проверки Chef InSpec.

Проверка драйвера файла kitchen.yml

describe yaml('.kitchen.yaml') do
  its(['driver','name']) { should eq('vagrant') }
end

Сопоставители

Полный список доступных сопоставителей можно найти на нашей странице сопоставителей.

name

Сопоставитель name проверяет значение name, как оно читается из файла Yaml, по сравнению со значением, объявленным в тесте:

its('name') { should eq 'foo' }

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/yaml/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API