Чтобы написать сценарии для выполнения задач CRUD в vRealize Automation, можно вырезать, вставить и отредактировать примеры сценариев JavaScript.
Дополнительные сведения о создании сценариев в vRealize Orchestrator см. в статье Разработка с помощью VMware vRealize Orchestrator.
Создание сущности модели vRealize Automation
В этом примере сценария выполняются следующие действия.
Определение имени модели и имени набора сущностей.
Определение свойств префикса узла.
Сохранение сущности префикса узла.
Определение свойств группы подготовки.
Определение группы подготовки как ссылки.
Сохранение сущности группы подготовки путем связывания ее с префиксом имени узла.
Переменная |
Type |
---|---|
host |
vCAC:VcacHost |
var modelName = 'ManagementModelEntities.svc'; var entitySetName = 'HostNamePrefixes'; var links = null; var headers = null; //Create properties for prefix entity var prefixInputProperties = { MachinePrefix:'test-prefix', NextMachineNo:1, MachineNumberLength:3 }; //Save the prefix var prefixEntity = vCACEntityManager .createModelEntity(host.id, modelName, entitySetName, prefixInputProperties, links, headers); entitySetName = 'ProvisioningGroups'; //Create properties for the provisioning group entity inputProperties = { GroupName:'TestGroupName', GroupDescription:'This group was generated with a vCO workflow', AdministratorEmail:'test@test.com', AdContainer:'AD', IsTestGroup:false, Flags:2, GroupType:1}; //Add a reference to the newly created prefix entity links = { HostNamePrefix:prefixEntity }; //Save the provisioning group var entity = vCACEntityManager.createModelEntity(host.id, modelName, entitySetName, inputProperties, links, headers);
Обновление сущности модели vRealize Automation
В этом примере сценария выполняются следующие действия.
Получение идентификатора узла из предоставленной сущности.
Получение имени модели из предоставленной сущности.
Получение имени набора сущностей из предоставленной сущности.
Получение идентификатора сущности из предоставленной сущности.
Определение набора свойств, которые будут обновлены.
Запуск действия по обновлению сущности.
Переменная |
Type |
---|---|
entity |
vCAC:Entity |
updatedDescription |
String |
var hostId = entity.hostId; var modelName = entity.modelName; var entitySetName = entity.entitySetName; var entityIdString = entity.keyString; var links = null; var headers = null; var updateProperties = new Properties(); updateProperties.put("UserNameDescription", updatedDescription); //Update the user description System.getModule("com.vmware.library.vcac") .updateVCACEntity(hostId, modelName, entitySetName, entityIdString, updateProperties, links, headers);
Чтение сущности модели vRealize Automation
В этом примере сценария выполняются следующие действия.
Определение имени модели и имени набора сущностей.
Определение идентификатора схемы элементов с помощью объекта-свойства.
Чтение сущности.
Переменная |
Type |
---|---|
host |
vCAC:VcacHost |
blueprintID |
String |
var modelName = 'ManagementModelEntities.svc'; var entitySetName = 'VirtualMachineTemplates'; var links = null; var headers = null; //Create properties for the prefix entity var blueprintId = { VirtualMachineTemplateID:blueprintId, }; //Read the blueprint var entity = vCACEntityManager .readModelEntity(host.id, modelName, entitySetName, blueprintId, headers);
Удаление сущности модели vRealize Automation
В этом примере сценария выполняются следующие действия.
Получение идентификатора узла из предоставленной сущности.
Получение имени модели из предоставленной сущности.
Получение имени набора сущностей из предоставленной сущности.
Получение идентификатора сущности из предоставленной сущности.
Запуск действия по удалению сущности.
Переменная |
Type |
---|---|
entity |
vCAC:Entity |
var hostId = entity.hostId; var modelName = entity.modelName; var entitySetName = entity.entitySetName; var entityKeyString = entity.keyString; var headers = null; //Delete the entity System.getModule("com.vmware.library.vcac") .deleteVCACEntity(hostId, modelName, entitySetName, entityKeyString, headers);
Чтение сущности vRealize Automation по специальному фильтру
В этом примере сценария выполняются следующие действия.
Определение имени модели и имени набора сущностей.
Определение свойств, по которым фильтруются сущности.
Чтение списка сущностей.
Переменная |
Type |
---|---|
host |
vCAC:VcacHost |
templateName |
String |
var modelName = 'ManagementModelEntities.svc'; var entitySetName = 'VirtualMachineTemplates'; var headers = null; //Create properties for prefix entity var properties = { VirtualMachineTemplateName:templateName, }; //Read a list of entities var entities = vCACEntityManager .readModelEntitiesByCustomFilter(host.id, modelName, entitySetName, properties, headers);
Чтение сущности vRealize Automation по системному запросу
В этом примере сценария выполняются следующие действия.
Определение имени модели и имени набора сущностей.
Определение системных запросов, по которым фильтруются сущности, и выбор из всех виртуальных машин десяти лучших результатов, отфильтрованных по состоянию компьютеров и флагу компонентов.
Чтение списка сущностей.
Переменная |
Type |
---|---|
host |
vCAC:VcacHost |
var modelName = 'ManagementModelEntities.svc'; var entitySetName = 'VirtualMachines'; var filter = "VirtualMachineState eq 'Off' and IsComponent eq true"; var orderBy = 'VirtualMachineName asc'; var top = 10; { var skip = 0;, var headers = null; var select = null; var entities = vCACEntityManager readModelEntitiesBySystemQuery(host.id, modelName, entitySetName, filter, orderBy, select, top, skip, headers);