\newpage # Notes diverses TODO: supprimer cette section à la fin Mot clé : écosystème DevOps ## DevOps Objectif : mettre en œuvre les bonnes pratiques de DevOps * Plan / Planifier (Gitlab : Milestones + issues) * Code / Développer (Gitlab : Dépôts Git, différents projets) * Build / Générer (Gitlab : Gitlab CI - docker build, npm build, etc.) * Test / Tester (Gitlab : Gitlab CI) * Publish / Publier (Gitlab : Gitlab CI + Docker repositories + package registry) * Deploy / Déployer (Terraform + Gitlab) * Operate / Opérer ( ??? ) = services en ligne + backup + reprise sur échec + feedback utilisateurs * Observe / Surveiller (Prometheus OU Datadog) ![Schéma des concepts DevOps](media/concept_devops-loop.png) ## Selon Gitlab * Planification : organisez le travail à effectuer, hiérarchisez-le et suivez son achèvement. * Création : écrivez, concevez, développez et gérez en toute sécurité le code et les données du projet avec votre équipe. * Vérification : assurez-vous que votre code fonctionne correctement et respecte vos normes de qualité, idéalement avec des tests automatisés. * Empaquetage : empaquetez vos applications et dépendances, gérez les conteneurs et générez des artéfacts. * Sécurisation : vérifiez les vulnérabilités à l'aide de tests statiques et dynamiques, de tests à données aléatoires et d'analyses des dépendances. * Release : déployez le logiciel pour les utilisateurs finaux. * Configuration : gérez et configurez l'infrastructure nécessaire pour prendre en charge vos applications. * Surveillance : suivez les métriques de performance et les erreurs pour réduire la gravité et la fréquence des incidents. * Gouvernance: gérez les vulnérabilités de sécurité, les politiques et la conformité dans l'ensemble de votre entreprise ## Autre * Base de connaissances collaborative commune : Gitlab avec Wiki ## Specs * Technologies utilisées par l'application initiale + schémas dépendances * contrainte : haute disponibilité, sous AWS * sauvegardes * supervision (outils monitoring + alerting) * collaboration : Gitlab = plateforme DevOps * gestion utilisateurs (id/mdp, clefs, accès) * gestion des secrets *