Skip to content
This repository has been archived by the owner on Apr 16, 2018. It is now read-only.

betagouv/openfisca-ops

Repository files navigation

This repository is deprecated

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.

Rationale

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.

Solution

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 a shrinkwrap 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.

Usage

Prerequisites

  • Execute the scripts matching your host machine in the bootstrap folder.

Run

git clone https://github.com/sgmap/openfisca.git && openfisca/update.sh

Extensions

To add an extension to this repository:

git submodule add $extension_repository openfisca/extensions/$extension_name