1
0
Fork 0
No description
This repository has been archived on 2024-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2020-05-06 12:29:30 +02:00
readme.md update documentation 2020-05-06 12:29:30 +02:00

PROJET

Objectif: Automatisation de déploiement

L'objectif est d'automatiser des déploiements à l'aide de playbook Ansible et de son écosystème

Ce projet devra comprendre un:
- Déploiement serveur
- Déploiement applicatif

Groupe ou individuel:

Ce projet peut se faire en groupe (de 2/3/4 personnes) ou individuellement

Consignes:

  • Le projet doit être mis sur un repository dans le gitlab de l'université.

    • Le nom du repository devra être sous la forme: LP - DevOps - 2020 - ansible - Grp* - **** - *

    Exemple: LP - DevOps - 2020 - ansible - Grp2 - Python - 2

      - Grp* pour le numéro du groupe
      - **** pour la technologie applicative utilisée (php / java / python / dotnet)
      - * pour un numéro de sous groupe (1/2/3/4) si besoin  
    
    • Le professeur doit être ajouté en tant que owner aux membres du
  • Un readme doit être présent dans le projet avec les rubriques suivantes:

    • Liste des étudiants.
      • Comportant: nom - prénom - numéro étudiant
    • Les clés ssh de connexion:
      • aux serveurs openstack
      • aux repositories gitlab
    • Les technologies utilisées.
    • La liste des roles (si utilisés).
    • La liste des commandes à utiliser.
      Ceux-ci pourront aussi être présents dans un makefile
    • Une présentation de l'architecture mise en place

Architecture/Environnement

L'architecture doit permettre le déploiement au minimun sur des environnements de:

  • preprod
  • prod

Serveur

Il doit être possible de déployer les types suivants (séparement ou "all-in-one"):

  • web
  • base de données
  • applicatif

Applicatif

La stratégie de déploiement doit permettre du atomic deployments

-- /var/www/my-app.com
|-- current -> /var/www/my-app.com/releases/20200512131539
|-- releases
|   |-- 20200512131539
|   |-- 20200509150741
|   |-- 20200509145325
|-- shared

Conseils

  • Un code organiser/structurer, tu feras
  • Sur une/des nouvelle(s) machine(s) (hôte/VM), le professeur lancera - sans erreur, les playbooks seront

Bonus

  • Des tests applicatifs pourront être lancés via un playbook (phpunit, junit, unittest, xUnit.net,...)
  • Si des roles ont été créés ceux-ci pourront être testés avec Molecule