Chcete-li Pokračovat v ukázkovém pracovní postup, bude nutné jej nakonfigurovat.
Konfiguraci bloku lze zpřístupnit buď kliknutím na Upravit parametry na záložka , nebo kliknutím pravým tlačítkem na blok a výběrem Upravit parametry pro otevření okna . Jakmile má blok parametry, tlačítko se přepne 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
pro pole a vyberte akci
.Fetch access tokens
Odkaz zezelená a pole lze upravit.
-
Syntaxe pro přístup k vlastnostem odkazovaného spouštěče nebo akce je:
{{$.path.to.value}}S výstupem pro
jako:Fetch access tokens
{ "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }což činí výraz požadovaný pro pole
{{$.tokens.strings_token}}. -
Klikněte na ikonu odkazu
pro pole a vyberte spouštěč
.uploads:create
Odkaz zezelená a pole lze upravit.
-
Výstup spouštěče
vypadá takto:uploads:create
{ "branch": { "name": "my_branch" }, "event": "uploads:create", "message": "uživatel-1 inicializoval nahrát soubor file.yml v projekt name_1672734591_11 v rámci větev 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" }, "nahrát": { "created_at": "2023-01-03 08:29:48 UTC", "filename": "file.yml", "format": "yml", "ID": "upload-1", "state": "initialized", "Shrnutí": {}, "tag": null, "updated_at": "2023-01-03 08:29:48 UTC" }, "user": { "gravatar_uid": "29a2d1baa67d4ea524cf0f247f7bbb94", "id": "9c365b9a6f77c247c3de959f6152b231", "name": "Joe Sixpack", "username": "user-1" } }nastavení výrazu jako povinného pro pole
{{$.project.id}}. -
Klikněte na Uložit.
Okno se zavře a parametry pro akci se uloží
-
-
Výchozí kód jazyka projektu je vyžadován k vytvoření zakázky předáním ID do akce
. AkceVytvořit zakázku
přijme vstup ve formátu JSON, aplikuje zadaný filtrovat a poté znovu vygeneruje výstup JSONTransform JSON with jq
-
Na záložka v okně vyhledejte Phrase-jq.
Přetáhněte blok akce
pod akciTransform JSON with jq
a propojte je.seznam kód jazyka
-
Otevřete okno pro akci
Transform JSON with jq. -
Vybrat z rozbalovacího pole .
-
Klikněte na ikonu odkazu
pro pole a Vybrat akci
.seznam kód jazyka
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.Zadejte výraz
{{@.outputs.result}}do pole . -
Klikněte na ikonu odkazu
u pole a Vybrat akci
.seznam kód jazyka
Odkaz zezelená a pole lze upravit.
-
Je vyžadován filtrovat seznam kód jazyka, který vrací nový seznam obsahující všechny prvky, kde je vlastnost
defaulttrue.Na projekt může být pouze jeden výchozí kód jazyka a seznam má jeden identifikovatelný a povinný prvek. K tomuto prvku se přistupuje přímo pomocí syntaxe pole
.[0].Zadejte výraz
map(select(.default))|.[0]do pole . -
Klikněte na Uložit.
Okno se zavře a parametry pro akci se uloží
-
-
Akci
lze nyní nakonfigurovat a bude použít vzory z předchozích bloků.vytvořit zakázka
-
Klikněte na ikonu odkazu
pro pole a vyberte akci
.Fetch access tokens
Odkaz zezelená a pole lze upravit.
Zadejte výraz
{{$.tokens.strings_token}}. -
Klikněte na ikonu odkazu
pro 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 Vybrat akci
Transform JSON with jq.Odkaz zezelená a pole lze upravit.
Zadejte výraz
{{@.outputs.result}}. -
Datum splatnosti lze vypočítat pomocí funkcí sprig nebo Expr, ale pro účely tohoto příkladu bude použít pevně zakódované datum, kterému rozumí API.
Do pole zadejte 2023-12-31T12:00:00Z.
-
Klikněte na Uložit.
Konfigurace je uložena a podrobnosti lze zobrazit v záložka .
-
-
Každá akce může mít jednu nebo více podmínek kombinovaných pomocí logických
ANDaOR. Tyto podmínky jsou vyhodnocovány za běhu a akce a její podřízené položky se provedou pouze v případě, že podmínka vyhodnotí jako true.Aby se to projevilo v příkladu, zatímco máte vybranou akci
, klikněte na upravit podmínky ze záložka nebo klikněte pravým tlačítkem na blok a vybrat upravit podmínky.vytvořit zakázka
Otevře se okno .
-
Podle vzorů z předchozích bloků propojte pole se spouštěčem
a zadejte výrazuploads:create
{{$.upload.tag}}. -
Vybrat NOT z prvního rozevíracího seznam pro obrácení tvrzení.
-
Vybrat IsNull z rozevíracího seznam .
-
Klikněte na Uložit.
Podmínka je prezentována na záložka .
Pracovní postup se v tomto bodě zastaví, pokud nahrát neobsahuje tag (což znamená, že nebyly žádné nové/aktualizované klíče/překlady).
-
-
Pro zakázku jsou nyní vyžadovány cílové kódy jazyka. Pro účely tohoto příkladu budou vytvořeny dva kódy jazyka; jeden pro španělštinu (es-ES) a jeden pro němčinu (de-DE). Kódy jazyka budou přidány do dvou akcí
v okně jako ve fázi 3.Transformovat JSON pomocí jq
-
Do pole obou akcí zadejte výraz
{{@.outputs.result}}, propojte jej s akcía parametr Uložit.Seznam kódů jazyka
-
Do pole jedné akce zadejte výraz
map(Vybrat(.name == \"es-ES\"))|.[0]a propojte jej s akcí.Seznam kódů jazyka
Uložit parametr.
-
Ve druhé akci zadejte výraz
map(Vybrat(.name == \"de-DE\"))|.[0]a propojte jej s akcí.Seznam kódů jazyka
Uložit parametr.
-
-
Kódy jazyka budou nyní aplikovány na vytvoření zakázky.
Nakonfigurujte dvě akce
se stejnými vzory, které byly definovány dříve.Přidat cílový kód jazyka k zakázce
-
Zakázku lze nyní spustit.
Nakonfigurujte akci
se stejnými vzory, jaké byly definovány dříve.Spustit zakázku