Skip to content
Workflow, visualizations and data services for managing NGO projects and programs
Python HTML JavaScript Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update README and PR template Feb 6, 2018
docker/etc/nginx Merge branch 'demo' Feb 15, 2018
factories TOLA-499: Removing codedfield and codedfielddata Mar 7, 2019
formlibrary TOLA-501: Remove FormGuidance Mar 7, 2019
gladmap Remove Feature and Industry Models on TolaActivty Mar 12, 2019
indicators Adding migration for null disaggregation values Apr 3, 2019
requirements Fix urllib3 vulnerability Dec 13, 2018
search Fix ElasticSearch views' tests Sep 6, 2018
templates TOLA-501: Remove FormGuidance Mar 7, 2019
templates2 Move workflow templates to its directory May 3, 2018
tola TOLA-81 add create translations script to loadinitialdata Oct 25, 2018
.coveragerc Ignore certain files in coveralls Dec 1, 2017
.gitignore PEP8 Nov 21, 2017
.travis.yml Add Travis check for missing migration files Apr 25, 2018 Update May 26, 2017 Update Nov 9, 2017 Move requirements to their own folder Jan 17, 2018 Remove ChargeBee URL from the ENVIRONMENT doc Apr 24, 2018 Include workflow package data to MANIFEST Aug 27, 2018 Delete deprecated development notes Jun 6, 2018 Delete comment Dec 14, 2017
docker-compose-dev.yml Add DEFAULT_REPLY_TO env var in the settings Mar 1, 2018 Fix bug running always with test config in dev Jan 16, 2018 Add tola utils to the package Jun 21, 2018 Wait until the postgres is ready before test running Mar 22, 2018

Tola Activity Build Status Coverage Status

TolaActivity extends the functionality of TolaData to include a set of forms and reports for managing project activities for a WorkflowLevel1. It includes workflow for approving and completing projects as well as sharing the output data.

TolaActivity functionality is intended to allow importing and exporting of project specific data from 3rd party data sources or excel files.


Location of settings:

  • Development: tola/settings/
  • Test runner: tola/settings/ and tola/settings/
  • Staging/Production: tola/settings/

Check the documentation on setting up search functionality in search/

Deploy locally via Docker

Build first the images:

docker-compose -f docker-compose-dev.yml build

To run the webserver (go to

docker-compose -f docker-compose-dev.yml up # -d for detached

User: admin Password: admin.

To run the tests:

docker-compose -f docker-compose-dev.yml run --entrypoint '/usr/bin/env' --rm web python test # --keepdb to run second time faster

To run the package building tests, follow these steps:

docker-compose -f docker-compose-dev.yml run --entrypoint '/usr/bin/env' --rm web bash
# Now inside the container
pip freeze | grep -v "^-e" | xargs pip uninstall -y; pip uninstall -y social_auth_core; cat requirements/base.txt | grep "^Django==\|^psycopg2" | xargs pip install; pip install -r requirements/pkg.txt
python test --tag=pkg --keepdb

To run the webserver with pdb support:

docker-compose -f docker-compose-dev.yml run --rm --service-ports web

To run bash:

docker-compose -f docker-compose-dev.yml run --entrypoint '/usr/bin/env' --rm web bash

or if you initialized already a container:

docker exec -it web bash

To connect to the database when the container is running:

docker exec -it postgres psql -U root tola_activity

If the database is empty, you may want to populate extra demo data to play around with Activity:

docker-compose -f docker-compose-dev.yml run --entrypoint '/usr/bin/env' --rm web python loadinitialdata  --demo

(Be careful using this, only on demo!) If the database is already populated and you want to restore the default data:

docker-compose -f docker-compose-dev.yml run --entrypoint '/usr/bin/env' --rm web python loadinitialdata  --restore

Issue with the local environment

If you're getting an error in your local environment, it can be related to the social-core library. To solve this issue you need to execute the following step:

  • With the container running, go into it with this command:

    docker exec -it web bash

  • Install the social-core lib again:

    pip install -e git://

  • Now, restart the container.

It should solve the problem!

Deploy locally using virtualenv

Given pip is installed:

pip install virtualenv

Create the environment:

virtualenv —no-site-packages venv

Note: use no site packages to prevent virtualenv from seeing your global packages.

Activate the environment:

. venv/bin/activate


source venv/bin/activate

Install requirements:

pip install -r requirements/dev.txt

Set up database:

python migrate

Run the server:

python runserver

Creating PRs and Issues

The following templates were created to easy the way to create tickets and help the developer.

  • Bugs and Issues [+]
  • New features [+]
  • Pull requests [+]
You can’t perform that action at this time.