Spec-Zone.ru › Chef 17

Интерфейс ресурса

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

Используйте ресурс проверки Chef InSpec, чтобы протестировать основные свойства сетевого адаптера, такие как имя, статус, IP-адреса и скорость соединения (в Мбит/с).

  • В Linux платформах, используется /sys/class/net/#{iface} в качестве источника
  • В Windows платформах, используется Get-NetAdapter cmdlet в качестве источника
  • В BSD и MacOS платформах, используется ifconfig команда в качестве источника. Скорость соединения может отсутствовать.

Доступность

Установка

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

Версия

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

Синтаксис

Блок ресурса interface объявляет свойства сетевого интерфейса, которые нужно проверить:

describe interface('eth0') do
  it { should be_up }
  its('speed') { should eq 1000 }
  its('name') { should eq eth0 }
  its('ipv4_addresses') { should include '10.0.0.5' }
end

Свойства

ipv4_address

Возвращает первый ipv4_addresses элемент в виде строки. Примечание: это свойство несовместимо с ServerSpec, который возвращает значение, включающее диапазон CIDR, например «10.0.0.5/32».

its('ipv4_address') { should eq '10.0.0.5' }

ipv4_addresses

Свойство ipv4_addresses возвращает массив IP-адресов IPv4 в виде строк. Вы можете проверить, существует ли указанный адрес в указанном сетевом интерфейсе:

its('ipv4_addresses') { should include '127.0.0.1' }

ipv4_addresses_netmask

Свойство ipv4_addresses_netmask возвращает массив строк, каждая из которых содержит IP-адрес IPv4, слеш и маску сети. Вы можете проверить, существует ли указанный адрес и маска сети в указанном сетевом интерфейсе:

its('ipv4_addresses_netmask') { should include '127.0.0.1/255.0.0.0' }

ipv6_address

Возвращает первый ipv6_address элемент. Примечание: это свойство несовместимо с ServerSpec, который возвращает значение, включающее диапазон CIDR.

its('ipv6_address') { should eq '2089:98b::faeb' }

ipv6_addresses

Свойство ipv6_addresses возвращает массив строк и проверяет, существует ли указанный адрес в указанном сетевом интерфейсе:

its('ipv6_addresses') { should include '::1' }

ipv4_cidrs

Свойство ipv4_cidrs возвращает массив строк и проверяет, существует ли указанная комбинация адреса и маски сети в указанном сетевом интерфейсе:

its('ipv4_cidrs') { should include '127.0.0.1/8' }

ipv6_cidrs

Свойство ipv6_cidrs возвращает массив строк и проверяет, существует ли указанная комбинация адреса и маски сети в указанном сетевом интерфейсе:

its('ipv6_cidrs') { should include '::1/128' }

name

Свойство name возвращает имя интерфейса:

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

speed

Свойство speed проверяет скорость сетевого интерфейса в Мбит/с. Примечание: в BSD и MacOS платформах это значение может быть nil, потому что его трудно получить надежно.

its('speed') { should eq 1000 }

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

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

be_up

Сопоставитель be_up проверяет, доступен ли сетевой интерфейс:

it { should be_up }

exist

Сопоставитель exist проверяет, существует ли сетевой интерфейс:

it { should exist }

have_an_ipv4_address

Сопоставитель have_an_ipv4_address проверяет, назначены ли сетевому интерфейсу какие-либо IP-адреса IPv4:

it { should have_an_ipv4_address }

have_an_ipv6_address

Сопоставитель have_an_ipv6_address проверяет, назначены ли сетевому интерфейсу какие-либо IP-адреса IPv6:

it { should have_an_ipv6_address }

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

Spec-Zone.ru

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