Skip to content

rlossec/Issue-Tracker-API-REST

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Issues Tracker API

Construction d'une API permettant le suivi et des échanges sur des projets de développement divers.

Ce projet nécessite d'installer Python 3, Django 4 et PostgreSQL.

Installation

Fichiers du site

Sur le terminal se placer sur un dossier cible.

Puis suivre les étapes suivantes :

  1. Cloner le dépôt ici présent en tapant: git clone https://github.com/rlossec/Issue-Tracker-API-REST.git

  2. Accéder au dossier ainsi créé avec la commande : cd src

  3. Créer un environnement virtuel pour le projet avec

    • python -m venv env sous Windows
    • ou python3 -m venv env sous MacOS ou Linux.
  4. Activez l'environnement virtuel avec

    • .env/Scripts/activate sous Windows
    • ou source env/bin/activate sous MacOS ou Linux.
  5. Installez les dépendances du projet avec la commande pip install -r requirements.txt

  6. Définir les variables d'environnement dans un fichier .env ainsi :

SECRET_KEY=*******
DEBUG=******
ALLOWED_HOSTS=******* ******
POSTGRES_USER=*******
POSTGRES_PASSWORD*******

Creation de la base de données

  1. Créer la base de données avec votre nom d'utilisateur sous PostgreSQL : createdb -U UserName issuesdb
  2. Renseigner votre nom d'utilisateur dans src/config/settings.py :
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'issuesdb',
        'USER': POSTGRES_USER,
        'PASSWORD': POSTGRES_PASSWORD,
        'HOST': '',
        'PORT': '5432',
    }
}
  1. Une nouvelle fois : cd src
  2. Appliquer les migrations python manage.py migrate
  3. Alimenter la base de données des utilisateurs python manage.py loaddata accounts/fixtures/authentication.json
  4. Alimenter la base de données des projets python manage.py loaddata api/fixtures/api.json

En cas de problème d'encodage, ne pas hésiter à utiliser un éditeur pour ouvrir et sauvegarder les fichiers JSON avec l'encodage utf-8. Puis réalimenter (étape 11 et 12).

Lancement du serveur

Revenir dans le terminal et tapper :

  1. Démarrer le serveur avec python manage.py runserver

Lorsque le serveur fonctionne, après l'étape 13 de la procédure, on peut :

Pour les autres endpoints, il faudra fournir le token.

Voici quelques comptes pour explorer :

  • Utilisateur : Franklin, Mot de passe : Roosevelt

  • Utilisateur : takeshi, Mot de passe : Kitano

Une fois installé, toutes les étapes ne sont pas nécessaires. Pour les lancements ultérieurs du serveur de l'API, il suffit d'exécuter les étapes 4 et 12 à partir du répertoire racine du projet.

Tests

Pour lancer les test, se placer dans le terminal dans le dossier : src/config.

Puis tapper : python manage.py test.

Documentation

La documentation Postman est disponible à l'adresse : https://documenter.getpostman.com/view/14358423/TzeTKpkF.