Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update openfisca installation process #384

Merged
merged 8 commits into from
Oct 17, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 28 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
## Cette documentation est technique. Pour plus d'informations sur [Mes Aides](https://mes-aides.gouv.fr), regardez notre [wiki](https://github.com/sgmap/mes-aides-ui/wiki).

The user interface (and main server) for [mes-aides](https://mes-aides.gouv.fr), a French benefits simulation application for citizens.

> L'interface utilisateur (et le serveur principal) de [mes-aides](https://mes-aides.gouv.fr), un estimateur des prestations sociales françaises pour les particuliers.
L'interface utilisateur (et le serveur principal) de [mes-aides](https://mes-aides.gouv.fr), un estimateur des prestations sociales françaises pour les particuliers. Il est basé sur simulateur socio-fiscal libre [Openfisca](https://www.openfisca.fr/).


Installing
Expand All @@ -22,10 +20,12 @@ sudo apt-get install mongodb

### For all platforms

The runtime is Node 0.10.
The runtime is Node 0.10 for the web application, and Python 2.7 for Openfisca.

You can for example use [`nvm`](https://github.com/creationix/nvm) to install this specific version.

You will need [`pip`](https://pip.pypa.io/) to install Openfisca.


### In production

Expand All @@ -49,6 +49,22 @@ npm install
If you need to add features to the API, the best is to [`npm link`](https://docs.npmjs.com/cli/link) `sgmap/mes-aides-api` into `mes-aides-ui`, to avoid depending on the published version.


Openfisca
---------

```sh
cd mes-aides-ui
npm run install-openfisca # ou pip install --upgrade -r openfisca/requirements.txt si vous utilisez un environnement virtuel
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Il faut probablement expliciter la dépendance à pip.

```

### Development mode

If you are working on `openfisca-france` and want to use your local version:
```
cd (...)/openfisca-france
pip install -e .
```

Usage
-----

Expand All @@ -58,7 +74,12 @@ First, start a Mongo server:
npm run db &
```

Then, start the server:
Then, start the Openfisca server:
```sh
npm run openfisca
```

Finally, start the server:

```sh
npm start
Expand Down Expand Up @@ -125,8 +146,9 @@ Pousser sur `sgmap/mes-aides-ui#master` la version du code à déployer.

### OpenFisca

Commiter et pousser l'état des différents sous-modules dans `sgmap/openfisca`.
Éditer le fichier `openfisca/requirements.txt` en y indiquant la version d'Openfisca que vous souhaitez utiliser.

Ce fichier est au format [`requirements.txt`](https://pip.pypa.io/en/stable/reference/pip_install/#example-requirements-file) de `pip`. Généralement, vous le mettrez à jour pour faire pointer l'un des modules Openfisca vers une branche de développement en attendant la publication de ce module sur PyPI.


Déploiement
Expand Down
4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,9 @@
"test-integration": "test/integration/run-integration-tests.sh",
"predb": "mkdir -p db",
"db": "mongod --dbpath db",
"db-update": "./import-tests.sh"
"db-update": "./import-tests.sh",
"install-openfisca": "pip install --user --upgrade -r openfisca/requirements.txt",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je mettrais plutôt ça dans preopenfisca, pour que lancer openfisca via NPM soit toujours à jour de l'état courant de l'application.

Copy link
Contributor Author

@fpagnoux fpagnoux Oct 14, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

J'y vois deux inconvénients :

  • Si j'utilise un virtualenv, je ne peux pas utiliser install-openfisca. Lier les deux scripts m'empêcherait aussi d'utiliser npm run openfisca.
  • Si j'ai installé openfisca en mode éditable pour travailler sur une formule, exécuter la commande install-openfisca me réinstallera openfisca à partir du dépôt distant. Lier les deux scripts m'empêche aussi dans ce cas d'utiliser npm run openfisca.

Copy link
Contributor Author

@fpagnoux fpagnoux Oct 14, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On pourrait le mettre ce script en postinstall, mais ça pose la question suivante: "Est-ce que parfois on veut installer mes-aides sans installer openfisca ?"

"openfisca":"paster serve openfisca/api_config.ini"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Manque un espace après les deux points ;)

},
"license": "AGPL-3.0"
}