Spec-Zone.ru › Chef 18

azurerm_mysql_database ресурс

[изменить на GitHub]

Используйте azurerm_mysql_database ресурс аудита InSpec для проверки свойств и конфигурации базы данных Azure MySQL на сервере MySQL.

Версия Azure REST API

Этот ресурс взаимодействует с версией 2017-12-01 API управления Azure. Дополнительную информацию см. в официальной документации Azure.

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

Доступность

Установка

Этот ресурс доступен в inspec-azure пакете ресурсов. Для использования добавьте следующее в свой inspec.yml в вашем профиле верхнего уровня:

depends:
  inspec-azure:
    git: https://github.com/inspec/inspec-azure.git

Вам также потребуется настроить свои учетные данные Azure; см. README пакета ресурсов.

Версия

Этот ресурс впервые стал доступен в версии 1.6.0 пакета ресурсов inspec-azure.

Синтаксис

resource_group, server_name и database_name должны быть заданы как параметр.

describe azurerm_mysql_database(resource_group: 'inspec-rg', server_name: 'customer_server', database_name: 'order-db') do
  it { should exist }
end

Примеры

Если база данных MySQL ссылается с действительным Resource Group, Server Name и Database name.

describe azurerm_mysql_database(resource_group: 'inspec-rg', server_name: 'customer_server', database_name: 'order-db') do
  it            { should exist }
  its('name')   { should be 'order-db' }
end

Если база данных MySQL ссылается с недействительным Resource Group, Server Name или Database Name.

describe azurerm_mysql_database(resource_group: 'inspec-rg', server_name: 'customer_server', database_name: 'invalid-db-name') do
  it { should_not exist }
end

Параметры

  • resource_group - Группа ресурсов, к которой принадлежит сервер MySQL.
  • server_name - Уникальное имя сервера MySQL.
  • database_name - Уникальное имя базы данных MySQL.

Атрибуты

  • id
  • name
  • type
  • properties

id

Идентификатор ресурса Azure.

name

Имя SQL-сервера, например customer-database.

type

Тип ресурса, обычно Microsoft.DBforMySQL/servers/databases.

properties

Коллекция дополнительных свойств конфигурации, относящихся к базе данных MySQL, например collation.

Другие атрибуты

Существуют дополнительные атрибуты, к которым можно получить доступ, но которые не задокументированы. Пожалуйста, ознакомьтесь с документацией Azure. Любой атрибут в ответе можно получить с использованием имен ключей, разделенных точками (.).

API может не всегда возвращать ключи, не имеющие связанных данных. В некоторых случаях вложенное свойство может не иметь нужного атрибута по всей цепочке вызова. Если вы обнаруживаете, что пишете тесты против свойств, которые могут быть nil, создайте форк этого пакета ресурсов и добавьте обработчик доступа к ресурсу. В этом обработчике вы сможете защититься от ключей nil. Запросы на включение всегда приветствуются.

Матчеры

Этот ресурс аудита InSpec имеет следующие специальные матчеры. Полный список доступных матчеров можно найти на нашей странице Универсальных Матчеров.

exists

describe azurerm_mysql_database(resource_group: 'my-rg', server_name: 'server-name-1', database_name: 'customer-db') do
  it { should exist }
end

Разрешения Azure

Ваш принципал службы должен быть настроен с ролью contributor на подписке, которую вы хотите протестировать.

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

Spec-Zone.ru

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