yaml ресурс
Используйте 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/