Skip to content

Bubhux/Projet-Epic-Events

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Static Badge Static Badge Static Badge
Static Badge
Static Badge
Static Badge âž” Documentation Postman du projet Epic Events

Static Badge
Static Badge
Static Badge

Run In Postman

Menu

  1. Informations générales
  2. Fonctionnalités
  3. Liste pré-requis
  4. Création environnement
  5. Activation environnement
  6. Installation des librairies
  7. Installation du SGBD MySQL
  8. Installation et chargement de la base de données MySQL
  9. Connecter l'application à la base de données MySQL
  10. Installation des variables d'environnement
  11. Administration opérations CRUD et gestionnaires de commmandes
  12. Exécution de l'application
  13. Tests avec Pyest
  14. Tests de couverture de code avec Coverage
  15. Monitoring avec Sentry
  16. Rapport avec flake8
  17. Informations importantes sur les différents fichiers et dossiers
  18. Auteur et contact

Projet Epic Events

Logo Epic Events
  • Application conçu pour faciliter une collaboration efficace entre les Ă©quipes chez Epic Events de la gestion de la relation client CRM (Customer Relationship Management).
  • L'objectif principal est de mettre en place une base de donnĂ©es qui permette de stocker et de manipuler de manière sĂ©curisĂ©e les informations des clients, ainsi que les contrats et les Ă©vĂ©nements.
  • Application Python, incluant la journalisation avec Sentry.

Note : Plusieurs besoins de l'application Epic Events ont été mis en place.

Besoins généraux

  • Chaque collaborateur doit avoir ses identifiants pour utiliser la plateforme.
  • Chaque collaborateur est associĂ© Ă  un rĂ´le (suivant son dĂ©partement).
  • La plateforme doit permettre de stocker et de mettre Ă  jour les informations sur les clients, les contrats et les Ă©vĂ©nements.
  • Tous les collaborateurs doivent pouvoir accĂ©der Ă  tous les clients, contrats et Ă©vĂ©nements en lecture seule.

Besoins individuels

Équipe de gestion :
  • CrĂ©er, mettre Ă  jour et supprimer des collaborateurs dans le système CRM.
  • CrĂ©er et modifier tous les contrats.
  • Filtrer l’affichage des Ă©vĂ©nements : afficher tous les Ă©vĂ©nements qui n’ont pas de « support » associĂ©.
  • Modifier des Ă©vĂ©nements (pour associer un collaborateur support Ă  l’évĂ©nement).

Besoins individuels

Équipe commerciale :
  • CrĂ©er des clients (le client leur sera automatiquement associĂ©).
  • Mettre Ă  jour les clients dont ils sont responsables.
  • Modifier et mettre Ă  jour les contrats des clients dont ils sont responsables.
  • Filtrer l’affichage des contrats : afficher tous les contrats qui ne sont pas encore signĂ©s, ou qui ne sont pas encore entièrement payĂ©s.
  • CrĂ©er un Ă©vĂ©nement pour un de leurs clients qui a signĂ© un contrat.

Besoins individuels

Équipe support :
  • Filtrer l’affichage des Ă©vĂ©nements : afficher uniquement les Ă©vĂ©nements qui leur sont attribuĂ©s.
  • Mettre Ă  jour les Ă©vĂ©nements dont ils sont responsables.

Retour en haut 🡅

Fonctionnalités

  • OpĂ©rations d'administration et de gestion des utilisateurs, des clients, des contrats et des Ă©vĂ©nements.
  • Visualisation des informations et donnĂ©es des utilisateurs, des clients, des contrats et Ă©vĂ©nements.

Note : Testé sous Windows 10 Professionnel - Python 3.12.0


Retour en haut 🡅

Liste pré-requis

Application conçue avec les technologies suivantes :

  • Python v3.12.0 choisissez la version adaptĂ©e Ă  votre ordinateur et système.

  • Python est disponible Ă  l'adresse suivante âž” https://www.python.org/downloads/

  • Django version 4.2.7 âž” Documentation Django

  • MySQL version 8.0 âž” Documentation MySQL

  • Windows 10 Professionnel
     

  • Les scripts Python s'exĂ©cutent depuis un terminal.

    • Pour ouvrir un terminal sur Windows, pressez la touche windows + r et entrez cmd.
    • Sur Mac, pressez la touche command + espace et entrez terminal.
    • Sur Linux, vous pouvez ouviri un terminal en pressant les touches Ctrl + Alt + T.

Retour en haut 🡅

