Chcete-li pokračovat ve vzorovém pracovním postupu, je třeba jej nakonfigurovat.
Konfiguraci bloku otevřete kliknutím na Edit parameters na kartě nebo kliknutím pravým tlačítkem na blok a výběrem možnosti Edit parameters. Otevře se okno . Jakmile má blok parametry, tlačítko se změní na .
Chcete-li nakonfigurovat bloky pro tento příklad, postupujte podle těchto kroků:
-
Otevřete okno pro akci
.List locales
-
Pole a budou vyžadovat dynamické hodnoty, které se vyřeší za běhu.
-
Klikněte na ikonu odkazu
u pole a vyberte akci
.Fetch access tokens
Odkaz zezelená a pole lze upravit.
-
Syntaxe pro přístup k vlastnostem odkazované aktivační události nebo akce je:
{{$.path.to.value}}Výstup akce
je následující:Fetch access tokens
{ "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }takže pro pole je potřeba výraz
{{$.tokens.strings_token}}. -
Klikněte na ikonu odkazu
u pole a vyberte aktivační událost
.uploads:create
Odkaz zezelená a pole lze upravit.
-
Výstup aktivační události
vypadá takto:uploads:create
{ "branch": { "name": "my_branch" }, "event": "uploads:create", "message": "user-1 initialized file upload file.yml in project name_1672734591_11 within branch my_branch\n", "project": { "created_at": "2023-01-03 08:29:51 UTC", "id": "abcdabcdabcdabcd-11", "main_format": "yml", "name": "name_1672734591_10", "point_of_contact": null, "project_image_url": null, "slug": "name_1672734591_10", "updated_at": "2023-01-03 08:29:51 UTC" }, "upload": { "created_at": "2023-01-03 08:29:48 UTC", "filename": "file.yml", "format": "yml", "id": "upload-1", "state": "initialized", "summary": {}, "tag": null, "updated_at": "2023-01-03 08:29:48 UTC" }, "user": { "gravatar_uid": "29a2d1baa67d4ea524cf0f247f7bbb94", "id": "9c365b9a6f77c247c3de959f6152b231", "name": "Joe Sixpack", "username": "user-1" } }takže pro pole je potřeba výraz
{{$.project.id}}. -
Klikněte na Uložit.
Okno se zavře a parametry akce se uloží
-
-
K vytvoření úlohy pomocí akce
je třeba předat ID výchozího národního prostředí projektu. AkceCreate Job
přijme vstup ve formátu JSON, použije zadaný filtr a poté vrátí výstup ve formátu JSONTransform JSON with jq
-
Na kartě v okně vyhledejte phrase-jq.
Přetáhněte blok akce
pod akciTransform JSON with jq
, abyste je propojili.list locales
-
Otevřete okno pro akci
Transform JSON with jq. -
V rozevíracím seznamu vyberte .
-
Klikněte na ikonu odkazu
u pole a vyberte akci
.list locales
Odkaz zezelená a pole lze upravit.
-
Pole přijímá vstup ve formátu JSON. Speciální pevný výraz (
@namísto$) zajišťuje, že celý výstup odkazované akce bude předán do pole.Do pole zadejte výraz
{{@.outputs.result}}. -
Klikněte na ikonu odkazu
u pole a vyberte akci
.list locales
Odkaz zezelená a pole lze upravit.
-
Je vyžadován filtr seznamu národních prostředí, který vrátí nový seznam obsahující všechny prvky, u nichž je vlastnost
defaultnastavena natrue.V projektu může být pouze jedno výchozí národní prostředí a seznam obsahuje jeden identifikovatelný a povinný prvek. K tomuto prvku se přistupuje přímo pomocí syntaxe pole
.[0].Do pole zadejte výraz
map(select(.default))|.[0]. -
Klikněte na Uložit.
Okno se zavře a parametry akce se uloží
-
-
Nyní lze nakonfigurovat akci
pomocí postupů použitých v předchozích blocích.Create a job
-
Klikněte na ikonu odkazu
u pole a vyberte akci
.Fetch access tokens
Odkaz zezelená a pole lze upravit.
Zadejte výraz
{{$.tokens.strings_token}}. -
Klikněte na ikonu odkazu
u pole a vyberte spouštěč
.uploads:create
Odkaz zezelená a pole lze upravit.
Zadejte výraz
{{$.project.id}}. -
Klikněte na ikonu odkazu
u pole a vyberte akci
Transformovat JSON pomocí jq.Odkaz zezelená a pole lze upravit.
Zadejte výraz
{{@.outputs.result}}. -
Datum splnění lze vypočítat pomocí funkcí sprig nebo Expr, ale pro účely tohoto příkladu bude použito pevně zadané datum, kterému API rozumí.
Do pole zadejte 2023-12-31T12:00:00Z.
-
Klikněte na Uložit.
Konfigurace je uložena a podrobnosti lze zobrazit na kartě .
-
-
Každá akce může mít jednu nebo více podmínek kombinovaných pomocí logických
ANDaOR. Tyto podmínky se vyhodnocují za běhu a akce i její podřízené akce se provedou pouze v případě, že se podmínka vyhodnotí jako true.Chcete-li to v příkladu zohlednit, vyberte akci
a na kartě klikněte na Upravit podmínky. Případně klikněte pravým tlačítkem na blok a vyberte Upravit podmínky.Vytvořit úlohu
Otevře se okno .
-
Podle vzorů z předchozích bloků propojte pole se spouštěčem
a zadejte výrazuploads:create
{{$.upload.tag}}. -
Z první rozevírací nabídky vyberte NOT, čímž výrok znegujete.
-
Z rozevírací nabídky vyberte IsNull.
-
Klikněte na Uložit.
Podmínka je zobrazena na kartě .
Pracovní postup se v tomto bodě zastaví, pokud nahraná data neobsahují značku (což znamená, že neobsahovala žádné nové ani aktualizované klíče či překlady).
-
-
Pro úlohu jsou nyní vyžadovány cílové jazykové varianty. Pro účely tohoto příkladu budou vytvořeny dvě jazykové varianty: jedna pro španělštinu (es-ES) a jedna pro němčinu (de-DE). Jazykové varianty budou přidány ke dvěma akcím
v okně jako v kroku 3.Transformovat JSON pomocí jq
-
Do pole obou akcí zadejte výraz
{{@.outputs.result}}, propojte jej s akcía uložte parametr.Seznam jazykových variant
-
Do pole jedné akce zadejte výraz
map(select(.name == "es-ES"))|.[0]a propojte jej s akcí.Seznam jazykových variant
Uložte parametr.
-
Ve druhé akci zadejte výraz
map(select(.name == "de-DE"))|.[0]a propojte jej s akcí.Seznam jazykových variant
Uložte parametr.
-
-
Jazykové varianty se nyní použijí při vytváření úlohy.
Nakonfigurujte dvě akce
podle stejných postupů jako dříve.Přidat k úloze cílovou jazykovou variantu
-
Úlohu lze nyní spustit.
Nakonfigurujte akci
podle stejných postupů jako dříve.Spustit úlohu
Po nakonfigurování bloků lze pracovní postup spustit na vyžádání a otestovat jej, aniž byste museli čekat na jeho spouštěč, například na naplánovaný čas spuštění nebo webhook.
Spusťte běh jedním z těchto způsobů:
-
V editoru pracovních postupů použijte tlačítko Spustit k otevření dialogového okna .
-
Odešlete požadavek
POSTna/orchestrator/api/v1/workflows/{workflow_id}/executionsve veřejném rozhraní API.
Běh vždy používá nejnovější revizi pracovního postupu. Revize nemusí být publikována, ale musí projít ověřením před publikováním. Každý běh vytvoří nové spuštění, které je uvedeno na stránce se štítkem Ruční.
Poznámka
Běhy na vyžádání jsou dostupné pouze pro pracovní postupy používající engine pracovních postupů nové generace. U starších pracovních postupů se tlačítko Spustit v editoru nezobrazuje a rozhraní API vrací chybu 422.
Balíčky akcí a šablony nelze spustit a pracovní postup musí mít vlastníka.