Salta ai contenuti

Variabili e dati in uno scenario

Uno scenario dispone di tre meccanismi per far circolare i dati. Si completano a vicenda, e sapere quale scegliere evita molto cablaggio inutile.

Il meccanismo principale: un riquadro produce un valore, questo viaggia sul collegamento, eventualmente rimodellato da un selettore, e arriva nell’input del riquadro successivo.

È esplicito e leggibile: il flusso di dati è il disegno.

Va usato per tutto ciò che è locale — il risultato di una chiamata consumato dalla chiamata successiva.

Uno spazio denominato, proprio dell’esecuzione:

  • Definisci variabile scrive un valore;
  • Leggi variabile lo rilegge;
  • un valore tipizzato variable lo legge al volo, in qualunque campo;
  • {{nom}} lo legge in un template (Transform template, Map);
  • l’oggetto vars lo legge in un’azione di codice;
  • Aggiungi all’elenco e Rimuovi dall’elenco possono scrivere direttamente nella variabile di origine.

Una variabile di run copre l’ambiente per la durata dell’esecuzione: una richiesta che usa {{token}} prenderà il token impostato dallo scenario anziché quello dell’ambiente.

Va usata per ciò che è globale all’esecuzione: un token, un identificatore di correlazione, un contatore — anziché tirare un collegamento attraverso tutto il grafo.

  • Il riquadro Input / Param dichiara uno o più parametri denominati, ciascuno con il proprio tipo. Emette un solo oggetto { name: value, … }.

    I valori arrivano, in ordine: dal lancio (interfaccia o MCP), dalla riga di comando (--param name=value), oppure da una richiesta interattiva se lo scenario raggiunge il riquadro senza un valore disponibile.

  • Il riquadro Output / Return espone un risultato denominato al chiamante. Uno scenario chiamato da un’azione Esegui lo scenario rende le proprie uscite visibili sulla porta output:<name> del chiamante.

È ciò che permette di comporre: uno scenario «accedi» che restituisce un token, riutilizzato dagli altri.

Un’azione di richiesta ha una porta env: cablarvi un ambiente (valore tipizzato environment, oppure nome di ambiente) esegue la chiamata in quell’ambiente.

È il modo di far girare lo stesso scenario contro staging e poi production senza duplicare nulla — basta passare l’ambiente come parametro dello scenario.

Tutti i valori tipizzati si risolvono allo stesso modo nell’interfaccia e senza finestra: elenchi personalizzati, enumerazioni, anteprime di ambiente. Uno scenario che funziona nell’interfaccia funziona in CI.

Un nome di ambiente ambiguo (due ambienti omonimi) provoca un errore esplicito: in quel caso occorre passare l’identificatore.

Conversione dei parametri dalla riga di comando

Section titled “Conversione dei parametri dalla riga di comando”

--param riceve del testo; Restorm lo converte in base al tipo dichiarato del parametro:

Tipo dichiaratoChe cosa si passa
Numerico--param Seuil=42
Boolean--param Actif=true (accettati 1, yes, on)
Calcolo di dataUna data, oppure un timestamp epoch
ElencoJSON: --param Ids='[1,2,3]'
EnumerazioneIl valore, validato contro l’insieme consentito
Elenco personalizzatoL’etichetta, convertita in valore (Rouge → FF0000)
AmbienteUn nome oppure un identificatore di ambiente
Il restoLa stringa grezza

Una conversione impossibile fa fallire il lancio con un messaggio chiaro, anziché eseguire con un valore errato.