Création de l'environnement virtuel

  • Installer une version de Python compatible pour votre ordinateur.
  • Une fois installer ouvrer le cmd (terminal) placer vous dans le dossier principal (dossier racine).

Taper dans votre terminal :

$ python -m venv env

Note : Un répertoire appelé env doit être créé.


Retour en haut 🡅

Activation de l'environnement virtuel

  • Placez-vous avec le terminal dans le dossier principale (dossier racine).

Pour activer l'environnement virtuel créé, il vous suffit de taper dans votre terminal :

$ env\Scripts\activate.bat
  • Ce qui ajoutera Ă  chaque dĂ©but de ligne de commande de votre terminal (env) :

Note : Pour désactiver l'environnement virtuel, il suffit de taper dans votre terminal :

$ deactivate

Retour en haut 🡅

Installation des librairies

  • Le programme utilise plusieurs librairies externes et modules de Python, qui sont rĂ©pertoriĂ©s dans le fichier requirements.txt.
  • Placez-vous dans le dossier oĂą se trouve le fichier requirements.txt Ă  la racine du projet, l'environnement virtuel doit ĂŞtre activĂ©.
  • Pour faire fonctionner l'application, il vous faudra installer les librairies requises.
  • Ă€ l'aide du fichiers requirements.txt mis Ă  disposition.

Taper dans votre terminal la commande :

$ pip install -r requirements.txt

Retour en haut 🡅

Installation du SGBD MySQL

  • Pour le projet Epic Events la gestion des donnĂ©es utilise le SGBD MySQL.

  • Installer MySQL qui est disponible Ă  l'adresse suivante âž” https://dev.mysql.com/downloads/installer/

  • Une fois le programme tĂ©lĂ©chargĂ©, lancez-le en double-cliquant dessus, autorisez le programme Ă  s'installer.

Note : Je vous conseille de choisir la version Serveur only lors de l'installation.

  • Il y a plusieurs manières d'utiliser MySQL soit par MySQL 8.0 Command Line Client une fois MySQL installĂ©.
  • Soit par le terminal CMD de Windows, pour cela il faut crĂ©er une variable d'environnement pour ouvrir MySQL d'un terminal CMD.

Note : Je vous conseille de créer une variable d'environnement dans le PATH.

Allez dans Paramères avancés du système ➔ Variables d'environnement ➔ Variable système ➔ Path

Cliquez sur modifier ajoutez les variables suivantes :

C:\Program Files\MySQL\MySQL Server 8.0\bin
C:\Program Files\MySQL\MySQL Server 8.0\lib

Après ces modifications vous pourrez utiliser MySQL depuis le terminal CMD.


Retour en haut 🡅

Installation et chargement de la base de données MySQL

Note : Ces commandes sont fonctionnelles si vous avez installer les variables d'environnement dans le PATH.

  • Pour lancer et vous connectez Ă  MySQL
    Lancer un terminal CMD, puis taper la commande :
$ mysql -u root -p
  • Une fois identifiĂ© et connectĂ© crĂ©er la base de donnĂ©es avec la commande :
$ mysql> CREATE DATABASE epicevents;
  • Pour afficher la base de donnĂ©es MySQL.
    Ensuite taper la commande :
$ SHOW DATABASES;
  • Pour utiliser la base de donnĂ©es.
    On utilise la commande :
$ USE epicevents;
  • Charger les tables de la base de donnĂ©es grâce au fichier EpicEvents.sql disponible dans le dossier principal du projet.
    On utilise la commande :
$ source C:\path\to\directory\Epic Events\EpicEvents.sql
  • Quittez MySQL.
    Avec la commande :
$ exit;

Retour en haut 🡅

Connecter l'application à la base de données MySQL

Dans le cadre de Django et de l'utilisation de MySQL, la configuration de Django pour travailler avec une base de données MySQL implique d'établir une connexion à cette dernière.
Après avoir installé MySQL et chargé les tables depuis le fichier EpicEvents.sql, la configuration de l'application Django nécessite la mise en place de cette connexion.

  • Ouvrez un terminal CMD activer l'environnement virtuel.

    Exécutez la commande :

$ python manage.py makemigrations
  • Ensuite taper la commande :
$ python manage.py migrate
  • L'exĂ©cution des commandes makemigrations et migrate gĂ©nère les tables, y compris celles de jonction (d'associations), dans la base de donnĂ©es.
  • Ces tables de jonction sont automatiquement crĂ©Ă©es en fonction de la structure des modèles Django.

