The official OpenFisca documentation now explains how to install OpenFisca and its stack.
OpenFisca has started to be properly packaged mid-2016. At the end of 2016, we've been able to confirm that the published packages work well and we switched our products to use pip
. After 8 weeks without issues, this repository —which was working around the lack of packaging— is now deprecated.
The text below still accurately describes what this repository does, but this workaround is not necessary anymore, and using it would be counterproductive.
This repository eases the deployment of a production OpenFisca instance.
Ce dépôt facilite le déploiement d'une instance d'OpenFisca en production.
OpenFisca is comprised of four different parts, to which you can add optional extensions:
Example of extension: openfisca-paris
.
At the time of writing, these parts are not packaged and lack a versioning strategy. This makes it pretty hard to deploy a stable instance for production matters.
This repository references specific versions of each part of OpenFisca (as well as the extensions to include in the instance) and executes as many tests as possible on the resulting combination through continuous integration.
You might know this approach from language-specific package managers. It is akin to a
gemfile.lock
or ashrinkwrap
file. However, here, since there is no packaged version of each module, we uniquely reference them through a commit SHA with git submodules.
The tests come from the few tests that are available within each OpenFisca module, and from client applications that have created their own functional tests such as mes-aides
. We aim at adding as many tests as possible to ensure maximal coverage.
- Execute the scripts matching your host machine in the
bootstrap
folder.
git clone https://github.com/sgmap/openfisca.git && openfisca/update.sh
To add an extension to this repository:
git submodule add $extension_repository openfisca/extensions/$extension_name