Skip to content

Latest commit

 

History

History
38 lines (28 loc) · 2.49 KB

ex04.md

File metadata and controls

38 lines (28 loc) · 2.49 KB

Exercice #4

But de l'exercice : Création et utilisation d'une action

TODO

Votre image est maintenant disponible sur un registre Docker, mais personne n'est au courant.
Ca pourrait pourtant intéresser d'autres personnes de savoir qu'une mise à jour a été effectué.
Pour pallier ce point, nous allons les avertir sur Slack.

Pour cela, envoyer un message sur le channel slack du slot, en indiquant que vous (auteur du commit git) avez publié une image docker (avec son nom complet)

Le code d'une action pour notifier Slack est disponible sur la branche feature/slack-notif
Vous pouvez le récupérer dans votre branche.

Après avoir jeté un oeil sur le code source, vous vous apercevrez que le fichier qui permet de décrire l'action est fortement incomplet : action.yml
Si vous la testez en l'état, vous aurez des erreurs (Allez-y, voir les erreurs remontées ne fait jamais de mal).
Je vous invite donc à compléter le contenu de ce fichier et à tester l'action dans votre workflow.

Pour aller plus loin, vous pouvez également afficher des messages différents selon que votre pipeline soit en succès ou en erreur.

Contraintes

  • Il n'est pas nécessaire de publier l'action pour qu'elle fonctionne. Dans notre cas, nous l'utiliserons en local.
  • Pour publier dans SLACK, vos administrateurs préférés vous mettent à disposition un token :
    • SLACK_BOT_TOKEN qui contient le token nécessaire à l'authentification du bot

Un indice chez vous !

  • Pour récupérer juste une partie d'une autre branche, vous pouvez tout simplement utiliser git checkout en spécifiant le chemin des fichiers souhaités : git checkout <branch> <path>

Documentation

La bible des actions github se trouve ici : https://help.github.com/en/github/automating-your-workflow-with-github-actions

Liste des exercices

Readme : Présentation de l'exercice
Exercice 1 : Construction de l'application (concepts : build natif & build docker, restrictions de build)
Exercice 2 : Création d'une image docker (concepts : utilisation des variables d'environnement)
Exercice 3 : Publication de l'image sur un registre docker (concepts : création et utilisation de secrets)
Exercice 4 : Affichage d'une notification dans Slack (concepts : création & utilisation d'une action, utilisation des outputs)
Exercice 5 : Construction de l'application avec de multiples versions de nodejs (concepts : utilisation des stratégies matricielles)