À présent, la base de données est chargée et fonctionnelle, prête à être utilisée avec l'application Epic Events.
Vous pouvez vérifier ceci en vous connectant à MySQL.

  • Dans un terminal CMD, connectez-vous avec la commande suivante :
$ mysql -u root -p
  • Affichez et utilisez la base de donnĂ©es avec les commandes suivantes :
$ SHOW DATABASES;
$ USE epicevents;
  • Pour vĂ©rifier la crĂ©ation et les structures des tables, utilisez les commandes :
$ SHOW tables;
$ SHOW COLUMNS FROM NomDeLaTable;
  • Pour vĂ©rifier les donnĂ©es prĂ©sentes dans une table, utilisez les commandes :
$ SELECT * FROM NomDeLaTable;

# Cette requête est utilisée pour afficher la déclaration SQL complète nécessaire pour recréer une table existante, y compris tous ses indices, contraintes et autres propriétés.
# Cette requête retourne un ensemble de résultats avec une colonne appelée "Create Table" qui contient la déclaration SQL complète de la table spécifiée.
$ SHOW CREATE TABLE NomDeLaTable;

ERD Epic Events

  • ERD (Entity-Relationship Diagram) de la base de donnĂ©es Epic Events

ERD bdd


Retour en haut 🡅

Installation des variables d'environnement

  • Pour utiliser l'application, il faut configurer l'environnement de l'application Epic Events et gĂ©nĂ©rer une clĂ© secrète alĂ©atoire pour la configuration de Django.
  • De plus, il est nĂ©cessaire d'inclure des noms de variables d'environnement prĂ©configurĂ©es.
Configuration de l'environnement :

Il est essentiel de configurer l'environnement de l'application.

  • GĂ©nĂ©rez une clĂ© secrète alĂ©atoire pour la configuration de Django et incluez des noms de variables d'environnement prĂ©configurĂ©es.

Utilisez le fichier .env, voici un exemple d'un fichier .env une fois configuré avec les paramètres :

DJANGO_SECRET_KEY=%x7xmakyvew_am2-0_n*0inmjkdncucg!^_!i3&==k@d2j+4vo
DB_NAME=epicevents
DB_USER=root
DB_PASSWORD=************
DB_HOST=127.0.0.1
DB_PORT=3306
SENTRY_DSN=https://[email protected]/4506596576
Création du fichier .env :

À la racine du dossier principal d'Epic Events, exécutez le fichier create_env.bat ➔ (create_env.bat).
Double-cliquez dessus pour enregistrer le fichier .env Ă  la racine du dossier principal.

Create .env

Configuration du fichier .env :

Une fois le fichier .env créé, ouvrez-le avec un éditeur de texte.

  • Remplissez les champs avec les valeurs appropriĂ©es pour chaque variable d'environnement.
  • Ces Ă©tapes garantissent une configuration correcte de l'environnement nĂ©cessaire au bon fonctionnement de l'application Epic Events.

Note : La clé SENTRY_DSN doit être récupérée dans les paramètres de votre compte Sentry.

Note : Le fichier .env généré doit être configuré avec des valeurs appropriées pour chaque variable d'environnement avant utilisation.


Retour en haut 🡅

Administration opérations CRUD et gestionnaire de commmandes

La gestion des opérations CRUD peut se faire de plusieurs manières :

  • En utilisant des requĂŞtes sous forme de commandes dans MySQL
  • En utilisant des commandes dans Le shell Django
  • En utilisant le site d'administration de Django Ă  l'adresse suivante âž” http://127.0.0.1:8000/admin/

Note : Le site d'administration de Django est accessible seulement aux administrateurs et aux utilisateurs de l'Ă©quipe gestion.

  • Dans ce projet, la mise en place d'un gestionnaire de commandes a Ă©tĂ© rĂ©alisĂ©e avec les bibliothèques Click et Rich, ainsi qu'avec BaseCommand de Django.
  • Ce gestionnaire de commandes fonctionne avec les privilèges administrateur et ne reflète donc pas les permissions et besoins individuels de chaque dĂ©partement.

Note : Les permissions de chaque département sont fonctionnelles et activées, ceci peut être vérifié en utilisant Postman.

Postman âž” Documentation Postman du projet Epic Events

  • Import et exĂ©cute la collection dans votre propre espace de travail Postman âž” Run In Postman

Ouvrez un terminal CMD et activez l'environnement virtuel.

Les commandes d'administration et de gestion pour utiliser le gestionnaire de commandes.

