Introduction
Ce tutoriel montre comment utiliser l’action imjohnbo/issue-bot
pour créer un problème sur une base régulière. Par exemple, vous pouvez créer un problème chaque semaine afin de l’utiliser comme ordre du jour d’une réunion d’équipe.
Dans le tutoriel, vous allez d’abord créer un fichier de workflow qui utilise l’action imjohnbo/issue-bot
. Ensuite, vous personnaliserez le workflow en fonction de vos besoins.
Création du workflow
-
Choisissez un dépôt où vous souhaitez appliquer ce workflow de gestion de projet. Vous pouvez utiliser un dépôt existant auquel vous avez accès en écriture ou en créer un nouveau. Pour plus d’informations sur la création d’un dépôt, consultez « Création d’un dépôt ».
-
Dans votre dépôt, créez un fichier nommé
.github/workflows/YOUR_WORKFLOW.yml
, enYOUR_WORKFLOW
remplaçant par un nom de votre choix. Il s’agit d’un fichier de workflow. Pour plus d’informations sur la création de nouveaux fichiers dans GitHub, consultez « Création de fichiers ». -
Copiez le contenu YAML suivant dans votre fichier de workflow.
YAML # Ce workflow utilise des actions qui ne sont pas certifiées par GitHub. # Elles sont fournies par un tiers et régies par # des conditions d’utilisation du service, une politique de confidentialité et un support distincts. # documentation en ligne. # GitHub recommande d’épingler les actions à un SHA de commit. # Pour obtenir une version plus récente, vous devez mettre à jour le SHA. # Vous pouvez également référencer une balise ou une branche, mais l’action peut changer sans avertissement. name: Weekly Team Sync on: schedule: - cron: 20 07 * * 1 jobs: create_issue: name: Create team sync issue runs-on: ubuntu-latest permissions: issues: write steps: - name: Create team sync issue uses: imjohnbo/issue-bot@3d96848fb5e9a4a473bb81ae62b4b4866a56e93a with: assignees: "monalisa, doctocat, hubot" labels: "weekly sync, docs-team" title: "Team sync" body: | ### Agenda - [ ] Start the recording - [ ] Check-ins - [ ] Discussion points - [ ] Post the recording ### Discussion Points Add things to discuss below - [Work this week](https://github.com/orgs/github/projects/3) pinned: false close-previous: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Ce workflow utilise des actions qui ne sont pas certifiées par GitHub. # Elles sont fournies par un tiers et régies par # des conditions d’utilisation du service, une politique de confidentialité et un support distincts. # documentation en ligne. # GitHub recommande d’épingler les actions à un SHA de commit. # Pour obtenir une version plus récente, vous devez mettre à jour le SHA. # Vous pouvez également référencer une balise ou une branche, mais l’action peut changer sans avertissement. name: Weekly Team Sync on: schedule: - cron: 20 07 * * 1 jobs: create_issue: name: Create team sync issue runs-on: ubuntu-latest permissions: issues: write steps: - name: Create team sync issue uses: imjohnbo/issue-bot@3d96848fb5e9a4a473bb81ae62b4b4866a56e93a with: assignees: "monalisa, doctocat, hubot" labels: "weekly sync, docs-team" title: "Team sync" body: | ### Agenda - [ ] Start the recording - [ ] Check-ins - [ ] Discussion points - [ ] Post the recording ### Discussion Points Add things to discuss below - [Work this week](https://github.com/orgs/github/projects/3) pinned: false close-previous: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
Personnalisez les paramètres dans votre fichier de workflow :
- Modifiez la valeur de
on.schedule
pour déterminer quand vous souhaitez que ce workflow s’exécute. Dans l’exemple ci-dessus, le workflow s’exécutera tous les lundis à 7h20 UTC. Pour plus d’informations sur les workflows planifiés, consultez « Événements qui déclenchent des flux de travail ». - Remplacez la valeur de
assignees
par la liste des noms d’utilisateur GitHub que vous souhaitez attribuer au problème. - Remplacez la valeur de
labels
par la liste des étiquettes que vous souhaitez appliquer au problème. - Remplacez la valeur de
title
par le titre que vous souhaitez attribuer au problème. - Remplacez la valeur de
body
par le texte que vous souhaitez afficher dans le corps du message. Le caractère|
vous permet d’utiliser une valeur multiligne pour ce paramètre. - Si vous souhaitez épingler ce problème dans votre référentiel, définissez
pinned
surtrue
. Pour plus d’informations sur les problèmes épinglés, consultez « Épinglage d’un problème à votre dépôt ». - Si vous souhaitez fermer le problème précédent généré par ce workflow chaque fois qu’un nouveau problème est créé, définissez
close-previous
surtrue
. Le workflow ferme alors le problème le plus récent dont les étiquettes sont définies dans le champlabels
. Pour éviter de fermer le mauvais problème, utilisez une étiquette unique ou une combinaison d’étiquettes.
- Modifiez la valeur de
-
Commitez votre fichier de workflow dans la branche par défaut de votre dépôt. Pour plus d’informations, consultez « Création de fichiers ».
Résultats attendus
En fonction du paramètre schedule
(par exemple, tous les lundis à 7h20 UTC), votre workflow crée un nouveau problème avec les personnes responsables, les étiquettes, le titre et le corps que vous avez spécifiés. Si vous définissez pinned
sur true
, le workflow épingle le problème dans votre référentiel. Si vous définissez close-previous
sur true, le workflow ferme le problème le plus récent doté des étiquettes correspondantes.
Remarque : L’événement schedule
peut être retardé pendant les périodes où les charges des exécutions de workflows GitHub Actions sont élevées. Les périodes de charges élevées incluent le début de chaque heure. Si la charge est suffisamment élevée, certains travaux en file d’attente peuvent être supprimés. Pour réduire le risque de retard, planifiez l’exécution de votre workflow à un autre moment dans l’heure.
Vous pouvez consulter l’historique de vos exécutions de workflow pour afficher régulièrement cette exécution de workflow. Pour plus d’informations, consultez « Affichage de l’historique des exécutions de workflows ».
Étapes suivantes
- Pour en savoir plus sur les autres possibilités offertes par l’action
imjohnbo/issue-bot
, comme la rotation des personnes responsables ou l’utilisation d’un modèle de problème, consultez la documentation de l'actionimjohnbo/issue-bot
. - Recherchez sur GitHub des exemples de workflow utilisant cette action.