Erstellen Sie ein Beispielskript, das Python zum Aufrufen der vRealize Automation-Projekt-API verwendet.

Voraussetzungen

Stellen Sie sicher, dass Sie Python 3 sowie das Installationsprogramm für das PIP-Paket installiert haben. Weitere Informationen finden Sie auf der Seite Python-Downloads und im Python-Paketindex.

Prozedur

  1. Öffnen Sie auf Ihrer lokalen Maschine eine Befehlszeilen-Shell.
  2. Erstellen Sie einen Ordner mit der Bezeichnung vro-python-vra.
    mkdir vro-python-vra
  3. Navigieren Sie zum Ordner vro-python-vra.
    cd vro-python-vra
  4. Erstellen Sie ein Python-Skript mit dem Namen handler.py.
    touch handler.py
    Im Skript handler.py muss eine Funktion definiert werden, die zwei Argumente, den Kontext der vRealize Orchestrator-Workflow-Ausführung und die gebundenen vRealize Orchestrator-Eingaben akzeptiert.
    def handler(context, inputs):
        print('Hello, your inputs were ' + inputs)
        return None
    Hinweis: Mithilfe von Standardprotokollierungsbibliotheken werden alle protokollierten Einträge in der Aktion, die das Skript verwendet, auch im Workflow-Protokoll angezeigt. Die Eingaben und die Rückgabe des Skripts müssen entsprechende im vRealize Orchestrator-Client konfigurierte Eingabeparameter und Rückgabetypen aufweisen. Beispielsweise muss die Eingabe vRAUrl im Skript einen entsprechenden Eingabeparameter mit der Bezeichnung vRAUrl im vRealize Orchestrator-Client aufweisen. Wenn vom Skript ein Zeichenfolgenwert zurückgegeben wird, muss der im vRealize Orchestrator-Client konfigurierte Rückgabetyp ebenfalls vom Typ „Zeichenfolge“ sein. Wenn von der Aktion ein komplexes Objekt zurückgegeben wird, können Sie den Rückgabetyp Properties oder Composite Type verwenden.
  5. Installieren Sie das Python-Anforderungsmodul.
    Wichtig: Abhängigkeitsmodule von Drittanbietern müssen in einem Ordner auf Root-Ebene im Ordner des Hauptskripts vro-python-vra installiert werden. In diesem Anwendungsfall erstellen Sie einen Ordner mit dem Namen lib für das Anforderungsmodul.
    1. Erstellen Sie einen Ordner mit dem Namen lib.
      mkdir lib
    2. Installieren Sie das Anforderungsmodul.
      pip3 install requests -t lib/
  6. Fügen Sie dem Skript handler.py das Anforderungsmodul hinzu.
    import requests
     
    def handler(context, inputs):
        print('Hello, your inputs were ' + inputs)
        return None
  7. Erstellen Sie eine GET-Anforderung für die vRealize Automation-Projekt-API.
    token = ''
    vRAUrl = ''
    r = requests.get(vRAUrl + '/iaas/api/projects', headers={'Authorization': 'Bearer ' + token})
     
     
    print('Got response ' + r.text)
  8. Definieren Sie die Werte token und vRAUrl .
    1. Rufen Sie das Zugriffstoken mithilfe der vRealize Automation-Identitätsdienst-API ab. Weitere Informationen finden Sie unter Abrufen des Zugriffstokens für die vRealize Automation-API
    2. Definieren Sie das Skript für den Wert vRAUrl so, dass es einen vRealize Orchestrator-Eingabeparameter mit demselben Namen verwendet.
      vRAUrl = inputs["vRAUrl"]
    3. Fügen Sie der Datei handler.py die neuen Werte hinzu.
      import requests
       
      def handler(context, inputs):
          token = 'ACCESS_TOKEN'
          vRAUrl = inputs["vRAUrl"]
       
          r = requests.get(vRAUrl + '/iaas/api/projects', headers={'Authorization': 'Bearer ' + token})
       
          print('Got response ' + r.text)
       
          return r.json()
      Hinweis: Da die Antwort von der vRealize Automation-Projekt-API in einem JSON-Format zurückgegeben wird, verwenden Sie einen Properties- oder Composite Type-Rückgabetyp für Ihre vRealize Orchestrator-Aktion.
  9. Erstellen Sie ein ZIP-Paket, das die Datei handler.py und den Ordner lib Ihres Anforderungsmoduls enthält.
    zip -r --exclude=*.zip -X vro-python-vra.zip .

Nächste Maßnahme

Importieren Sie das PowerShell-Skript in eine vRealize Orchestrator-Aktion. Weitere Informationen finden Sie unter Erstellen von Aktionen im vRealize Orchestrator Client.