- Afficher tous les utilisateurs.

  • Exemple de sortie dans le terminal :

Display users

$ python manage.py management_user --display_users
- Création, mise à jour, suppression d'un utilisateur ou d'un administrateur.
$ python manage.py management_user --create_user
$ python manage.py management_user --create_superuser
$ python manage.py management_user --update_user [id_user]
$ python manage.py management_user --delete_user [id_user]

- Afficher tous les clients.

  • Exemple de sortie dans le terminal :

Display clients

$ python manage.py management_client --display_clients
- Création, mise à jour, suppression d'un client.
$ python manage.py management_client --create_client
$ python manage.py management_client --update_client [id_client]
$ python manage.py management_client --delete_client [id_client]

- Afficher tous les contrats.

  • Exemple de sortie dans le terminal :

Display contracts

$ python manage.py management_contract --display_contracts
- Création, mise à jour, suppression d'un contrat.
$ python manage.py management_contract --create_contract
$ python manage.py management_contract --update_contract [id_contract]
$ python manage.py management_contract --delete_contract [id_contract]

- Afficher tous les événements.

  • Exemple de sortie dans le terminal :

Display events

$ python manage.py management_event --display_events
- Création, mise à jour, suppression d'un événement.
$ python manage.py management_event --create_event
$ python manage.py management_event --update_event [id_event]
$ python manage.py management_event --delete_event [id_event]

Retour en haut 🡅

Exécution de l'application

Utilisation de l'application.

Lancement du serveur Django.

  • Placez-vous avec le terminal CMD dans le dossier principal.

  • Activer l'environnement virtuel et ensuite lancer le serveur Django.

    Taper dans votre terminal la commande :

$ python manage.py runserver
  • DĂ©marrer le serveur vous permet d'accĂ©der au site d'administration de Django.
  • Disponible Ă  l'adresse suivante âž” http://127.0.0.1:8000/admin/
  • Permets d'utiliser les requĂŞtes GET, POST, PUT, DEL lors de l'utilisation de Postman.

Note : Le site d'administration de Django est accessible seulement aux administrateurs et aux utilisateurs de l'Ă©quipe gestion.

Note navigateur : Les tests ont Ă©tait fait sur Firefox et Google Chrome.


Retour en haut 🡅

Tests avec Pytest

  • Nous effectuons des tests unitaires et d'intĂ©grations de plusieurs manières pour garantir la qualitĂ© du code.

Note : Pour exécuter les tests il est nécessaire d'avoir activer l'environnement virtuel, mais il n'est pas nécessaire de lancer le serveur Django.

Exécution de Pytest

  • Utilisation de Pytest pour effectuer les tests. âž” Documentation Pytest
  • Pour exĂ©cuter les tests Ă  l'aide de Pytest, utilisez la commande suivante :
$ pytest
(env) C:\Epic Events>pytest
======================================= test session starts =======================================
platform win32 -- Python 3.12.0, pytest-7.4.3, pluggy-1.3.0 -- C:\Epic Events\env\Scripts\python.exe
cachedir: .pytest_cache
django: version: 4.2.7, settings: EpicEvents.settings (from ini)
rootdir: C:\Epic Events
configfile: setup.cfg
plugins: cov-4.1.0, django-4.7.0, time-machine-2.13.0
collected 71 items

