À propos de la ré-exécution de workflows et de travaux
La ré-exécution d’un workflow ou de travaux dans un workflow utilise les mêmes algorithmes GITHUB_SHA
(algorithme SHA de validation) et GITHUB_REF
(référence Git) de l’événement d’origine qui a déclenché l’exécution du workflow. Le workflow utilise les privilèges de l’acteur qui a initialement déclenché le workflow, et non les privilèges de l’acteur qui a initié la réexécutation. Vous pouvez réexécuter un workflow ou des travaux dans un workflow pendant jusqu’à 30 jours après l’exécution initiale. Vous ne pouvez pas réexécuter des travaux dans un workflow une fois que ses journaux ont passé leurs limites de rétention. Pour plus d’informations, consultez « Limites d’utilisation, facturation et administration ». Lorsque vous réexécutez un workflow ou des travaux dans un workflow, vous pouvez activer la journalisation du débogage pour la réexécution. Cela permet d’activer la journalisation des diagnostics de l’exécuteur et la journalisation du débogage par étape pour la réexécution. Pour plus d’informations sur la journalisation du débogage, consultez « Enabling debug logging ».
Ré-exécution de tous les travaux dans un workflow
-
Sur GitHub, accédez à la page principale du référentiel.
-
Sous le nom de votre dépôt, cliquez sur Actions.
-
Dans la barre latérale gauche, cliquez sur le workflow que vous souhaitez afficher.
-
Dans la liste des exécutions de workflow, cliquez sur le nom de l’exécution pour voir le résumé de l’exécution du workflow.
-
Dans le coin supérieur droit du workflow, réexécutez les travaux.
-
Si des travaux ont échoué, sélectionnez le menu déroulant Réexécuter les travaux, puis cliquez sur Réexécuter tous les travaux.
-
Si aucun travail n’a échoué, cliquez sur Réexécuter tous les travaux.
-
-
Si vous le souhaitez, pour activer la journalisation des diagnostics d’exécution et la journalisation des étapes de débogage pour la réexécution, sélectionnez Activer la journalisation du débogage.
-
Cliquez sur Réexécuter les travaux.
Pour plus d’informations sur GitHub CLI, consultez « À propos de GitHub CLI ».
Pour ré-exécuter une exécution de workflow ayant échoué, utilisez la sous-commande run rerun
. Remplacez run-id
par l’ID de l’exécution ayant échoué que vous voulez ré-exécuter. Si vous ne spécifiez pas de run-id
, GitHub CLI retourne un menu interactif pour vous permettre de choisir une exécution échouée récente.
gh run rerun RUN_ID
Pour activer la journalisation des diagnostics de l’exécuteur et la journalisation du débogage par étape pour la réexécution, utilisez l’indicateur --debug
.
gh run rerun RUN_ID --debug
Pour afficher la progression de l’exécution du workflow, utilisez la sous-commande run watch
et sélectionnez l’exécution dans la liste interactive.
gh run watch
Ré-exécution de travaux ayant échoué dans un workflow
Si des travaux d’une exécution de workflow ont échoué, vous pouvez ré-exécuter uniquement les travaux qui ont échoué. Quand vous ré-exécutez les travaux qui ont échoué dans un workflow, une nouvelle exécution de workflow démarre pour tous les travaux ayant échoué et leurs dépendants. Toutes les sorties pour les travaux réussis dans l’exécution de workflow précédente seront utilisées pour la ré-exécution. Tous les artefacts créés dans l’exécution initiale seront disponibles dans la ré-exécution. Toutes les règles de protection du déploiement qui ont été passées lors de l’exécution précédente passeront automatiquement dans la ré-exécution.
-
Sur GitHub, accédez à la page principale du référentiel.
-
Sous le nom de votre dépôt, cliquez sur Actions.
-
Dans la barre latérale gauche, cliquez sur le workflow que vous souhaitez afficher.
-
Dans la liste des exécutions de workflow, cliquez sur le nom de l’exécution pour voir le résumé de l’exécution du workflow.
-
Dans le coin supérieur droit du workflow, sélectionnez le menu déroulant Réexécuter les travaux, puis cliquez sur Réexécuter les travaux ayant échoué.
-
Si vous le souhaitez, pour activer la journalisation des diagnostics d’exécution et la journalisation des étapes de débogage pour la réexécution, sélectionnez Activer la journalisation du débogage.
-
Cliquez sur Réexécuter les travaux.
Pour ré-exécuter les travaux ayant échoué dans une exécution de workflow, utilisez la sous-commande run rerun
avec l’indicateur --failed
. Remplacez run-id
par l’ID de l’exécution pour laquelle vous souhaitez ré-exécuter les travaux ayant échoué. Si vous ne spécifiez pas de run-id
, GitHub CLI retourne un menu interactif pour vous permettre de choisir une exécution échouée récente.
gh run rerun RUN_ID --failed
Pour activer la journalisation des diagnostics de l’exécuteur et la journalisation du débogage par étape pour la réexécution, utilisez l’indicateur --debug
.
gh run rerun RUN_ID --failed --debug
Ré-exécution d’un travail spécifique dans un workflow
Quand vous ré-exécutez un travail spécifique dans un workflow, une nouvelle exécution de workflow démarre pour le travail et tous les dépendants. Toutes les sorties pour les autres travaux dans l’exécution de workflow précédente seront utilisées pour la ré-exécution. Tous les artefacts créés dans l’exécution initiale seront disponibles dans la ré-exécution. Toutes les règles de protection du déploiement qui ont été passées lors de l’exécution précédente passeront automatiquement dans la ré-exécution.
-
Sur GitHub, accédez à la page principale du référentiel.
-
Sous le nom de votre dépôt, cliquez sur Actions.
-
Dans la barre latérale gauche, cliquez sur le workflow que vous souhaitez afficher.
-
Dans la liste des exécutions de workflow, cliquez sur le nom de l’exécution pour voir le résumé de l’exécution du workflow.
-
Sous la section « Tâches » de la barre latérale gauche, en regard de la tâche que vous souhaitez ré-exécuter, cliquez sur .
-
Si vous le souhaitez, pour activer la journalisation des diagnostics d’exécution et la journalisation des étapes de débogage pour la réexécution, sélectionnez Activer la journalisation du débogage.
-
Cliquez sur Réexécuter les travaux.
Pour ré-exécuter un travail spécifique dans une exécution de workflow, utilisez la sous-commande run rerun
avec l’indicateur --job
. Remplacez job-id
par l’ID du travail que vous voulez ré-exécuter.
gh run rerun --job JOB_ID
Pour activer la journalisation des diagnostics de l’exécuteur et la journalisation du débogage par étape pour la réexécution, utilisez l’indicateur --debug
.
gh run rerun --job JOB_ID --debug
Réexécution de workflows et de travaux avec des workflows réutilisables
Les workflows réutilisables provenant de référentiels publics peuvent être référencés à l’aide d’un SHA, d’une étiquette de mise en production ou d’un nom de branche. Pour plus d’informations, consultez « Réutilisation des workflows ».
Lorsque vous réexécutez un workflow qui utilise un workflow réutilisable et que la référence n’est pas un SHA, il existe des comportements à prendre en compte :
- La réexécution de tous les travaux dans un workflow utilise le workflow réutilisable à partir de la référence spécifiée. Pour plus d’informations sur la réexécution de tous les travaux d’un workflow, consultez « Ré-exécution de workflows et de travaux ».
- La réexécution des travaux ayant échoué ou d’un travail spécifique dans un workflow utilise le workflow réutilisable à partir du même SHA de validation que lors de la première tentative. Pour plus d’informations sur la réexécution des travaux en échec d’un workflow, consultez « Ré-exécution de workflows et de travaux ». Pour plus d’informations sur la réexécution d’un travail spécifique d’un workflow, consultez « Ré-exécution de workflows et de travaux ».
Examen des exécutions de workflow précédentes
Vous pouvez afficher les résultats de vos tentatives précédentes lors de l’exécution d’un workflow. Vous pouvez également afficher les exécutions de workflow précédentes à l’aide de l’API. Pour plus d’informations, consultez « Points de terminaison d’API REST pour les workflows runs ».
-
Sur GitHub, accédez à la page principale du référentiel.
-
Sous le nom de votre dépôt, cliquez sur Actions.
-
Dans la barre latérale gauche, cliquez sur le workflow que vous souhaitez afficher.
-
Dans la liste des exécutions de workflow, cliquez sur le nom de l’exécution pour voir le résumé de l’exécution du workflow.
-
À droite du nom de l'exécution, sélectionnez le menu déroulant Plus récent, puis cliquez sur une tentative d'exécution précédente.