Les boucles peuvent être mises en œuvre dans un flux de travaux pour répéter un ensemble de tâches en fonction de conditions définies.
La configuration de la boucle est accessible soit dans l'onglet d'une configuration de bloc, soit en cliquant avec le bouton droit sur un bloc et en sélectionnant .
Les paramètres de la boucle nécessitent une liste de choses sur lesquelles opérer :
-
Valeurs simples et uniques, qui peuvent ensuite être utilisées dans les paramètres de tâche tels que
{{ @item }}. -
Un objet .JSON où chaque élément de l'objet peut être adressé par sa clé, tel que
{{ @item.key }}.
Accéder aux résultats agrégés d'une boucle
La sortie de toutes les itérations peut être accessible sous forme de tableau .JSON une fois la boucle terminée. La sortie de chaque itération doit être un fichier .JSON valide.
Il existe quatre types de boucles qui peuvent être définis et qui sont sélectionnés dans le champ :
-
withSequence
-
withItems
-
withComplexItems
-
withParam
La boucle avecSéquence permet une itération sur une séquence de nombres ou la génération d'une plage de valeurs dans un flux de travaux.
Elle peut être utilisée pour répéter un ensemble d'étapes un nombre spécifique de fois ou pour effectuer des opérations basées sur une plage de valeurs.
Pour créer un exemple de boucle avecSéquence, suivez ces étapes :
-
Sélectionnez un bloc vide et ouvrez la configuration .
-
Cliquez sur Modifier la boucle.
Les options de configuration sont présentées.
-
Dans le champ , sélectionnez avecSéquence.
-
Entrez le nombre d'itérations de boucle dans le champ .
-
Optionnellement, entrez une valeur à partir de laquelle la boucle doit commencer et/ou se terminer.
-
Cliquez sur Enregistrer la boucle.
-
Dans la configuration , cliquez sur Modifier les paramètres.
Les options de configuration sont présentées.
-
Dans le champ , entrez
{{ @item }}et cliquez sur Enregistrer les paramètres.Cette valeur sera convertie à l'exécution.
Par exemple, si le compte est fixé à 3 et que la valeur de départ est 2, les résultats de cette boucle seront :
-
liste de boucle => ["2", "3", "4"] -
{{ @item }} => 2ou3ou4, en fonction de l'itération
La boucle avecItems permet d'itérer sur une liste d'éléments.
Elle peut être utilisée lorsque des opérations doivent être effectuées en fonction d'une liste d'éléments.
Pour créer une boucle d'échantillon avecItems, suivez ces étapes :
-
Sélectionnez un bloc vide et ouvrez la configuration .
-
Cliquez sur Modifier la boucle.
Les options de configuration sont présentées.
-
Dans le champ , sélectionnez avecItems
-
Entrez
endans le champ et cliquez sur +Élément (un autre champ est créé). -
Entrez
dedans le deuxième champ et créez un troisième champ. -
Entrez
frdans le troisième champ et créez un quatrième champ. -
Entrez
usdans le quatrième champ . -
Cliquez sur Enregistrer la boucle.
-
Dans la configuration , cliquez sur Modifier les paramètres.
Les options de configuration sont présentées.
-
Dans le champ , entrez
{{ @item }}et cliquez sur Enregistrer les paramètres.Cette valeur sera convertie à l'exécution.
Les résultats de cette boucle seront une itération sur une liste de codes de langue :
-
liste de boucle => ["en", "de", "fr", "ua"] -
{{ @item }} => enoude .. ua
La boucle avecDesÉlémentsComplexes permet d'itérer sur une liste d'objets.
Elle peut être utilisée lorsque vous devez effectuer des opérations basées sur une liste d'éléments complexes.
Pour créer une boucle d'échantillon avecDesÉlémentsComplexes, suivez ces étapes :
-
Sélectionnez un bloc vide et ouvrez la configuration .
-
Cliquez sur Modifier la boucle.
Les options de configuration sont présentées.
-
Dans le champ , sélectionnez avecDesÉlémentsComplexes
-
Cliquez sur +Clé:valeur pour ajouter une deuxième clé.
-
Pour , entrez les informations suivantes :
-
-
: nom
-
: Projet 1
-
-
-
: identifiant
-
: 11
-
-
-
Cliquez sur +Objet pour ajouter un deuxième objet et +Clé:valeur pour une deuxième clé.
-
Pour , entrez les informations suivantes :
-
-
: nom
-
: Projet 2
-
-
-
: identifiant
-
: 22
-
Exemple de paramètres :
-
-
Dans la configuration , cliquez sur Modifier les paramètres.
Les options de configuration sont présentées.
-
Dans le champ , entrez
{{ @item.name }}et cliquez sur Enregistrer les paramètres. Cette valeur sera convertie à l'exécution.
Les résultats de cette boucle seront une itération sur une liste de projets :
-
liste de boucle=>[ { "name": "Project 1", "id": 11 }, { "name": "Project 2", "id": 22 } ] -
{{ @item }}=>{ "name": "Project 1", "id": 11 } -
{{ @item.name }}=>Projet 1 -
{{ @item.id }}=>11
La boucle avecParam permet d'itérer sur une liste dynamique qui est produite par toute tâche ou déclencheur précédent.
Cette boucle est simplement utilisée comme référence dans le champ de paramètre.
Exemple :
Sorties de la tâche (Strings : Publier une version) :
{
"created_at": "2015-01-28T09:52:53Z",
"environments": ["development", "production"],
"id": "abcd1234cdef1234abcd1234cdef1234",
"locales": [
{
"code": "en-GB",
"id": "abcd1234cdef1234abcd1234cdef1234",
"nom": "Anglais"
},
{
"id": "abcd5678cdef5678abcd5678cdef5678",
"name": "German",
"code": "de_DE"
}
],
"platforms": ["android"],
"projet": {
"created_at": "2015-01-28T09:52:53Z",
"id": "abcd1234cdef1234abcd1234cdef1234",
"main_format": "xml",
"name": "Mon projet Android",
"updated_at": "2015-01-28T09:52:53Z"
},
"updated_at": "2015-01-28T09:52:53Z",
"version": 1
}
Si les paramètres de boucle sont définis avec {{ $.locales }}, alors :
-
liste de boucle=>[ { "code": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "nom": "Anglais" }, { "id": "abcd5678cdef5678abcd5678cdef5678", "name": "German", "code": "de_DE" } ] -
Premier
{{ @item }}=>{ "code": "en-GB", "id": "abcd1234cdef1234abcd1234cdef1234", "nom": "Anglais" } -
{{ @item.code }}=>en-GB -
{{ @item.name }}=>Anglais
Ou si {{ $.environments }} est référencé, alors :
-
liste de boucle=>["développement", "production"] -
{{ @item }}=>développementouproduction