Smyčky mohou být implementovány v rámci pracovního postupu k opakování sady úkolů na základě definovaných podmínek.
Nastavení smyčky je přístupné buď na záložce konfigurace bloku, nebo kliknutím pravým tlačítkem na blok a výběrem .
Nastavení smyčky vyžaduje seznam věcí, na kterých má pracovat:
-
Jednoduché, jednotlivé hodnoty, které jsou pak použitelné v parametrech úkolu, jako je
{{ @item }}. -
Objekt .JSON, kde každý prvek v objektu může být adresován jeho klíčem, jako je
{{ @item.key }}.
Přístup k agregovaným výsledkům smyčky
Výstup všech iterací může být přístupný jako pole .JSON, jakmile je smyčka dokončena. Výstup každé iterace musí být platný soubor .JSON.
Existují čtyři typy smyček, které mohou být definovány a vybírány v poli :
-
withSequence
-
s_položkami
-
withComplexItems
-
withParam
Smyčka s_sekvencí umožňuje iteraci přes sekvenci čísel nebo generaci rozsahu hodnot v rámci pracovního postupu.
Může být použita k opakování sady kroků konkrétní početkrát nebo k provádění operací na základě rozsahu hodnot.
Chcete-li vytvořit vzorovou smyčku s_sekvencí, postupujte podle těchto kroků:
-
Vyberte prázdný blok a otevřete konfiguraci .
-
Klikněte na Upravit smyčku.
Možnosti konfigurace jsou prezentovány.
-
Z pole vyberte withSequence.
-
Zadejte počet iterací smyčky do pole .
-
Volitelně zadejte hodnotu, od které by měla smyčka začít a/nebo s kterou by měla skončit.
-
Klikněte na Save loop.
-
Z konfigurace klikněte na Edit parameters.
Možnosti konfigurace jsou prezentovány.
-
Do pole zadejte
{{ @item }}a klikněte na Save parameters.Tato hodnota bude převedena za běhu.
Například, pokud je počet nastaven na 3 a počáteční hodnota je 2, výsledky této smyčky budou:
-
loop list => ["2", "3", "4"] -
{{ @item }} => 2nebo3nebo4, na základě iterace
Smyčka withItems umožňuje iteraci přes seznam položek.
Může být použita, když je potřeba provádět operace na základě seznamu položek.
Chcete-li vytvořit vzorovou smyčku withItems, postupujte podle těchto kroků:
-
Vyberte prázdný blok a otevřete konfiguraci .
-
Klikněte na Upravit smyčku.
Možnosti konfigurace jsou prezentovány.
-
Z pole vyberte withItems
-
Zadejte
endo pole a klikněte na +Item (je vytvořeno další pole ). -
Zadejte
dedo druhého pole a vytvořte třetí pole. -
Zadejte
frdo třetího pole a vytvořte čtvrté pole. -
Zadejte
usdo čtvrtého pole. -
Klikněte na Save loop.
-
Z konfigurace klikněte na Edit parameters.
Možnosti konfigurace jsou prezentovány.
-
Do pole zadejte
{{ @item }}a klikněte na Save parameters.Tato hodnota bude převedena za běhu.
Výsledky tohoto cyklu budou iterací přes seznam jazykových kódů:
-
loop list => ["en", "de", "fr", "ua"] -
{{ @item }} => ennebode .. ua
Cyklus sKomplexnímiPoložkami umožňuje iteraci přes seznam objektů.
Může být použit, když je potřeba provádět operace na základě seznamu komplexních položek.
Pro vytvoření vzorového sKomplexnímiPoložkami cyklu postupujte podle těchto kroků:
-
Vyberte prázdný blok a otevřete konfiguraci .
-
Klikněte na Upravit smyčku.
Možnosti konfigurace jsou prezentovány.
-
Z pole vyberte sKomplexnímiPoložkami
-
Klikněte na +Klíč:hodnota pro přidání druhého klíče.
-
Pro zadejte následující:
-
-
: název
-
: Projekt 1
-
-
-
: id
-
: 11
-
-
-
Klikněte na +Objekt pro přidání druhého objektu a +Klíč:hodnota pro druhý klíč.
-
Pro zadejte následující:
-
-
: název
-
: Projekt 2
-
-
-
: id
-
: 22
-
Ukázka nastavení:
-
-
Z konfigurace klikněte na Edit parameters.
Možnosti konfigurace jsou prezentovány.
-
Do pole zadejte
{{ @item.name }}a klikněte na Save parameters. Tato hodnota bude převedena za běhu.
Výsledky tohoto cyklu budou iterací přes seznam projektů:
-
cyklus seznamu=>[ { "name": "Project 1", "id": 11 }, { "name": "Project 2", "id": 22 } ] -
{{ @item }}=>{ "name": "Project 1", "id": 11 } -
{{ @item.name }}=>Projekt 1 -
{{ @item.id }}=>11
Cyklický sParam umožňuje iteraci přes dynamický seznam, který je výstupem z jakéhokoli předchozího úkolu nebo spouštěče.
Tento cyklus se používá pouze jako reference v poli parametrů.
Příklad:
Výstupy úkolu (Řetězce: Publikovat vydání):
{
"created_at": "2015-01-28T09:52:53Z",
"environments": ["development", "production"],
"id": "abcd1234cdef1234abcd1234cdef1234",
"locales": [
{
"code": "en-GB",
"id": "abcd1234cdef1234abcd1234cdef1234",
"name": "English"
},
{
"id": "abcd5678cdef5678abcd5678cdef5678",
"name": "German",
"code": "de_DE"
}
],
"platforms": ["android"],
"project": {
"created_at": "2015-01-28T09:52:53Z",
"id": "abcd1234cdef1234abcd1234cdef1234",
"main_format": "xml",
"name": "Můj Android Projekt",
"updated_at": "2015-01-28T09:52:53Z"
},
"updated_at": "2015-01-28T09:52:53Z",
"version": 1
}
Pokud jsou nastavení smyčky nastavena s {{ $.locales }}, pak:
-
loop list=>[ { "code": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "name": "English" }, { "id": "abcd5678cdef5678abcd5678cdef5678", "name": "German", "code": "de_DE" } ] -
První
{{ @item }}=>{ "code": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "name": "English" } -
{{ @item.code }}=>en-GB -
{{ @item.name }}=>Angličtina
Nebo pokud je {{ $.environments }} odkazováno, pak:
-
loop list=>["development", "production"] -
{{ @item }}=>vývojneboprodukce