Spec-Zone.ru › Chef 18

Ресурс azurerm_postgresql_database

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

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

Версия Azure REST API

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

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

Доступность

Установка

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

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

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

Версия

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

Синтаксис

Необходимо указать resource_group, server_name и database_name в качестве параметра.

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

Примеры

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

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

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

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

Параметры

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

Атрибуты

  • id
  • name
  • type
  • properties

id

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

name

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

type

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

properties

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

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

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

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

Матчеры

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

exists

describe azurerm_postgresql_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_postgresql_database/

Spec-Zone.ru

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