Перейти до вмісту

Змінні та дані у сценарії

Сценарій має три механізми переміщення даних. Вони доповнюють один одного, і вміння обрати правильний позбавляє від великої кількості зайвих з’єднань.

Основний механізм: блок виробляє значення, воно мандрує зв’язком, за потреби перетворене селектором, і надходить на вхід наступного блоку.

Це явно й наочно: потік даних і є самим малюнком.

Використовуйте його для всього локального — результату виклику, який споживає наступний виклик.

Іменований простір, властивий одному виконанню:

  • Задати змінну записує значення;
  • Отримати змінну читає його;
  • значення типу змінна читає її на льоту в будь-якому полі;
  • {{ім'я}} читає її в шаблоні (Transform template, Map);
  • об’єкт vars читає її в дії з кодом;
  • Додати до списку та Видалити зі списку можуть писати безпосередньо до вихідної змінної.

Змінна запуску перекриває середовище на час виконання: запит, який використовує {{token}}, візьме токен, покладений сценарієм, а не той, що в середовищі.

Використовуйте її для того, що є глобальним для виконання: токен, ідентифікатор кореляції, лічильник — замість того, щоб тягнути зв’язок через увесь граф.

  • Блок Input / Param оголошує один чи кілька іменованих параметрів, кожен зі своїм типом. Він видає єдиний об’єкт { ім'я: значення, … }.

    Значення надходять у такому порядку: із запуску (інтерфейс або MCP), із командного рядка (--param ім'я=значення) або через інтерактивний запит, якщо сценарій дійшов до блоку без доступного значення.

  • Блок Output / Return віддає іменований результат тому, хто викликав. Сценарій, викликаний дією Запустити сценарій, робить свої виходи видимими на порту output:<ім'я> того, хто його викликав.

Саме це дає змогу компонувати: сценарій «підключитися», який повертає токен, використовується рештою.

Дія запиту має порт env: якщо під’єднати до нього середовище (значення типу environment або назву середовища), виклик виконається в цьому середовищі.

Це спосіб виконати той самий сценарій спершу проти staging, а потім проти production, нічого не дублюючи — передайте середовище параметром сценарію.

Обчислення в безекранному режимі

Section titled “Обчислення в безекранному режимі”

Усі типізовані значення обчислюються однаково в інтерфейсі й без вікна: власні списки, переліки, попередні перегляди середовищ. Сценарій, який працює в інтерфейсі, працює й у CI.

Неоднозначна назва середовища (два однойменні середовища) спричиняє явну помилку: тоді передавайте ідентифікатор.

Перетворення параметрів у командному рядку

Section titled “Перетворення параметрів у командному рядку”

--param отримує текст; Restorm перетворює його відповідно до оголошеного типу параметра:

Оголошений типЩо ви передаєте
Число--param Seuil=42
Булеве--param Actif=true (приймаються 1, yes, on)
Обчислення датиДату або мітку часу epoch
СписокJSON: --param Ids='[1,2,3]'
ПерелікЗначення, перевірене за дозволеним набором
Власний списокПідпис, перетворений на значення (RougeFF0000)
СередовищеНазву або ідентифікатор середовища
РештаСирий рядок

Неможливе перетворення зриває запуск із чітким повідомленням, замість того щоб виконуватися з хибним значенням.