Секция schemasBeta

Секция schemas в JSON-файле конфигурации сервиса описывает тарифные опции конкретного плана. Секция имеет следующую структуру:

"schemas": {            "service_instance": {              "create": {                "parameters": {                  "$schema": "http://json-schema.org/draft-04/schema#",                  "type": "object",                  "properties": {                  }                }              },              "update": {                "parameters": {                  "$schema": "http://json-schema.org/draft-04/schema#",                  "type": "object",                  "properties": {                  }                }              },              "resource_usages": {                "parameters": {                  "$schema": "http://json-schema.org/draft-04/schema#",                  "type": "object",                  "properties": {                  }                }              }            },            "service_binding": {              "create": {                "parameters": {                  "type": "object",                  "properties": {                  }                }              }            }          }

Здесь:

  • Секция service_instance описывает тарифные опции плана и определяет способ списания денежных средств для платных опций.

    • Секция service_instance.create описывает бесплатные и предоплатные тарифные опции, которые будут активными в мастере конфигурации тарифного плана при подключении сервиса.
    • Секция service_instance.update описывает бесплатные и предоплатные тарифные опции, которые будут активными в мастере конфигурации тарифного плана при обновлении тарифного плана сервиса.
    • Секция service_instance.resource_usages описывает постоплатные тарифные опции. Все опции из этой секции должны быть описаны в брокере.
  • Секция service_binding описывает создание сервисных привязок.

Все секции внутри schemas являются обязательными для объявления в JSON-файле. Секции могут быть пустыми.

Для SaaS-приложения поддерживаются все типы тарифных опций, кроме datasource. Параметры тарифных опций описываются JSON-схемами. Используются такие же параметры, как и параметры тарифных опций для image-based приложения. Примеры описания разных типов опций и их отображения в интерфейсе магазина для image-based приложения приведены в разделе Заполнение YAML-файлов тарифных опций.

Стоимость платных опций и шаг изменения для опции типа integer указываются в секции billing.

Требование к именам опций:

  • Если сбор метрик SaaS-приложения происходит по pull-модели, имя опции в JSON-файле должно совпадать co значением параметра kind, указанным в методе брокера для передачи отчета в Marketplace.
  • Если сбор метрик осуществляется по push-модели, имя опции в JSON-файле должно совпадать co значением параметра param в API-запросе на передачу метрик.

Примеры описания разных типов опций в формате JSON