Per continuare con il flusso di lavoro di esempio, sarà necessario configurarlo.
La configurazione del blocco può essere accessibile cliccando su Modifica parametri nella scheda , oppure facendo clic destro sul blocco e selezionando Modifica parametri per aprire la finestra . Una volta che un blocco ha parametri, il pulsante cambia in .
Per configurare i blocchi per l'esempio, segui questi passaggi:
-
Apri la finestra per l'azione
.Elenco località
-
I campi e richiederanno valori dinamici che vengono risolti durante l'esecuzione.
-
Clicca sull'icona del link
per il campo e seleziona l'azione
.Recupera token di accesso
Il link diventa verde e il campo può essere modificato.
-
La sintassi per accedere alle proprietà di un trigger o azione referenziata è:
{{$.path.to.value}}Con l'output per
che è:Recupera token di accesso
{ "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }rendendo l'espressione necessaria per il campo
{{$.tokens.strings_token}}. -
Clicca sull'icona del link
per il campo e seleziona il trigger
.uploads:create
Il link diventa verde e il campo può essere modificato.
-
L'output del trigger
assomiglia a:uploads:create
{ "branch": { "name": "my_branch" }, "evento": "uploads:create", "messaggio": "utente-1 ha inizializzato il caricamento del file file.yml nel progetto nome_1672734591_11 all'interno del 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" } }creando l'espressione richiesta per il campo
{{$.project.id}}. -
Clicca su Salva.
La finestra si chiude e i parametri per l'azione vengono salvati
-
-
Il locale predefinito del progetto è necessario per creare un lavoro passando l'ID all'azione
. L'azioneCrea Lavoro
prende un input JSON, applica il filtro specificato e poi restituisce nuovamente JSONTrasforma JSON con jq
-
Dalla scheda nella finestra , cerca frase-jq.
Trascina e rilascia il blocco dell'azione
sotto l'azioneTrasforma JSON con jq
per collegarli.elenco impostazioni locali
-
Apri la finestra per l'azione
Trasforma JSON con jq. -
Seleziona dal campo a discesa .
-
Clicca sull'icona del link
per il campo e seleziona l'azione
.elenco impostazioni locali
Il link diventa verde e il campo può essere modificato.
-
Il campo prende l'input JSON. Un'espressione fissa speciale (
@invece di$) garantisce che l'intero output dell'azione referenziata venga passato nel campo.Inserisci l'espressione
{{@.outputs.result}}nel campo . -
Clicca sull'icona del link
per il campo e seleziona l'azione
.elenco impostazioni locali
Il link diventa verde e il campo può essere modificato.
-
È necessario un filtro dell'elenco delle impostazioni locali che restituisce un nuovo elenco contenente tutti gli elementi in cui la proprietà
predefinitoètrue.Può esserci solo un locale predefinito per progetto e l'elenco ha un elemento identificabile e richiesto. Quell'elemento è accessibile direttamente con la sintassi dell'array
.[0].Inserisci 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 utilizzerà modelli dai blocchi precedenti.Crea un lavoro
-
Clicca sull'icona del link
per il campo e seleziona l'azione
.Recupera token di accesso
Il link diventa verde e il campo può essere modificato.
Inserisci l'espressione
{{$.tokens.strings_token}}. -
Clicca sull'icona del link
per il campo e seleziona il trigger
.uploads:create
Il link diventa verde e il campo può essere modificato.
Inserisci l'espressione
{{$.project.id}}. -
Fai clic sull'icona del link
per il campo e seleziona l'azione
Trasforma JSON con jq.Il link diventa verde e il campo può essere modificato.
Inserisci l'espressione
{{@.outputs.result}}. -
La data di scadenza può essere calcolata con funzioni sprig o Expr, ma per scopi di questo esempio verrà utilizzata una data hardcoded compresa dall'API.
Nel campo , inserisci 2023-12-31T12:00:00Z.
-
Clicca su Salva.
La configurazione è salvata e i dettagli possono essere visualizzati nella scheda .
-
-
Ogni azione può avere una o più condizioni combinate con logico
EeO. Queste condizioni vengono valutate in tempo reale e l'azione e i suoi figli verranno eseguiti solo se la condizione è vera.Per riflettere questo nell'esempio, mentre hai selezionato l'azione
, fai clic su Modifica condizioni dalla scheda o fai clic con il tasto destro sul blocco e seleziona Modifica condizioni.Crea un lavoro
Si apre la finestra .
-
Seguendo i modelli dai blocchi precedenti, collega il campo al trigger
e inserisci l'espressioneuploads:create
{{$.upload.tag}}. -
Seleziona NON dal primo elenco a discesa per invertire l'affermazione.
-
Seleziona IsNull dall'elenco a discesa .
-
Clicca su Salva.
La condizione è presentata nella scheda .
Il flusso di lavoro si fermerà a questo punto se il caricamento non contiene un tag (significa che non ci sono nuove chiavi/traduzioni aggiornate).
-
-
Le località target sono ora richieste per il lavoro. Per scopi dell'esempio, verranno create due località; una per lo spagnolo (es-ES) e una per il tedesco (de-DE). Le località verranno aggiunte alle due azioni
nella finestra come nel passaggio 3.Trasforma JSON con jq
-
Nel campo di entrambe le azioni, inserisci l'espressione
{{@.outputs.result}}, collega all'azionee salva il parametro.Elenco località
-
Nel campo di un'azione, inserisci l'espressione
map(select(.name == "es-ES"))|.[0]e collega all'azione.Elenco località
Salva il parametro.
-
Nella seconda azione, inserisci l'espressione
map(select(.name == "de-DE"))|.[0]e collega all'azione.Elenco delle impostazioni locali
Salva il parametro.
-
-
Le impostazioni locali saranno ora applicate alla creazione del lavoro.
Configura le due azioni
con gli stessi schemi precedentemente definiti.Aggiungi una destinazione locale a un lavoro
-
Il lavoro può ora essere avviato.
Configura l'azione
con gli stessi schemi definiti in precedenza.Avvia un lavoro