Spec-Zone.ru › Chef 16

Ресурс azurerm_mysql_database

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

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

Версия Azure REST API

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

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

Доступность

Установка

Этот ресурс доступен в 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 может не всегда возвращать ключи, для которых нет связанных данных. Возможно, вложенное свойство по вашей цепочке вызовов не будет иметь нужный атрибут. Если вы обнаруживаете, что пишете тесты для свойств, которые могут быть равны null, разветвите этот пакет ресурсов и добавьте обработчик для ресурса. В этом обработчике вы сможете защититься от пустых ключей. Запросы на вытягивание всегда приветствуются.

Матчеры

Этот ресурс аудита 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