Giter Club home page Giter Club logo

booking's Introduction

Groupe de obadia_r 874015

Content

  • /api : Contient toute l'api de reservation d'hôtel (sources, tests, CI, Dockerfile)
  • /inventory : Contient toutes les ip à utiliser pour la mise en place de l'architecture
  • /roles : Contient tous les rôles Ansible utilisés par les playbook
  • infrastucture.yml : Playbook pour mettre en place l'infra (Installation Docker, Swarm, Registry)
  • gitlab-playbook.yml : Playbook pour la gestion de Gitlab sur la VM2
  • run.sh : Script de lancement des playbook

Description

Ce projet automatise la mise en place d'une stack swarm à partir de plusieurs fichiers docker-compose.

Le script de lancement execute 2 playbook:

  • Un pour la mise en place de l'infrastructure
  • Un pour la configuration d'un Gitlab natif

Usage

  • Pouvoir se connecter par clé ssh sur les 3 VM avec son nom d'utilisateur ETNA
  • Changer l'utilisateur remote par défaut dans chaque playbook
  • Tester la connexion avec la commande de ping commentée dans run.sh
  • Une fois la connexion établit, lancer le/les playbook avec run.sh

ReadMe API

Lien

Ansible Vault

Le fichier roles/gitlab/vars/vault.yml contient les variables sensibles (tokens api...)

Ces commandes nécessite le mot de passe du fichier

# Pour ajouter une variable au fichier crypté: 
ansible-vault edit roles/gitlab/vars/vault.yml

# Pour lire le fichier crypté: 
ansible-vault view roles/gitlab/vars/vault.yml

Architecture

CI/CD

Il existe une pipeline qui se declenche sur la branch main. La ci va tester le code, build et push sur le registry La cd va deployer la stack sur le swarm Traefik s'occupe de la redirection entre L'api et le dashboard traefik l'api routing: http://api.booking-api-etna-clo5.online/docs le dashboard routing: http://dashboard.booking-api-etna-clo5.online/

booking's People

Contributors

raphob avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.