Per continuare con il flusso di lavoro di esempio, sarà necessario configurarlo.
È possibile accedere alla configurazione del blocco facendo clic su Modifica parametri nella scheda 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 pulsante passa a .
Per configurare i blocchi per l'esempio, segui i passaggi riportati di seguito:
-
Aprire la finestra
per l'azione
.Elenco impostazioni locali
-
I campi
e richiederanno valori dinamici che verranno risolti a runtime.-
Fai clic 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 di un'azione di riferimento è:
{{$.path.to.value}}
Con l'output per
che è:recuperare token di accesso
{ "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }
rendendo l'espressione richiesta per l'
{{$.tokens.strings_token}} del
campo . -
Fai clic sull'icona del link
per il campo e seleziona il trigger
.uploads:crea
Il link diventa verde e il campo può essere modificato.
-
L'output del trigger
assomiglia a:uploads:crea
{ "branch": { "name": "my_branch" }, "event": "uploads:crea", "message": "file inizializzato dall'utente 1 carica file.yml nel nome progetto_1672734591_11 all'interno del branch my_branch\n", "progetto": { "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" }, "caricare": { "created_at": "2023-01-03 08:29:48 UTC", "filename": "file.yml", "formato": "yml", "ID": "caricare1", "state": "inizializzato", "riepilogo": {}, "tag": null, "updated_at": "2023-01-03 08:29:48 UTC" }, "user": { "gravatar_uid": "29a2d1baa67d4ea524cf0f247f7bbb94", "id": "9c365b9a6f77c247c3de959f6152b231", "nome": "Joe Sixpack", "username": "user-1" } }
rendendo l'espressione richiesta per l'
{{$.project.id}}
del campo . -
Fai clic su Salva.
La finestra
chiude e i parametri per l'azione vengono salvati
-
-
Per creare un lavoro è necessario avere le impostazioni locali predefinite del progetto passando l'ID all'azione
. L'azioneCrea lavoro
prende in input JSON, applica il filtro specificato e poi esegue nuovamente l'output JSONTrasforma JSON con jq
-
Dalla scheda Frase-jq.
della finestra dei di lavoro, cercaTrascina e rilascia il blocco d’azione
sotto l’azioneTrasforma JSON con jq
per connetterli.Impostazioni locali dell’elenco
-
Apri la finestra
per l'azioneTrasforma JSON con jq
. -
Seleziona
dal campo a discesa . -
Fare clic sull'icona del collegamento
il campo e selezionare l'azione
.Elenco impostazioni locali
Il link diventa verde e il campo può essere modificato.
-
Il campo
prende in considerazione l’inserimento JSON. Una speciale espressione fissa (@
invece di$
) assicura che l'intero output dell'azione a cui fa riferimento venga trasmesso nel campo.Immettere l'espressione
{{@.outputs.result}}
nel campo . -
Fai clic sull'icona del collegamento
per il campo e seleziona l'azione
.Elenco impostazioni locali
Il link diventa verde e il campo può essere modificato.
-
È necessario filtrare l’elenco delle impostazioni locali che restituisce un nuovo elenco contenente tutti gli elementi in cui la proprietà
predefinita
èvera
.Può esistere solo una impostazione locale predefinita per progetto e l'elenco ha un elemento identificabile e obbligatorio. A quell'elemento si accede direttamente con la sintassi dell'array
.[0]
.Inserisci l'espressione
map(select(.default))|.[0]
nel campo . -
Fai clic su Salva.
La finestra
chiude e i parametri per l'azione vengono salvati
-
-
L’azione
può ora essere configurata e userà i modelli dei blocchi precedenti.Crea un lavoro
-
Fai clic 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.
Immettere l'espressione
{{$.tokens.strings_token}}
. -
Fai clic sull'icona del link
per il campo e seleziona il trigger
.uploads:crea
Il link diventa verde e il campo può essere modificato.
Immettere l'espressione
{{$.project.id}}
. -
Fare clic sull’icona del collegamento
nel campo e selezionare l’azione
Trasforma JSON con jq
.Il link diventa verde e il campo può essere modificato.
Immettere 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 codificata compresa dall'API.
Nel campo 2023-12-31T12:00:00Z.
, inserisci -
Fai clic su Salva.
La configurazione è salvata e i dettagli possono essere visualizzati nella scheda
.
-
-
Ogni azione può avere una o più condizioni combinate con
AND
logico eOR
. Queste condizioni vengono valutate in runtime e l'azione e i suoi figli verranno eseguiti solo se la condizione viene valutata come vera.Per rispecchiare ciò nell'esempio, mentre l'azione
è selezionata, fare clic su Modifica condizioni dalla scheda o fare clic sul blocco con il pulsante destro del mouse e selezionare Modifica condizioni.Crea un lavoro
Si apre la finestra
.-
Seguendo i modelli dei blocchi precedenti, collega il campo
agli
trigger e inserisci iluploads:crea
{{$.upload.tag}}
di espressione. -
Selezionare NON dal primo elenco a discesa per invertire l'istruzione.
-
Seleziona IsNull dall'elenco a discesa .
-
Fai clic su Salva.
La condizione viene presentata nella scheda
.
Il flusso di lavoro si interromperà a questo punto se il caricamento non contiene un tag (il che significa che non c'erano chiavi/traduzioni nuove/aggiornate).
-
-
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}}
, collegarsi all’azione
e salvare il parametro.Elenco impostazioni locali
-
Nel campo Jg di un'azione, inserisci l'espressione map(select(.name == "es-ES"))|.[0] e collega l'azione Elenco impostazioni locali.
Salva il parametro.
-
Nella seconda azione, inserire l'espressione
map(select(.name == "de-DE"))|.[0]
e collegarsi all'azione
.Elenco impostazioni locali
Salva il parametro.
-
-
Le impostazioni locali verranno ora applicate alla creazione del lavoro.
Configura i due
con gli stessi modelli definiti in precedenza.Aggiungi impostazioni locali di destinazione a un lavoro
-
Il lavoro può ora essere iniziato.
Configurare l'azione
con gli stessi modelli definiti in precedenza.Avvia un lavoro