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.

Tabelle 1. Eingabevariablen

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);
}