You may of course run this as any django application. However we've included some docker based tools and a demo project to make things easier.
Running development environment with Docker Compose
This will get you a quick way to run report builder in a demo project - ideal for hacking on.
- Install Docker Compose and Docker
- Populate the database with
docker-compose run --rm web python manage.py migrate.
- Go to
- You may want to edit
docker-compose.ymlto comment/uncomment the django-report-utils line. Report utils is a separated library with common reporting functions. If you want to hack on report utils too just clone the repo in a sibling directory.
Testing with docker-compose
docker-compose run --rm web python manage.py test.
Then to make sure your codes conforms to pep8:
docker-compose run --rm web flake8
To run tests with multiple Django versions run
docker-compose run --rm web tox
Please check django versions before submitting merge requests.
Python code should follow pep8 standards.
Pull requests should include a unit test on any added behavior. If it fixes a bug, it needs a failing test to show what it fixed. Documentation should also be updated, if needed.
Making pull requests
After you have a pull request that passes on Travis, and you have added any needed test cases, please squash your commits. If it makes more sense to break it up into smaller commits, you can do that as well. Just try to think what would be most helpful, when someone looks back in the git history to see why this file was changed.