Ce project est un C.R.M, Client. Relationship. Management. réalisé avec une C.L.I, Command. Line. Interface réalisée s'appayant sur Python3.11 et :
- Au sein d'une équipe évènementielle ayant pour Role : Management Commercial Support
- Les Users doivent pouvoir gérer des relations Clients Contracts Events (C.R.U.D en fonction de leurs attributions respectives)
- SQLAlchemy est l'O.R.M qui sécurisera nos requêtes en base de données.
- Un système de permission et l'utilisation de py-jwt viendra compléter la sécurité de l'app.
- Le projet sera monitoré sur Sentry
git clone https://github.com/LGD-P/P12_Open_C.gitpip3 install poetry
poetry shell
poetry install
poetry update
Ce projet utilise dotenv il vous faut adapter un certain nombre de paramètres. Dans epic_events/.env
DATABASE_URL= postgresql://postgres:YOURPASSWORD@localhost:5432/postgres
SECRET_KEY= YOU SECRET_KEY_TO_MANAGE_JWT
TEMP_TOKEN_PATH = PATH_TO_/epic_events/temp/temporary.txt
SENTRY_KEY = YOUR SENTRY DNS KEY
MANAGER_PASS = $argon2id$v=19$m=65536,t=12,p=4$6V0LgfB+T+kdw/hfCwFgjA$r/+/OEuLdDEdTHvKDn4+mX3Bo3+wLNPcEqvpVxBS3nwsudo docker run --name YOURDBNAME -e POSTGRES_PASSWORD=YOURPASSWORD -d -p 5432:5432 postgres
# avec sudo lsof -i :5432 vous devriez voir la base de données sur votre port 5432.
python3 first_migration.py
python3 main.py authenticate login -e 'mallet.gabrielle-management@epicevent.com'Le mdp du manager est commenté dans first_migration.py
Comme tout CLI qui se respecte avec --help, vous accéderez au détail des commandes
python3 main.py --help
python3 main.py authenticate --help
python3 main.py role --help
python3 main.py user --help
python3 main.py client --help
python3 main.py contract --help
python3 main.py event --help
....
python3 main.py user list-user
..
pytest tests/ --cov=. --cov-report html flake8 --format=html --htmldir=flake-report




