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

Prerequisiti

Scaricare e installare Node.js 12. Vedere Download di Node.js.

Procedura

  1. Sulla macchina locale, aprire una shell della riga di comando.
  2. Creare una cartella vro-node-vra.
    mkdir vro-node-vra
  3. Passare alla cartella vro-node-vra.
    cd vro-node-vra
  4. Creare uno script Node.js denominato handler.js.
    touch handler.js
    Lo script handler.js deve definire una funzione che accetti due argomenti, il contesto dell'esecuzione del workflow di vRealize Orchestrator e gli input di vRealize Orchestrator associati.
    exports.handler = (context, inputs) => {
        console.log('Hello, your inputs were ' + inputs);
        return null;
    }
    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 Node.js.
    npm install request
    Importante: I moduli delle dipendenze di terze parti devono essere installati nella cartella di livello root node_modules nella cartella dello script vro-node-vra principale. Non spostare o rinominare questa cartella.
  6. Aggiungere il modulo di richiesta allo script handler.js.
    const request = require('request');
     
    exports.handler = (context, inputs) => {
        console.log('Hello, your inputs were ' + inputs);
        return null;
    }
  7. Creare una richiesta GET per l'API del progetto di vRealize Automation.
    const token = '';
    const vRAUrl = '';
    request.get(vRAUrl + '/iaas/api/projects', { 'auth': { 'bearer': token } }, function (error, response, body) {
        console.log('Got response ' + body);
    });
  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.
      const vRAUrl = inputs.vRAUrl;
    3. Aggiungere i nuovi valori al file handler.js.
      const request = require('request');
      exports.handler = (context, inputs, callback) => {
          const vRAUrl = inputs.vRAUrl;
          const token = 'ACCESS_TOKEN';
          request.get(vRAUrl + '/iaas/api/projects', { 'auth': { 'bearer': token } }, function (error, response, body) {
              console.log('Got response ' + body);
              callback(null, JSON.parse(body));
          });
      }
      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.js e la cartella node_modules del modulo di richiesta.
    zip -r --exclude=*.zip -X vro-node-vra.zip .

Operazioni successive

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