Giter VIP home page Giter VIP logo

amt-project's Introduction

Les Boulangers

Dans le cadre du projet du cours AMT (Application multi-tiers) à la HEIG-VD, nous sommes chargés de créer un site web de e-commerce décomposé en microservices.

Le repository du service d'authentification est disponible via ce lien: https://github.com/K-do/AMT-AuthService/tree/dev

Description

Nous avons choisi de créer une boutique en ligne de boulangerie et pâtisserie.

Pré-requis

Déploiement pour la production

  • Télécharger la release et l'extraire.
  • Ajouter les données de connexion à la base de données dans le fichier config/application.properties (il peut être nécessaire de le créer).
  • Ajouter la clé publique (nommée publicKey.pem) dans le dossier contenant l'exécutable. Si vous souhaitez changer le nom ou l'emplacement de la clé, il suffit d'ajouter à la configuration mp.jwt.verify.publickey.location=[LOCATION]LOCATION est l'emplacement de la clé. Pour la génération de la clé, se reférer à la documentation du service d'authentification
  • Indiquer l'adresse du serveur d'authentification avec la propriété : auth.server.url=[URL] dans la config.
  • Lancer le serveur avec java -jar target/quarkus-app/quarkus-run.jar.

Installation pour le developpement

Les étapes ci-dessous permettent de mettre en place l'environnement de développement en local afin de travailler sur le projet :

  1. Cloner le repository.

  2. Mettre en place la base de données

    • Standalone

    Si vous disposez déjà de PostgreSQL, vous pouvez créer une nouvelle base de données ou en utiliser une existante. Pour créer une base de données depuis psql :

    create database [DATABASE_NAME];

    Une fois la configuration terminée, vous pouvez mettre les informations de connexions dans le fichier config/application.properties. (L'utilisateur à fournir doit avoir des droits de lecture et d'écriture)

    • Docker : docker-compose up dans le dossier docker

    Pour autant que la DB soit vide, Liquibase se chargera de créer les tables nécessaires au lancement du projet.

  3. Copier la clé publique du serveur d'authentification dans main/ressources. La clé publique doit se nommer publicKey.pem sinon il faudra modifier le fichier main/ressources/application.properties. L'algorithme de vérification de signature est ES256. Si les clés générées utilisent un autre algorithme, il faudra modifier le fichier main/ressources/application.properties comme avant.

  4. Lancer l'application en mode dev avec mvn compile quarkus:dev.

  5. Se connecter avec un navigateur sur localhost:8080.

Contribution

Les Pull Requests sont les bienvenues. Pour des changements majeurs, ouvrez s'il vous plaît une issue pour discuter de ce que vous souhaitez changer. Soyez sûrs de mettre à jour les tests si nécessaire.

Licence

MIT

Auteurs

  • Léonard Besseau
  • Alexandra Cerottini
  • Miguel Do Vale Lopes
  • Fiona Gamboni
  • Nicolas Ogi

amt-project's People

Contributors

leonardbesseau avatar nicolasogi avatar insuline13 avatar fionagbn avatar k-do avatar

amt-project's Issues

Add style to template

Need to apply css to the template returned by quarkus.
We can directly integrate the css inside the template or we can make quarkus serve the file or setup a reverse proxy (nginx or apache) to serve the files if needed

Problem update details

Lorsqu'on édite un produit, si l'on modifie seulement la quantité ou le prix et qu'on ne met pas une nouvelle image, lorsqu'on clique sur le bouton "Update details" ça crash. Merci de régler cela.

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.