В настоящее время меня остановила проблема, связанная с необходимостью программного изменения параметров создания экземпляров, чтобы иметь возможность запускать экземпляры с разными номерами ЦП и размером памяти.
Я обнаружил, что мне нужно использовать InstantiateVAppTemplateParamsType (ссылка ниже ) https://code.vmware.com/apis/442/vcloud-director/doc/doc/types/InstantiateVAppTemplateParamsType.html
Я узнал, как запустить VApp с этими параметрами БЕЗ настройки, упрощая параметры:
<?xml version="1.0" encoding="UTF-8"?> <InstantiateVAppTemplateParams xmlns="http://www.vmware.com/vcloud/v1.5" name="$TEMPLATE_NAME" deploy="true" powerOn="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1"> <Description>$TEMPLATE_DESCRIPTION</Description> <Source href="$SOURCE_TEMPLATE" /> </InstantiateVAppTemplateParams>
Теперь я разочарован, потому что могу не собирать параметры для API, чтобы использовать его и создавать vApp с настроенной виртуальной машиной.
Я нашел информацию о InstantiationParamsType (ссылка ниже) https://code.vmware.com/apis/442/vcloud-director/doc/doc/types/InstantiationParamsType.html
Но я не могу построить их правильно, чтобы получить нормальный ответ вместо BAD_REQUEST.
Заранее спасибо.
PS Я использую vCloudDirector API 9.5
Хорошо, проблема заключалась в том, что я скопировал VirtualHardwareSection из руководства API VMWare, которое было в PDF, что нарушило мою кодировку.
После этого я нашел руководство для поставщиков услуг (ссылка ниже)
https://code.vmware.com/docs/6899/vcloud-api-programming-guide-for-service-providers/doc/GUID-BF9B790D-512E-4EA1-99E8-6826D4B8E6DC.html
И после взятия оттуда xml -snippet все заработало, как и следовало ожидать из документации.