Per Continua con il flusso di lavoro di esempio, sarà necessario configurarlo.
La configurazione del blocco può essere accedere facendo clic su Modifica parametri nella , oppure facendo clic con il pulsante destro del mouse sul blocco e selezionando Modifica parametri per aprire la finestra . Una volta che un blocco ha dei parametri, il passa a .
Per configurare i blocchi per l'esempio, segui questi passaggi:
-
Apri la finestra per l'azione
.List locales
-
I campi e richiederanno valori dinamici che vengono risolti in fase di esecuzione.
-
Fai clic sull'icona del collegamento
per il campo e seleziona l'azione
.Fetch access tokens
Il collegamento diventa verde e il campo può essere modificare.
-
La sintassi per accedere alle proprietà di un trigger o di un'azione di riferimento è:
{{$.path.to.value}}Con l'output per
che è:Fetch access tokens
{ "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }rendendo l'espressione richiesta per il campo
{{$.tokens.strings_token}}. -
Fai clic sull'icona del collegamento
per il campo e seleziona il trigger
.uploads:create
Il collegamento diventa verde e il campo può essere modificare.
-
L'output del trigger
assomiglia a: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" } }rendendo l'espressione richiesta per il campo
{{$.project.id}}. -
Clicca su Salva.
La finestra si chiude e i parametri per l'azione vengono salvati
-
-
L'impostazioni locali predefinito del progetto è richiesto per Crea un lavoro passando l'ID all'azione
. L'azioneCrea lavoro
accetta un output JSON, applica il filtrare specificato e quindi restituisce nuovamente JSON<5>Transform JSON with jq
-
Dalla scheda nella finestra , cercare Phrase-jq.
Trascinare e rilasciare il blocco azione
sotto l'azione<2>Transform JSON with jq
per collegarli.<5>elenco impostazioni locali
-
Aprire la finestra per l'azione
Transform JSON with jq. -
Seleziona dal campo a discesa .
-
Fare clic sull'icona del collegamento
per il campo e Seleziona l'azione
.<5>elenco impostazioni locali
Il collegamento diventa verde e il campo può essere modificare.
-
Il campo accetta l'output JSON. Un'espressione fissa speciale (
@invece di$) garantisce che l'intero output dell'azione referenziata venga passato nel campo.Inserire l'espressione
{{@.outputs.result}}nel campo . -
Fare clic sull'icona del collegamento
per il campo e Seleziona l'azione
.<5>elenco impostazioni locali
Il collegamento diventa verde e il campo può essere modificare.
-
È richiesto un filtrare dell'elenco impostazioni locali che restituisca un nuovo elenco contenente tutti gli elementi in cui la proprietà
defaultètrue.Può esserci solo un impostazioni locali predefinito per progetto e l'elenco ha un elemento identificabile e richiesto. Tale elemento viene acceduto direttamente con la sintassi di matrice
.[0].Inserire l'espressione
map(select(.default))|.[0]nel campo . -
Clicca su Salva.
La finestra si chiude e i parametri per l'azione vengono salvati
-
-
L'azione
può ora essere configurata e userà modelli dai blocchi precedenti.creare un lavoro
-
Fai clic sull'icona del collegamento
per il campo e seleziona l'azione
.Fetch access tokens
Il collegamento diventa verde e il campo può essere modificare.
Inserire l'espressione
{{$.tokens.strings_token}}. -
Fai clic sull'icona del collegamento
per il campo e seleziona il trigger
.uploads:create
Il collegamento diventa verde e il campo può essere modificare.
Inserire l'espressione
{{$.project.id}}. -
Fare clic sull'icona del collegamento
per il campo e Seleziona l'azione
Trasforma JSON con jq.Il collegamento diventa verde e il campo può essere modificare.
Inserire l'espressione
{{@.outputs.result}}. -
La data di scadenza può essere calcolata con funzioni sprig o Expr, ma ai fini di questo esempio verrà utilizzata una data hardcoded compresa dall'API.
Nel campo , inserire 2023-12-31T12:00:00Z.
-
Clicca su Salva.
La configurazione viene salvata e i dettagli possono essere visualizzati nella scheda .
-
-
Ogni azione può avere una o più condizioni combinate con
ANDeORlogici. Queste condizioni vengono valutate in fase di esecuzione e l'azione e i suoi figli verranno eseguiti solo se la condizione viene valutata come vera.Per riflettere ciò nell'esempio, mentre l'azione
è selezionata, fare clic su Modificare le condizioni dalla scheda o fare clic con il tasto destro del mouse sul blocco e Seleziona Modificare le condizioni.creare un lavoro
Si apre la finestra .
-
Seguendo i modelli dai blocchi precedenti, collegare il campo al trigger
e inserire l'espressioneuploads:creare
{{$.upload.tag}}. -
Selezionare NOT dal primo elenco a discesa per invertire l'istruzione.
-
Selezionare IsNull dall'elenco a discesa .
-
Clicca su Salva.
La condizione viene presentata nella scheda .
Il flusso di lavoro si fermerà a questo punto se il caricamento non contiene un tag (il che significa che non c'erano nuove/aggiornate chiavi/traduzioni).
-
-
Le impostazioni locali di destinazione sono ora richieste per il lavoro. Ai fini dell'esempio, verranno create due impostazioni locali; una per lo spagnolo (es-ES) e una per il tedesco (de-DE). Le impostazioni locali verranno aggiunte alle due azioni
nella finestra come nel passaggio 3.Trasforma JSON con jq
-
Nel campo di entrambe le azioni, inserire l'espressione
{{@.outputs.result}}, collegare all'azionee Salva il parametro.elenco impostazioni locali
-
Nel campo di un'azione, inserire l'espressione
map(Seleziona(.name == \"es-ES\"))|.[0]e collegare all'azione.elenco impostazioni locali
Salvare il parametro.
-
Nella seconda azione, inserire l'espressione
map(Seleziona(.name == \"de-DE\"))|.[0]e collegare all'azione.elenco impostazioni locali
Salvare il parametro.
-
-
Le impostazioni locali verranno ora applicate alla creazione del lavoro.
Configurare le due azioni
con gli stessi pattern definiti in precedenza.aggiungere una destinazione impostazioni locali a un lavoro
-
Il lavoro può ora essere avviato.
Configurare l'azione
con gli stessi pattern definiti in precedenza.Avviare un lavoro