Creare uno script di esempio che utilizzi Python per richiamare l'API del progetto di vRealize Automation.

Prerequisiti

Verificare di aver installato Python 3 e il programma di installazione del pacchetto PIP. Vedere la pagina dei download di Python e Indice del pacchetto Python.

Procedura

  1. Sulla macchina locale, aprire una shell della riga di comando.
  2. Creare una cartella vro-python-vra.
    mkdir vro-python-vra
  3. Passare alla cartella vro-python-vra.
    cd vro-python-vra
  4. Creare uno script Python denominato handler.py.
    touch handler.py
    Lo script handler.py deve definire una funzione che accetti due argomenti, il contesto dell'esecuzione del workflow di vRealize Orchestrator e gli input di vRealize Orchestrator associati.
    def handler(context, inputs):
        print('Hello, your inputs were ' + inputs)
        return None
    Nota: Se si utilizzano le librerie di registrazione standard, tutto ciò che viene registrato nell'azione che utilizza lo script viene visualizzato anche nel registro del workflow. Gli input e ciò che viene restituito dallo script devono avere parametri di input e tipi di restituzione corrispondenti configurati in vRealize Orchestrator Client. Ad esempio, l'input vRAUrl nello script deve avere un parametro di input corrispondente denominato vRAUrl in vRealize Orchestrator Client. Analogamente, se lo script restituisce un valore stringa, anche il tipo di restituzione configurato in vRealize Orchestrator Client deve essere stringa. Se l'azione restituisce un oggetto complesso, è possibile utilizzare il tipo di restituzione Properties o Composite Type.
  5. Installare il modulo di richiesta di Python.
    Importante: I moduli delle dipendenze di terze parti devono essere installati in una cartella di livello root nella cartella dello script vro-python-vra principale. Per questo caso d'uso, verrà creata una cartella lib per il modulo di richiesta.
    1. Creare una cartella lib.
      mkdir lib
    2. Installare il modulo di richiesta.
      pip3 install requests -t lib/
  6. Aggiungere il modulo di richiesta allo script handler.py.
    import requests
     
    def handler(context, inputs):
        print('Hello, your inputs were ' + inputs)
        return None
  7. Creare una richiesta GET per l'API del progetto di vRealize Automation.
    token = ''
    vRAUrl = ''
    r = requests.get(vRAUrl + '/iaas/api/projects', headers={'Authorization': 'Bearer ' + token})
     
     
    print('Got response ' + r.text)
  8. Definire i valori di token e vRAUrl .
    1. Recuperare il token di accesso utilizzando l'API del servizio di identità di vRealize Automation. Vedere Ottenere il token di accesso per l'API di vRealize Automation
    2. Per il valore di vRAUrl, definire lo script in modo che utilizzi un parametro di input di vRealize Orchestrator con lo stesso nome.
      vRAUrl = inputs["vRAUrl"]
    3. Aggiungere i nuovi valori al file handler.py.
      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()
      Nota: Poiché la risposta dell'API del progetto di vRealize Automation viene restituita in formato JSON, utilizzare il tipo di restituzione Properties o Composite Type per l'azione di vRealize Orchestrator.
  9. Creare un pacchetto ZIP che contenga il file handler.py e la cartella lib del modulo di richiesta.
    zip -r --exclude=*.zip -X vro-python-vra.zip .

Operazioni successive

Importare lo script di PowerShell in un'azione di vRealize Orchestrator. Vedere Creazione di azioni in vRealize Orchestrator Client.