Variabler og data i et scenario
Et scenario har tre mekanismer for å flytte data rundt. De utfyller hverandre, og å vite hvilken du skal velge, sparer deg for mye unødvendig kobling.
1. Tokenene på forbindelsene
Section titled “1. Tokenene på forbindelsene”Hovedmekanismen: en boks produserer en verdi, verdien reiser på forbindelsen, eventuelt omformet av en selektor, og kommer inn i inngangen på neste boks.
Det er eksplisitt og lesbart: dataflyten er tegningen.
Bruk den til alt som er lokalt — resultatet av ett kall som forbrukes av det neste.
2. Run-variablene
Section titled “2. Run-variablene”Et navngitt rom som hører til den enkelte kjøringen:
- Sett variabel skriver en verdi;
- Hent variabel leser den igjen;
- en verdi av typen
variabelleser den underveis, i hvilket som helst felt; {{name}}leser den i en mal (Transform template, Map);- objektet
varsleser den i en kodehandling; - Legg til i liste og Fjern fra liste kan skrive direkte til kildevariabelen.
En run-variabel overskygger miljøet så lenge kjøringen varer: en forespørsel
som bruker {{token}}, tar tokenet scenarioet har satt, framfor miljøets.
Bruk den til det som er globalt for kjøringen: et token, en korrelasjons-ID, en teller — framfor å trekke en forbindelse gjennom hele grafen.
3. Parametere og utdata
Section titled “3. Parametere og utdata”-
Boksen Input / Param erklærer én eller flere navngitte parametere, hver med sin type. Den sender ut ett enkelt objekt
{ name: value, … }.Verdiene kommer, i denne rekkefølgen: fra starten (grensesnittet eller MCP), fra kommandolinjen (
--param name=value), eller fra en interaktiv forespørsel hvis scenarioet når boksen uten at det finnes en verdi. -
Boksen Output / Return eksponerer et navngitt resultat for den som kaller. Et scenario som kalles av en Kjør scenario-handling, gjør utdataene sine synlige på porten
output:<name>hos den som kaller.
Det er dette som gjør komposisjon mulig: et «logg inn»-scenario som returnerer et token, gjenbrukt av alle de andre.
Miljøer
Section titled “Miljøer”En forespørselshandling har en env-port: kobler du et miljø til den (en verdi av
typen environment, eller et miljønavn), kjøres kallet i det miljøet.
Det er måten du kjører det samme scenarioet mot staging og deretter
production på, uten å duplisere noe som helst — send miljøet inn som en
parameter til scenarioet.
Oppløsning i headless-modus
Section titled “Oppløsning i headless-modus”Alle typede verdier løses opp på samme måte i grensesnittet og uten vindu: egendefinerte lister, enumerasjoner, forhåndsvisninger av miljøer. Et scenario som fungerer i grensesnittet, fungerer i CI.
Et tvetydig miljønavn (to miljøer med samme navn) gir en tydelig feil: send inn IDen i stedet.
Konvertering av parametere på kommandolinjen
Section titled “Konvertering av parametere på kommandolinjen”--param mottar tekst; Restorm konverterer den etter parameterens erklærte
type:
| Erklært type | Det du sender inn |
|---|---|
| Numerisk | --param Seuil=42 |
| Boolean | --param Actif=true (1, yes, on godtas) |
| Date math | En dato, eller et epoch-tidsstempel |
| Liste | JSON: --param Ids='[1,2,3]' |
| Enumerasjon | Verdien, validert mot det tillatte settet |
| Egendefinert liste | Etiketten, konvertert til verdien (Rouge → FF0000) |
| Miljø | Et navn eller en miljø-ID |
| Alt annet | Den rå strengen |
En umulig konvertering gjør at starten feiler med en tydelig melding, framfor å kjøre med en feil verdi.