I cicli possono essere implementati all'interno di un flusso di lavoro per ripetere un insieme di attività in base a condizioni definite.
La configurazione del ciclo è accessibile nella scheda di una configurazione del blocco, oppure facendo clic con il tasto destro su un blocco e selezionando .
Le impostazioni del ciclo richiedono un elenco di elementi su cui operare:
-
Valori semplici e singoli, che possono essere utilizzati nei parametri delle attività come
{{ @item }}. -
Un oggetto .JSON in cui ogni elemento dell'oggetto può essere indirizzato dalla sua chiave come
{{ @item.key }}.
Accesso ai risultati aggregati di un ciclo
L'output di tutte le iterazioni può essere accessibile come un array .JSON una volta completato un ciclo. L'output di ogni iterazione deve essere un file .JSON valido.
Ci sono quattro tipi di ciclo che possono essere definiti e sono selezionati nel campo :
-
conSequenza
-
conElementi
-
withComplexItems
-
conParam
Il ciclo conSequenza consente un'iterazione su una sequenza di numeri o la generazione di un intervallo di valori all'interno di un flusso di lavoro.
Può essere utilizzato per ripetere un insieme di passaggi un numero specifico di volte o per eseguire operazioni basate su un intervallo di valori.
Per creare un ciclo di esempio conSequenza, segui questi passaggi:
-
Seleziona un blocco vuoto e apri la configurazione .
-
Fai clic su Modifica ciclo.
Le opzioni di configurazione sono presentate.
-
Dal campo , seleziona withSequence.
-
Inserisci il numero di iterazioni del ciclo nel campo .
-
Facoltativamente, inserisci un valore da cui il ciclo dovrebbe partire e/o terminare.
-
Clicca su Save loop.
-
Dalla configurazione , clicca su Edit parameters.
Le opzioni di configurazione sono presentate.
-
Nel campo , inserisci
{{ @item }}e clicca su Save parameters.Questo valore sarà convertito durante l'esecuzione.
Ad esempio, se il conteggio è impostato su 3 e il valore di partenza è 2, i risultati di questo ciclo saranno:
-
loop list => ["2", "3", "4"] -
{{ @item }} => 2o3o4, in base all'iterazione
Il ciclo withItems consente l'iterazione su un elenco di elementi.
Può essere utilizzato quando è necessario eseguire operazioni basate su un elenco di elementi.
Per creare un ciclo di esempio withItems, segui questi passaggi:
-
Seleziona un blocco vuoto e apri la configurazione .
-
Fai clic su Modifica ciclo.
Le opzioni di configurazione sono presentate.
-
Dal campo , seleziona withItems
-
Inserisci
ennel campo e clicca su +Item (un altro campo viene creato). -
Inserisci
denel secondo campo e crea un terzo campo. -
Inserisci
frnel terzo campo e crea un quarto campo. -
Inserisci
usnel quarto campo . -
Clicca su Save loop.
-
Dalla configurazione , clicca su Edit parameters.
Le opzioni di configurazione sono presentate.
-
Nel campo , inserisci
{{ @item }}e clicca su Save parameters.Questo valore sarà convertito durante l'esecuzione.
I risultati di questo ciclo saranno un'iterazione su un elenco di codici lingua:
-
loop list => ["en", "de", "fr", "ua"] -
{{ @item }} => enode .. ua
Il ciclo conElementiComplessi consente di iterare su un elenco di oggetti.
Può essere utilizzato quando è necessario eseguire operazioni basate su un elenco di elementi complessi.
Per creare un ciclo di esempio conElementiComplessi, segui questi passaggi:
-
Seleziona un blocco vuoto e apri la configurazione .
-
Fai clic su Modifica ciclo.
Le opzioni di configurazione sono presentate.
-
Dal campo , seleziona conElementiComplessi
-
Clicca +Chiave:valore per aggiungere una seconda chiave.
-
Per , inserisci quanto segue:
-
-
: nome
-
: Progetto 1
-
-
-
: id
-
: 11
-
-
-
Clicca +Oggetto per aggiungere un secondo oggetto e +Chiave:valore per una seconda chiave.
-
Per , inserisci quanto segue:
-
-
: nome
-
: Progetto 2
-
-
-
: id
-
: 22
-
Esempio di impostazioni:
-
-
Dalla configurazione , clicca su Edit parameters.
Le opzioni di configurazione sono presentate.
-
Nel campo , inserisci
{{ @item.name }}e clicca su Save parameters. Questo valore sarà convertito durante l'esecuzione.
I risultati di questo ciclo saranno un'iterazione su un elenco di progetti:
-
ciclo elenco=>[ { "nome": "Progetto 1", "id": 11 }, { "nome": "Progetto 2", "id": 22 } ] -
{{ @item }}=>{ "nome": "Progetto 1", "id": 11 } -
{{ @item.name }}=>Progetto 1 -
{{ @item.id }}=>11
Il ciclo conParam consente l'iterazione su un elenco dinamico che è l'output di qualsiasi attività o attivazione precedente.
Questo ciclo è utilizzato solo come riferimento nel campo parametro.
Esempio:
Output dell'attività (Stringhe: Pubblica una versione):
{
"created_at": "2015-01-28T09:52:53Z",
"environments": ["development", "production"],
"id": "abcd1234cdef1234abcd1234cdef1234",
"locales": [
{
"code": "en-GB",
"id": "abcd1234cdef1234abcd1234cdef1234",
"nome": "Inglese"
},
{
"id": "abcd5678cdef5678abcd5678cdef5678",
"name": "German",
"code": "de_DE"
}
],
"platforms": ["android"],
"project": {
"created_at": "2015-01-28T09:52:53Z",
"id": "abcd1234cdef1234abcd1234cdef1234",
"main_format": "xml",
"name": "My Android Project",
"updated_at": "2015-01-28T09:52:53Z"
},
"updated_at": "2015-01-28T09:52:53Z",
"version": 1
}
Se le impostazioni del ciclo sono impostate con {{ $.locales }}, allora:
-
ciclo elenco=>[ { "code": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "nome": "Inglese" }, { "id": "abcd5678cdef5678abcd5678cdef5678", "name": "German", "code": "de_DE" } ] -
Primo
{{ @item }}=>{ "code": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "nome": "Inglese" } -
{{ @item.code }}=>en-GB -
{{ @item.name }}=>Inglese
Oppure, se {{ $.environments }} è referenziato, allora:
-
elenco ciclo=>["sviluppo", "produzione"] -
{{ @item }}=>sviluppooproduzione