Spec-Zone.ru › Chef 16

bash ресурс

[редактировать на GitHub]

Используйте bash ресурс проверки Chef InSpec, чтобы протестировать произвольный командный запрос, который выполняется на системе с помощью скрипта Bash.

Доступность

Установка

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

Версия

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

Синтаксис

Блок ресурса command объявляет команду для выполнения, одно (или несколько) ожидаемых результатов и местоположение, в которое отправляется этот результат:

describe bash('command') do
  it { should exist }
  its('property') { should eq 'expected value' }
end

где

  • 'command' должен указать команду для выполнения
  • 'property' — это один из exit_status, stderr, или stdout
  • 'expected value' проверяет вывод команды, запущенной на системе, по сравнению с ожидаемым выводом, указанным в тесте

Например:

describe bash('ls -al /') do
  its('stdout') { should match /bin/ }
  its('stderr') { should eq '' }
  its('exit_status') { should eq 0 }
end

Свойства

  • exit_status
  • stderr
  • stdout

Примеры свойств

exit_status

Свойство exit_status проверяет код возврата для команды:

its('exit_status') { should eq 0 }

stderr

Свойство stderr проверяет результаты команды, возвращаемые в стандартной ошибке (stderr):

its('stderr') { should eq '' }

stdout

Свойство stdout проверяет результаты команды, возвращаемые в стандартном выводе (stdout).

its('stdout') { should match /bin/ }

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

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

exist

Если указан абсолютный путь, сопоставитель exist проверяет, существует ли команда в файловой системе по указанному расположению. В противном случае, сопоставитель exist проверяет, найдена ли команда в переменной среды PATH.

it { should exist }

© 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/bash/

Spec-Zone.ru

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