https://github.com/betagouv/cnr
https://github.com/betagouv/cnr
government python
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/betagouv/cnr
- Owner: betagouv
- License: mit
- Created: 2022-09-14T09:31:18.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-05-23T04:49:36.000Z (over 2 years ago)
- Last Synced: 2024-12-01T02:48:30.119Z (11 months ago)
- Topics: government, python
- Language: Python
- Homepage: https://conseil-refondation.fr/
- Size: 14 MB
- Stars: 10
- Watchers: 3
- Forks: 1
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README

# CNR
L'application web qui soutient le projet du Conseil National de la Refondation (CNR).
## Prérequis
- Python 3.9
- Postgreql 13.x.
## Installer les pre-commit hooks
```
pre-commit install
```
On peut faire un premier test en faisant tourner :
```
pre-commit run --all-files
```
## Installation
Le projet peut se lancer en local ou avec Docker.
### En local
#### Créer un environnement virtuel
```
# Configurer et activer l'environnement virtuel
python -m venv venv
. venv/bin/activate
# Installer les packages requis
pip install -r requirements.txt
```
#### Copier les variables d'environnement
```
cp .env.example .env
```
#### Lancer le serveur
```
python manage.py runserver
```
#### Lancer les migrations
```
python manage.py migrate
```
#### Effectuer les tests
D'abord installer les dépendances de test :
```sh
pip install -r requirements.txt
```
Les tests unitaires peuvent être lancés avec `make test-units`, les
tests E2E avec `make test-e2e`, les deux avec `make test`.
Pour les tests E2E, si vous n'utilisez pas Docker, il vous faudra
[Firefox](https://www.mozilla.org/fr/firefox/download/thanks/) et
[`geckodriver`](https://github.com/mozilla/geckodriver/releases)
accessibles sur votre machine pour lancer les tests E2E. Sur MacOS,
vous pouvez les installer via [brew](https://brew.sh/) avec la commande: `brew install geckodriver`.
Vous pouvez également générer un rapport sur la couverture de tests :
```sh
coverage run manage.py test --settings cnr.settings_test
```
### via Docker
#### Copier les variables d'environnement
```sh
cp .env.example .env
```
#### Lancer les containers
```sh
docker-compose up
```