Sie können das JavaScript-Beispiel ausschneiden, einfügen und bearbeiten, um Skripts zum Abrufen der tatsächlichen Entitäten der bereitgestellten vRealize Automation-Ressourcen zu schreiben.
Der Typ
CatalogResource stellt die bereitgestellten Ressourcen in
vRealize Automation dar. Dieser Typ hat ein Attribut vom Typ
ProviderBinding, der die Beziehung zwischen der Katalogressource und ihrem Anbieter mit den folgenden Attributen darstellt:
- bindingId – stellt die Kennung der Entität dar, die für den Anbieter eindeutig ist
- providerRef – identifiziert den Kataloganbieter, der direkt mit einem Dienst übereinstimmt, der in der vRealize Automation-Komponentenregistrierung registriert ist
Weitere Informationen zur Skripterstellung in vRealize Orchestrator finden Sie unter Entwickeln mit VMware vRealize Orchestrator.
Abrufen einer als vRealize Automation-Katalogressource bereitgestellten virtuellen Maschine
In diesem Beispiel werden ein vRealize Automation-Host und sein IaaS-Host als Eingabeparameter verwendet. Für eine bereitgestellte Ressourcen-ID wird die entsprechende virtuelle IaaS-Maschine zurückgegeben. Der Skriptcode akzeptiert nur Katalogressourcen vom Typ Virtual Machine, die durch den Anbieter iaas-service bereitgestellt werden.
Variable | Typ |
---|---|
vcacHost | vCACCAFE:VCACHost |
iaasHost | vCAC:VCACHost |
// Id of the catalog resource (or vCACCAFECatalogResource_instance.getId()) var resourceId = "c222629c-6f90-4458-8c92-8ece0ba06173"; var resource = vCACCAFEEntitiesFinder.getCatalogResource(vcacHost, resourceId); var resourceType = resource.getResourceTypeRef().getLabel(); System.log("resource type: " + resourceType); var providerBinding = resource.getProviderBinding(); var bindingId = providerBinding.getBindingId(); System.log("provider binding id: " + bindingId); var provider = providerBinding.getProviderRef(); System.log("provider id: " + provider.getId()); System.log("provider name: " + provider.getLabel()); if ((resourceType == "Virtual Machine") && (provider.getLabel() == "iaas-service")) { System.log("It is an IaaS VM!"); // IaaS virtual machine var vm = Server.findForType("vCAC:VirtualMachine", bindingId); System.log("IaaS VM id: " + vm.virtualMachineID); System.log("IaaS VM name: " + vm.displayName); // IaaS Entity var entity = System.getModule("com.vmware.library.vcac").getVirtualMachineEntityFromId(iaasHost, bindingId); System.log("IaaS entity id: " + entity.keyString); }