シナリオの変数とデータ
シナリオには、データを流すための仕組みが 3 つあります。互いを補い合うもので、 どれを選ぶべきか分かっていれば、無駄な配線をかなり省けます。
1. 接続を流れるトークン
Section titled “1. 接続を流れるトークン”主要な仕組みです。ボックスが値を生み、その値が接続を旅し、必要に応じて セレクター で形を変えられ、次のボックスの 入力に届きます。
明示的で読みやすい方法です。データの流れが、そのまま図 そのもの になります。
局所的なものにはこれを使ってください。ある呼び出しの結果を次の呼び出しが消費する、 といった場合です。
2. 実行変数
Section titled “2. 実行変数”実行に固有の、名前付きの空間です。
- 変数を設定 が値を書き込みます。
- 変数を取得 がそれを読み直します。
variable型の値は、どのフィールドからでもその場で読み取ります。{{name}}はテンプレート(Transform template、Map)の中で読み取ります。varsオブジェクトは コードアクション の中で 読み取ります。- リストに追加 と リストから削除 は、ソースとなる変数に直接書き込めます。
実行変数は、実行中のあいだ 環境を覆い隠します。{{token}} を使うリクエストは、
環境のトークンではなく、シナリオが置いたトークンを取ります。
実行全体にわたるものにはこちらを使ってください。トークン、相関のための識別子、 カウンターなどを、グラフ全体に接続を引き回さずに扱えます。
3. パラメーターと出力
Section titled “3. パラメーターと出力”-
Input / Param ボックスは、名前付きのパラメーターを 1 つ以上、それぞれの型 とともに宣言します。出力するのは 1 つのオブジェクト
{ name: value, … }です。値は次の順に与えられます。起動時(インターフェースまたは MCP)、コマンドライン (
--param name=value)、あるいはシナリオが値のないままそのボックスに到達した 場合の 対話的な問い合わせ です。 -
Output / Return ボックスは、名前付きの結果を呼び出し元に公開します。 シナリオ実行 アクションから呼ばれたシナリオは、その出力を呼び出し元の
output:<name>ポートに現します。
これによって組み立てができます。トークンを返す「ログイン」シナリオを、ほかの シナリオが再利用する、という具合です。
リクエストのアクションには env ポートがあります。ここに環境(environment 型の
値、または環境名)を配線すると、その環境で呼び出しが実行されます。
同じシナリオを staging に対して、続いて production に対して走らせるための方法
です。何も複製する必要はありません。環境はシナリオのパラメーターとして渡してください。
ヘッドレスモードでの解決
Section titled “ヘッドレスモードでの解決”型付きのすべての値は、インターフェースでもウィンドウなしでも同じように 解決され ます。カスタム値リスト、列挙型、環境のプレビューも同じです。インターフェースで動く シナリオは CI でも動きます。
環境名が 曖昧 な場合(同名の環境が 2 つある場合)は、明示的なエラーになります。 そのときは識別子を渡してください。
コマンドラインのパラメーターの変換
Section titled “コマンドラインのパラメーターの変換”--param はテキストを受け取り、Restorm がパラメーターの 宣言された型 に従って
変換します。
| 宣言された型 | 渡すもの |
|---|---|
| 数値 | --param Seuil=42 |
| Boolean | --param Actif=true(1、yes、on も可) |
| 日付計算 | 日付、または epoch のタイムスタンプ |
| リスト | JSON:--param Ids='[1,2,3]' |
| 列挙型 | 値。許可された集合に対して検証されます |
| カスタム値リスト | ラベル。値に変換されます(Rouge → FF0000) |
| 環境 | 環境の 名前 または識別子 |
| その他 | 生の文字列 |
変換できない場合は、誤った値で実行するのではなく、明確なメッセージとともに 起動が失敗します。