contracts/tests.py::TestContractsApp::test_contract_print_details PASSED                        [1%]
contracts/tests.py::TestContractsApp::test_contract_str_representation PASSED                   [2%]
contracts/tests.py::TestContractsApp::test_save_method PASSED                                   [4%]
contracts/tests.py::TestContractViewSet::test_all_contracts_details PASSED                      [5%]
contracts/tests.py::TestContractViewSet::test_contract_details PASSED                           [7%]
contracts/tests.py::TestContractViewSet::test_contract_details_unauthorized_user PASSED         [8%]
contracts/tests.py::TestContractViewSet::test_contracts_list PASSED                             [9%]
contracts/tests.py::TestContractViewSet::test_create_contract PASSED                           [11%]
contracts/tests.py::TestContractViewSet::test_create_contract_unauthorized_user PASSED         [12%]
contracts/tests.py::TestContractViewSet::test_destroy_contract PASSED                          [14%]
contracts/tests.py::TestContractViewSet::test_destroy_contract_unauthorized_user PASSED        [15%]
contracts/tests.py::TestContractViewSet::test_filtered_contracts PASSED                        [16%]
contracts/tests.py::TestContractViewSet::test_returns_all_contracts_associated_to_user PASSED  [18%]
contracts/tests.py::TestContractViewSet::test_update_contract PASSED                           [19%]
contracts/tests.py::TestContractViewSet::test_update_contract_unauthorized_user PASSED         [21%]
events/tests.py::TestEventsApp::test_event_print_details PASSED                                [22%]
events/tests.py::TestEventsApp::test_event_str_representation PASSED                           [23%]
events/tests.py::TestEventsApp::test_save_method PASSED                                        [25%]
events/tests.py::TestEventViewSet::test_all_events_details PASSED                              [26%]
events/tests.py::TestEventViewSet::test_create_event PASSED                                    [28%]
events/tests.py::TestEventViewSet::test_create_event_already_exists PASSED                     [29%]
events/tests.py::TestEventViewSet::test_create_event_contract_not_signed PASSED                [30%]
events/tests.py::TestEventViewSet::test_create_event_unauthorized_user PASSED                  [32%]
events/tests.py::TestEventViewSet::test_destroy_event PASSED                                   [33%]
events/tests.py::TestEventViewSet::test_destroy_event_unauthorized_user PASSED                 [35%]
events/tests.py::TestEventViewSet::test_event_details PASSED                                   [36%]
events/tests.py::TestEventViewSet::test_event_details_unauthorized_user PASSED                 [38%]
events/tests.py::TestEventViewSet::test_events_list PASSED                                     [39%]
events/tests.py::TestEventViewSet::test_events_without_support PASSED                          [40%]
events/tests.py::TestEventViewSet::test_update_event PASSED                                    [42%]
events/tests.py::TestEventViewSet::test_update_event_unauthorized_user PASSED                  [43%]
profiles/tests.py::TestProfilesApp::test_add_client_to_group PASSED                            [45%]
profiles/tests.py::TestProfilesApp::test_assign_sales_contact PASSED                           [46%]
profiles/tests.py::TestProfilesApp::test_create_client1 PASSED                                 [47%]
profiles/tests.py::TestProfilesApp::test_create_client2 PASSED                                 [49%]
profiles/tests.py::TestProfilesApp::test_create_superuser PASSED                               [50%]
profiles/tests.py::TestProfilesApp::test_create_superuser_invalid_attributes PASSED            [52%]
profiles/tests.py::TestProfilesApp::test_create_user_management PASSED                         [53%]
profiles/tests.py::TestProfilesApp::test_create_user_sales PASSED                              [54%]
profiles/tests.py::TestProfilesApp::test_create_user_support PASSED                            [56%]
profiles/tests.py::TestProfilesApp::test_create_user_with_empty_email PASSED                   [57%]
profiles/tests.py::TestProfilesApp::test_has_module_perms PASSED                               [59%]
profiles/tests.py::TestProfilesApp::test_has_perm PASSED                                       [60%]
profiles/tests.py::TestProfilesApp::test_obtain_jwt_token_url PASSED                           [61%]
profiles/tests.py::TestProfilesApp::test_refresh_jwt_token_url PASSED                          [63%]
profiles/tests.py::TestProfilesApp::test_str_method_with_sales_contact PASSED                  [64%]
profiles/tests.py::TestLoginViewSet::test_user_login_inactive_account PASSED                   [66%]
profiles/tests.py::TestLoginViewSet::test_user_login_invalid_credentials PASSED                [67%]
profiles/tests.py::TestLoginViewSet::test_user_login_successful PASSED                         [69%]
profiles/tests.py::TestClientViewSet::test_all_clients_details PASSED                          [70%]
profiles/tests.py::TestClientViewSet::test_client_details PASSED                               [71%]
profiles/tests.py::TestClientViewSet::test_client_details_unauthorized_user PASSED             [73%]
profiles/tests.py::TestClientViewSet::test_clients_list PASSED                                 [74%]
profiles/tests.py::TestClientViewSet::test_clients_list_associated_to_user PASSED              [76%]
profiles/tests.py::TestClientViewSet::test_create_client PASSED                                [77%]
profiles/tests.py::TestClientViewSet::test_create_clients_unauthorized_user PASSED             [78%]
profiles/tests.py::TestClientViewSet::test_destroy_client PASSED                               [80%]
profiles/tests.py::TestClientViewSet::test_destroy_client_unauthorized_user PASSED             [81%]
profiles/tests.py::TestClientViewSet::test_update_client PASSED                                [83%]
profiles/tests.py::TestClientViewSet::test_update_client_unauthorized_user PASSED              [84%]
profiles/tests.py::TestUserViewSet::test_all_users_details PASSED                              [85%]
profiles/tests.py::TestUserViewSet::test_create_user PASSED                                    [87%]
profiles/tests.py::TestUserViewSet::test_create_user_unauthorized_user PASSED                  [88%]
profiles/tests.py::TestUserViewSet::test_destroy_user PASSED                                   [90%]
profiles/tests.py::TestUserViewSet::test_destroy_user_unauthorized_user PASSED                 [91%]
profiles/tests.py::TestUserViewSet::test_retrieve_all_user_list PASSED                         [92%]
profiles/tests.py::TestUserViewSet::test_returns_details_specific_user PASSED                  [94%]
profiles/tests.py::TestUserViewSet::test_update_user PASSED                                    [95%]
profiles/tests.py::TestUserViewSet::test_update_user_unauthorized_user PASSED                  [97%]
profiles/tests.py::TestUserViewSet::test_user_details PASSED                                   [98%]
profiles/tests.py::TestUserViewSet::test_users_list PASSED                                    [100%]

