Ce projet en mono-repo est écrit en TypeScript et est divisé en 3 sous-repos:
- Application react (@sample/app): packages/app
- Composants react (@sample/components): packages/components
- Serveur react (@sample/server): packages/server
Créer un projet Gitlab public et cloner dessus le projet de l'examen.
Lire les scripts dans les fichiers package.json et générer des fichiers Dockerfile pour chaque sous-repo.
Générer un fichier Jenkinsfile qui permet de réaliser les étapes suivates:
- Auth: s'authentier sur Dockehub
- App: tester, générer une image Docker pour l'application react et faire le push sur Dockherhub uniquement en cas de changement du sous-repo
- Components: tester, générer une image Docker pour les composants react et faire le push sur Dockherhub uniquement en cas de changement du sous-repo
- Server: tester, générer une image Docker pour le serveur react et faire le push sur Dockherhub uniquement en cas de changement du sous-repo
- CleanUp: se déconnecter de DockerHub et effacer les images Docker locales
Dans Google Classroom, rendre votre lien GitLab public contenant le Jenkinsfile et les Dockerfile. Ajouter un fichier doc contenant les captures d'écrans de l'execution de vos pipelines sur Jenkins.