У каждого определения политики для этапа жизненного цикла есть сценарий проверки, предназначенный для оценки состояния соответствия требованиям развертывания. Application Services вызывает сценарий проверки политик перед выполнением операций с развертыванием (кроме процесса демонтажа) или тогда, когда пользователь явно инициирует проверку политики развертывания.

Сценарий проверки включает в себя модель развертывания, как указано в спецификации REST API Application Services. Сценарий проверки также получает дополнительные компоненты, используемые в схеме элементов развертывания.

Чтобы включить политики, необходимо создать экземпляры политик в определенных средах развертывания. Если в процессе развертывания происходит нарушение политики, такое событие отмечается, а пользователь может просмотреть сведения о нарушении на странице сводки в представлении соответствия требованиям.

Примечание: Java Script является единственным поддерживаемым языком для создания сценариев определения политики.

Свойства политики, указанные в ее определении, предоставляются для сценария в качестве отдельных переменных. Сценарий может получать к ним доступ, объявляя переменную с таким же именем, как и имя свойства.

Входная переменная сценария Описание
var min_cpu_count Соответствует свойству min_cpu_count, а для сценария устанавливается значение «consume».
eventPayload

Включает в себя сведения о развертывании, оцененном на предмет соответствия требованиям политики.

Переменную eventPayload необходимо добавить к обычным свойствам для доступа к объекту eventPayload.

Сценарий политики может рассматривать переменную eventPayload как объект Java со следующими свойствами.
deploymentProfile типа DeploymentProfile, как определено в V2 API
Представляет профиль развертывания, фиксирующий последние сведения развертывания. В случае обновлений сюда входят все изменения, являющиеся частью профиля обновления.
blueprint типа Blueprint как определено в V2 API
Представляет фактический объект схемы элементов, на который ссылается свойство deploymentProfile.
logicalTemplates типа List LogicalTemplate, где LogicalTemplate определяется в V2 API
Представляет список логических шаблонов, на которые ссылаются различные узлы в схеме элементов приложения.
serviceVersions типа List ServiceVersion, где ServiceVersion определяется в V2 API
Представляет список ссылок версий службы от различных узлов в схеме элементов приложения.

Сценарии политики должны выдавать следующие свойства для передачи результата оценки соответствия требованиям. Сценарии должны объявлять их в качестве переменных.

Выходная переменная сценария Описание
complianceResult

Тип «строка» является обязательным. Если сценарию не удается задать строку, результат соответствия требованиям имеет значение Error.

Допустимые значения переменной:

Compliant
Означает, что развертывание соответствует требованиям оцениваемой политики.
Non_Compliant
Означает, что развертывание нарушает требования оцениваемой политики.
Error
Означает невозможность показать результат оценки.
complianceMessage

Тип «строка».

Это дополнительное значение содержит общее описание причины нарушения политики. Значением может быть любая строка, длина которой не превышает 2 048 символов.

Сценарии могут создавать сообщения журналов со стандартной функцией println доступной в Java Script. Журнал создается решением Application Services, что полезно для диагностики ошибок в сценариях политик или для предоставления сведений для результатов оценки политики.

Необходимые условия

  • Войдите в службу Application Services в качестве администратора приложений в облаке и с правами напубликацию и развертывание приложений.
  • Убедитесь, что в библиотеке создана по крайней мере одна политика. См. Добавление политики в библиотеку.

Процедура

  1. В строке заголовка Application Services щелкните раскрывающееся меню и выберите Библиотека > Политики.
  2. Откройте политику, чтобы добавить сценарий определения политики.
  3. В столбце «Сценарий» щелкните гиперссылку, чтобы открыть диалоговое окно «Изменение сценария».
    Для справки можно использовать существующие предварительно заданные определения политики и создать сценарий в диалоговом окне.
  4. Нажмите кнопку ОК.

Дальнейшие действия

Указание определения политики не влияет на развертывания, пока в среде развертывания не будет создан экземпляр политики, чтобы применить данное определение политики ко всем развертываниям в среде развертывания. См. Создание экземпляра политики.