README.md 1.46 KB
Newer Older
Nicolas Joyard committed
1 2 3 4 5 6 7 8 9
ParlAPI
=======

L'objectif de ParlAPI est de fournir une API réellement utilisable sur l'Open
Data parlementaire.

Les données proviennent des portails Open Data parlementaires :
* [data.assemblee-nationale.fr](http://data.assemblee-nationale.fr/)
* [data.senat.fr](http://data.senat.fr/)
10

Nicolas Joyard committed
11
ParlAPI est conçu de manière à respecter le plus fidèlement possible le schéma
12
de données des sources parlementaires.  En particulier, aucune donnée calculée
Nicolas Joyard committed
13 14 15 16 17 18
n'est ajoutée au modèle.

## Installation

### Prérequis

19
- Python 3.6
Nicolas Joyard committed
20 21
- PostgreSQL 9.2+
- pip
Nicolas Joyard committed
22
- virtualenv
Nicolas Joyard committed
23
- graphviz + headers
24
- libyajl2 + headers
Nicolas Joyard committed
25

Nicolas Joyard committed
26 27 28
### Installation

```bash
29
$ git clone https://git.regardscitoyens.org/regardscitoyens/parlapi.git
Nicolas Joyard committed
30 31 32 33 34 35 36 37 38 39 40
$ cd parlapi
$ virtualenv ve
$ source ve/bin/activate
$ pip install -e .
$ psql -c "create user parlapi with password 'parlapi';"
$ psql -c "create database parlapi with owner parlapi;"
```

### Utilisation

```bash
41
$ parlapi db upgrade
Nicolas Joyard committed
42
$ parlapi update_amo_an
Nicolas Joyard committed
43 44
$ parlapi runserver
```
45

David Guillot committed
46 47 48
### Mise à jour d'une installation existante

```bash
49
$ parlapi db upgrade
David Guillot committed
50 51
```

52 53 54 55
### Déploiement Apache2/mod_wsgi

Voir le rôle `parlapi` dans le [playbook citoyen][gh-playbook]

56 57
## Développement

Nicolas Joyard committed
58
### Génération de migrations
59 60 61 62

Après avoir modifié les modèles Python :

```bash
Nicolas Joyard committed
63
$ parlapi db migrate -m <description>
64 65 66
$ parlapi db upgrade
```

Nicolas Joyard committed
67 68 69 70 71
### Création de migration vierge

```bash
$ parlapi db revision -m <description>
```
72 73

[gh-playbook]: https://github.com/regardscitoyens/playbook-citoyen