************************ Spring boot ****************** spring boot : c'et un o
************************ Spring boot ****************** spring boot : c'et un outil qui nous permet de : -Gérer les dependance a notre projet -Centraliser les configuration dans un seul fichier (application.propreties) -Offrir un serveur web Tomcat embarqué (integré) ************************ DevOps ************************* DevOps : c'est un ensemble de bonne pratique c'est culture : - faire travailler les devloppement et les opération ensemble - Automatisation des différents phases du projet (sonor , Junit , selenuim (accélerer le test ) , Nexus ..) *************************maven**************************** maven : c'est un outil qui permet : *la construction des projrts. *gestion des dépendance. 1/mvn compile : compiler le prj :crée les classe dans le dossier target 2/mvn test : compiler et lancer les tests unitaire 3/mvn package : créer le livrable .jar +(1+2) 4/mvn install : copier le livrable de dossier target vers le dépot maven locale (.m2) +(1+2+3) 5/mvn deploy : 6/maven update : lire le pom.xml et refleter (يعكس )la config sur le prj. 7/mvn clean : supprimer le dossier target. les repository maven : Repos local (.m2)/ repos distant (celle de l'etreprise)/repos centrale (mavenRepository). **************************LOG4J************************** LOG4J : (journalisation(traçabilité)pour le language java), permet de décrire ce qui se passe au niveau d'un application pour utiliser les logs : 1/ajouter les dépendances dans le pom.xml 2/ajouter ces codes dans application.properties : *logging.file.name //designe le fichier ou s'enregistre les log *logging.level.root //designe les types des log 3/instantiation de logger et créer les messages : *public static final Logger l = LogManager.getLogger(UserServiceImpl.class); *l.info("début d'exec de la méthode xx");//création des log *l.error("..");//pour désigner un erreur (avec catch) *l.debug(".."); nb : -le logger permet d'écrire des messages en mémoire. -le layout : c'est la mise en forme. -l'appenders : définir, sélectionner la destination. -Debug-->debug+info+warn+error+fatal -info -->info+warn+error+fatal -Warn-->warn+error+fatal -Error-->error+fatal -Fatal-->Fatal **************************JUnit************************** JUnit: outil de test unitaire //tester les services, l'un par un(méthodes) Sonar: outil qui tesrter la qualité Selenium: Outil qui tester la fonctionnalité MOCK: TDD(Test Driven Dévelopement)// Dév piloter par les test càd créer les tests avant les services *************GIT(Dépot distant)************************ *permet de travailler de façon collaboratif *versionning(git est un outil de controle de version) GIT est un outil de versionning décentralisé càd, => (avantage de git)on peut travailler en mode déconnecter(décentralisé). +historisation. PRATIQUES: # git init // permettre à git de gérer le projet(créer le répot locale (dossier .git)) # git status // afficher les status commit/push si les status en rouge=>git ne suivre pas ces fichiers. # git add src pom.xml //pour prendre images sur le pom et le src avant le commit. # git commit -m "msg" // enregistrer l'image dans le repo locale # git log // # origin : répot distant pointe sur l'url de prj git **************************Nexus************************** Nexus : est une plateforme de gestion de dépots (permet de créer des répot distant) *permet d'héberger des artéfacts(livrables(jar,war...)). *permet d'utiliser d'autres projet dans le pom.xml ==> Nexus alors, c'est un dépot distant qui contient des artifacts(jar, war et ire). Installation: 1/on doit pointer sur nexus, dossier bin 2/on ouvre le terminal 3/#nexus.exe /run //commande qui execute nexus 4/localhost:8081 //commande nécessaire pour lancer nexus nb: *on doit changer la version de livrable avant de le déploiyer une autre fois ou bien supprimer l'ancien version déployer. *on peut déployer une version 1.0 par exemple qui existe sur nexus aussi 1.0 , si la version déployer est snapshot, donc nexus vas écraser l'ancienne est garde la nouvelle. *************************jenkins**************************** *************************Docker***************************** Un conteneur *déf : est une envelope contenant toute les ressources nécessaire pour fonctionner une application et il n’integre pas un OS, plutot partage le meme OS. *Fonctionnement: il execute sur linix et partager le noyau de la machine haute avec plusieurs conteneur. Docker: Plateforme permet d’empaqueter l’application et ses ressources dans un conteneur isolé qui pourra executer sur n’importe serveur. Assure : couplage faible/portabilité/rapidité *Docker Host : machine physique ou virtuelle qui execute des images et des conteneur executable (crée à partir les images) *Docker images: modéle pour créer des conteneur docker *Docker registry(hub): un referential d’images pouvant étre utiliser pour créer les conteneur Docker desktop : conteneriser les images Docker hub : réferencier les images Conteneur: permet d’éxecuter des app sur n’importe serveur Dockerfile: fichier sans extension contient les commandes à utiliser pour construire une image ***********************+++++++********************************** nb : *Test dynamic : Tester le fonctionnement de l'application (outil :JUnit ) *Test static : Tester le code sans tourner l'application (outil : sonar ) *ctrl+shift+o : supp les imports qui ne sont pas nécessaire *DEV Intégration Continue (CI): codage, test, packaging, l’automatisation des taches (test, build, deploy…). *OPS Livraison continue: livraison de travaille sur different environnement (serveur) sans production (ou avec production manuelle). (nexus) *OPS Déploiement continue (CD): c’est la production +(livraison l’application sur un environnement visible au client finale).(Docker) => CD= Livraison continue + prodution uploads/Industriel/ resume2.pdf
Documents similaires
-
13
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Sep 29, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 0.0682MB