Issue-Tracker est une application permettant de remonter et suivre des problèmes techniques (issue tracking system).
Projet consistant à créer une API Restful pour la société SoftDesk. Cette entreprise veut créer une API afin de permettre aux différents intervenants d'une équipe de développement, d'échanger sur les problèmes techniques qu'ils rencontrent.
La conception de cette API doit utiliser le langage Python et Django Rest Framework.
L'API doit respecter les contraintes suivantes :
- L'utilisateur doit pouvoir créer un compte et se connecter.
- L'accès global à l'API requiert une authentification.
- Le créateur d'un projet est le seul à pouvoir effacer ou mettre à jour son projet, il est donc le seul à pouvoir ajouter des contributeurs.
- Les contributeurs d'un projet n'ont qu'un accès en lecture à celui-ci, ils peuvent cependant créer des problèmes et commenter les problèmes.
- Les problèmes et commentaires suivent la même logique que les projets, seul les créateurs peuvent les mettre à jour ou les effacer.
- Un terminal (par exemple Windows PowerShell)
- Python3 version >= 3.10 (vérifier avec
python -V
)
- Téléchargez depuis le lien: https://github.com/.../main.zip
- Extraire le .zip
- Ouvrez un terminal
- Naviguez vers le dossier extrait ([...]\Issue-Tracker-SoftDesk)
- Créez un environnement virtuel avec la commande
python -m venv env
- Activer l'environnement
avec
.\env\Scripts\activate
(source env/bin/activate
sur Linux) - Installez les packages avec
pip install -r .\requirements.txt
- Lancez le serveur depuis le terminal avec la
commande
py.exe manage.py runserver
- Utilisez une application comme Postman pour communiquer avec les endpoints.
Veuillez consulter la documentation de l'API pour l'utilisation des différents endpoints.
Créez de nouveaux utilisateurs ou utilisez les identifiants des comptes suivants pour essayer les endpoints de l'API.
Compte standard :
Username : user
MdP : user
Compte superuser :
Username : wil
MdP : wil
Le repository contient un rapport flake8 dans le dossier flake8_rapport. Il est possible de générer un nouveau rapport avec la commande :
flake8
Le fichier .flake8
à la racine contient les paramètres concernant la
génération du rapport.