Pour continuer avec le flux de travaux d'exemple, il devra être configuré.
La configuration du bloc est accessible en cliquant sur Modifier les paramètres dans l'onglet , ou en cliquant avec le bouton droit sur le bloc et en sélectionnant Modifier les paramètres pour ouvrir la fenêtre . Une fois qu'un bloc a des paramètres, le bouton passe à .
Pour configurer les blocs pour l'exemple, suivez ces étapes :
-
Ouvrez la fenêtre pour l'action
.Liste des paramètres linguistiques
-
Les champs et nécessiteront des valeurs dynamiques qui sont résolues à l'exécution.
-
Cliquez sur l'icône de lien
pour le champ et sélectionnez l'action
.Récupérer les jetons d’accès
Le lien devient vert et le champ peut être modifié.
-
La syntaxe pour accéder aux propriétés d'un déclencheur ou d'une action référencée est :
{{$.path.to.value}}Avec la sortie pour
étant :Récupérer les jetons d’accès
{ "tokens": {"strings_token": "STRINGS_TOKEN", "tms_token": "TMS_TOKEN"} }rendant l'expression requise pour le champ
{{$.tokens.strings_token}}. -
Cliquez sur l'icône de lien
pour le champ et sélectionnez le déclencheur
.uploads:create
Le lien devient vert et le champ peut être modifié.
-
La sortie du déclencheur
ressemble à :uploads:create
{ "branch": { "name": "my_branch" }, "event": "uploads:create", "message": "user-1 a initialisé le chargement du fichier file.yml dans le projet name_1672734591_11 au sein de la branche 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" } }rendre l'expression requise pour le champ
{{$.project.id}}. -
Cliquez sur Enregistrer.
La fenêtre se ferme et les paramètres de l'action sont enregistrés.
-
-
Le paramètre linguistique par défaut du projet est requis pour créer une tâche en passant l'identifiant à l'action
. L'actionCréer une tâche
prend une entrée JSON, applique le filtre spécifié, puis génère à nouveau du JSON en sortie.Transformer JSON avec jq
-
Depuis l'onglet dans la fenêtre , recherchez phrase-jq.
Faites glisser et déposez le bloc d'action
sous le bloc d'actionTransformer JSON avec jq
afin de les connecter.liste des paramètres linguistiques
-
Ouvrez la fenêtre pour l'action
Transformer JSON avec jq. -
Sélectionnez dans le champ déroulant .
-
Cliquez sur l'icône de lien
pour le champ et sélectionnez l'action
.liste des paramètres linguistiques
Le lien devient vert et le champ peut être modifié.
-
Le champ prend la saisie JSON. Une expression fixe spéciale (
@au lieu de$) garantit que toute la sortie de l'action référencée est passée dans le champ.Entrez l'expression
{{@.outputs.result}}dans le champ . -
Cliquez sur l'icône de lien
pour le champ et sélectionnez l'action
.liste des paramètres linguistiques
Le lien devient vert et le champ peut être modifié.
-
Un filtre de la liste des paramètres régionaux qui renvoie une nouvelle liste contenant tous les éléments où la propriété
defaultesttrueest requis.Il ne peut y avoir qu'un seul paramètre linguistique par défaut par projet et la liste comporte un élément identifiable et requis. Cet élément est directement accessible avec la syntaxe de tableau
.[0].Entrez l'expression
map(select(.default))|.[0]dans le champ . -
Cliquez sur Enregistrer.
La fenêtre se ferme et les paramètres de l'action sont enregistrés.
-
-
L'action
peut maintenant être configurée et utilisera des modèles des blocs précédents.Créer une tâche
-
Cliquez sur l'icône de lien
pour le champ et sélectionnez l'action
.Récupérer les jetons d’accès
Le lien devient vert et le champ peut être modifié.
Entrez l'expression
{{$.tokens.strings_token}}. -
Cliquez sur l'icône de lien
pour le champ et sélectionnez le déclencheur
.uploads:create
Le lien devient vert et le champ peut être modifié.
Entrez l'expression
{{$.project.id}}. -
Cliquez sur l'icône de lien
pour le champ et sélectionnez l'action
Transformer JSON avec jq.Le lien devient vert et le champ peut être modifié.
Entrez l'expression
{{@.outputs.result}}. -
La date d'échéance peut être calculée avec des fonctions sprig ou Expr, mais pour les besoins de cet exemple, une date codée en dur comprise par l'API sera utilisée.
Dans le champ , entrez 2023-12-31T12:00:00Z.
-
Cliquez sur Enregistrer.
La configuration est enregistrée et les détails peuvent être consultés dans l'onglet .
-
-
Chaque action peut avoir une ou plusieurs conditions combinées avec les opérateurs logiques
ETetOU. Ces conditions sont évaluées en temps d'exécution et l'action et ses enfants ne s'exécuteront que si la condition est vraie.Pour refléter cela dans l'exemple, tout en ayant l'action
sélectionnée, cliquez sur Modifier les conditions depuis l'onglet ou faites un clic droit sur le bloc et sélectionnez Modifier les conditions.Créer une tâche
La fenêtre s'ouvre.
-
En suivant les modèles des blocs précédents, liez le champ au déclencheur
et entrez l'expressionuploads:créer
{{$.upload.tag}}. -
Sélectionnez NON dans la première liste déroulante pour inverser l'énoncé.
-
Sélectionnez IsNull dans la liste déroulante .
-
Cliquez sur Enregistrer.
La condition est présentée dans l'onglet .
Le flux de travaux s'arrêtera à ce point si le chargement ne contient pas de balise (ce qui signifie qu'il n'y avait pas de nouvelles clés ou traductions mises à jour).
-
-
Les paramètres régionaux cibles sont maintenant requis pour la tâche. Pour les besoins de l'exemple, deux paramètres régionaux seront créés ; un pour l'espagnol (es-ES) et un pour l'allemand (de-DE). Les paramètres régionaux seront ajoutés aux deux actions
dans la fenêtre comme dans l'étape 3.Transformer JSON avec jq
-
Dans le champ des deux actions, saisissez l'expression
{{@.outputs.result}}, liez à l'actionet enregistrez le paramètre.Liste locales
-
Dans le champ d'une action, saisissez l'expression
map(select(.name == "es-ES"))|.[0]et liez à l'action.Liste locales
Enregistrez le paramètre.
-
Dans la deuxième action, entrez l'expression
map(select(.name == "de-DE"))|.[0]et liez à l'action.Liste locales
Enregistrez le paramètre.
-
-
Les paramètres régionaux seront maintenant appliqués à la création de tâches.
Configurez les deux actions
avec les mêmes modèles définis précédemment.Ajouter une locale cible à une tâche
-
La tâche peut maintenant être démarrée.
Configurez l’action
avec les mêmes modèles que ceux définis précédemment.Démarrer une tâche