================================= 71 passed in 306.71s (0:05:06) ==================================
  • Pour afficher plus d'informations sur les tests lors de leurs exĂ©cutions vous pouvez utiliser la commande :
$ pytest -v -s

Retour en haut 🡅

Tests de couverture de code avec Coverage

  • Utilisation de Coverage pour mesurer la couverture de code. âž” Documentation Coverage

  • Cette commande exĂ©cute les tests en utilisant Coverage pour collecter les informations de couverture.

$ pytest --cov=.
---------- coverage: platform win32, python 3.12.0-final-0 -----------
Name                  Stmts   Miss  Cover
-----------------------------------------
contracts\models.py      30      1    97%
contracts\views.py       81      3    96%
events\models.py         30      0   100%
events\views.py          95      5    95%
profiles\models.py      132     11    92%
profiles\views.py       146      9    94%
-----------------------------------------
TOTAL                   514     29    94%


=================== 71 passed in 284.05s (0:04:44) ====================

Renvoie : 94% de couverture de code.

  • Pour afficher un rapport de couverture avec plus de dĂ©tails.
$ pytest --cov=. --cov-report html
  • Cela gĂ©nĂ©rera un dossier htmlcov dans lequel vous pouvez ouvrir le fichier index.html pour visualiser un rapport interactif de la couverture de code dans votre navigateur.

Rapport Coverage

Rapport Coverage


Retour en haut 🡅

Monitoring avec Sentry

La surveillance (ou monitoring) sur Sentry s'effectue en accédant à votre tableau de bord après avoir créé un projet et récupéré les informations nécessaires (clé DSN).

  • Sentry âž” https://sentry.io/welcome/
  • Des dĂ©clencheurs ont Ă©tĂ© configurĂ©s au niveau des vues de l'application.
  • Ces dĂ©clencheurs sont activĂ©s lorsqu'un utilisateur tente d'accĂ©der Ă  des opĂ©rations d'administration sans autorisation.
  • Cela dĂ©clenchera une alerte qui sera envoyĂ©e Ă  Sentry.

Voici un exemple d'alerte sur la capture d'Ă©cran suivante :

Sentry monitoring


Retour en haut 🡅

Rapport avec flake8

Tapez dans votre terminal la commande :

$ flake8
  • Ne renvoie aucune erreur.

Retour en haut 🡅

Informations importantes sur les différents fichiers et dossiers

Les dossiers contract, events, profiles

  • Chacun contient un fichier tests.py contenant les configurations pour les tests.

Les dossiers management/commmands

Le dossier utils

  • Le dossier contient le fichier creating_environment_variables.py qui gĂ©nère le fichier .env pour les variables d'environnement (creating_environment_variables.py)

Le dossier static

  • Dossier qui contient qui contient les images et les badges nĂ©cessaire Ă  l'application.
    • static âž” (badges)
    • static âž” (img)

Le fichier EpicEvents.sql

  • Le fichier EpicEvents.sql contient la configuration des tables pour la base de donnĂ©es âž” (EpicEvents.sql)

Le fichier .coveragerc

  • Le fichier contient la configuration de Coverage (.coveragerc)

Le fichier .flake8

  • Le fichier contient la configuration de Flake8 (.flake8)

Retour en haut 🡅

Auteur et contact

Pour toute information supplémentaire, vous pouvez me contacter.
Bubhux : [email protected]

About

Python Django MySQL Sentry Postman

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages