I cicli possono essere implementati all'interno di un flusso di lavoro per ripetere un insieme di attività in base a condizioni definite.
I cicli vengono eseguiti in sequenza. Un massimo di 4 passaggi può essere eseguito in parallelo.
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 :
-
withSequence
-
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 .
-
Clicca Modifica loop.
Le opzioni di configurazione sono presentate.
-
Dal campo , seleziona conSequenza.
-
Inserisci il numero di iterazioni del loop nel campo .
-
Facoltativamente, inserisci un valore da cui il loop dovrebbe iniziare e/o finire.
-
Clicca Salva loop.
-
Dalla configurazione , clicca Modifica parametri.
Le opzioni di configurazione sono presentate.
-
Nel campo , inserisci
{{ @item }}e clicca Salva parametri.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 loop saranno:
-
loop list => ["2", "3", "4"] -
{{ @item }} => 2o3o4, in base all'iterazione
Il loop conElementi consente l'iterazione su un elenco di elementi.
Può essere utilizzato quando è necessario eseguire operazioni basate su un elenco di elementi.
Per creare un esempio di loop conElementi, segui questi passaggi:
-
Seleziona un blocco vuoto e apri la configurazione .
-
Clicca Modifica loop.
Le opzioni di configurazione sono presentate.
-
Dal campo , seleziona conElementi
-
Inserisci
ennel campo e clicca +Elemento (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 Salva loop.
-
Dalla configurazione , clicca Modifica parametri.
Le opzioni di configurazione sono presentate.
-
Nel campo , inserisci
{{ @item }}e clicca Salva parametri.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 .
-
Clicca Modifica loop.
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 , inserire quanto segue:
-
-
: nome
-
: Progetto 2
-
-
-
: id
-
: 22
-
Esempio di impostazioni:
-
-
Dalla configurazione , clicca Modifica parametri.
Le opzioni di configurazione sono presentate.
-
Nel campo , inserisci
{{ @item.name }}e clicca Salva parametri. Questo valore sarà convertito durante l'esecuzione.
I risultati di questo ciclo saranno un'iterazione su un elenco di progetti:
-
elenco ciclo=>[ { "name": "Progetto 1", "id": 11 }, { "name": "Progetto 2", "id": 22 } ] -
{{ @item }}=>{ "name": "Progetto 1", "id": 11 } -
{{ @item.name }}=>Project 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 release):
{
"created_at": "2015-01-28T09:52:53Z",
"environments": ["development", "production"],
"id": "abcd1234cdef1234abcd1234cdef1234",
"locales": [
{
"codice": "en-GB",
"id": "abcd1234cdef1234abcd1234cdef1234",
"name": "English"
},
{
"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",
"versione": 1
}
Se le impostazioni del ciclo sono impostate con {{ $.locales }}, allora:
-
elenco ciclo=>[ { "codice": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "name": "English" }, { "id": "abcd5678cdef5678abcd5678cdef5678", "name": "German", "code": "de_DE" } ] -
First
{{ @item }}=>{ "codice": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "name": "English" } -
{{ @item.code }}=>en-GB -
{{ @item.name }}=>Inglese
Oppure, se {{ $.environments }} è riferito, allora:
-
loop list=>["development", "production"] -
{{ @item }}=>sviluppooproduzione