Django Dash participation, http://gitality.com/
Gitality is supposed to serve as achievement engine for open source developers. Developers unlock achievements by contributing to their GitHub projects.
Login via Github. Add your Github project at the 'Create' page. Every 25 minutes status of your project will be updated (webhooks support is not available yet) and you'll get new achievements and see stats.
$ git clone https://github.com/dmrz/gitality.git gitality_project
If you use virtualenv with virtualenvwrapper, installation is straightforward:
$ cd gitality_project
$ make
This will create virtualenv gitality
, prepare local settings module at gitality/gitality/local_settings.py
, install requirements, sync database (sqlite), run migrations and seed with development fixtures.
You can now run project using make run
.
In a case you want to use postgresql, instead of sqlite, run make settings_postgres
, edit gitality/gitality/local_settings.py
to provide your settings, create postgres database or just run make postgres
(assuming your current system user has permissions to create databases and your db name is gitality
), then run make db
to sync, migrate and seed it.
Once you've managed and activated your virtual (or not :|) environment:
$ cd gitality_project
- Prepare local settings (skip this step if you want to create your own):
$ make settings # if you want to use sqlite
$ make settings_postgres # if you want to use postgresql
-
Edit your local settings at
gitality/gitality/local_settings.py
or create your own if you skipped previous step (local settings module requires to have DATABASES setting). -
Install project requirements:
$ pip install -r requirements.txt
- Sync, migrate and seed database:
$ python gitality/manage.py syncdb --noinput
$ python gitality/manage.py migrate --noinput
$ python gitality/manage.py loaddata fixtures/dev/*
$ python gitality/manage.py loaddata fixtures/common/*
- Run project:
$ python gitality/manage.py runserver
NOTE: You can login to admin using the following credentials: username = admin
, password = admin
.
Certain additional settings are required for a project to operate properly, you can provide all in gitality/gitality/local_settings.py
:
# Used for GitHub sign in support, you can get these
# by creating an application in your GitHub settings.
GITHUB_APP_ID = '...'
GITHUB_API_SECRET = '...'
# GitHub account credentials that
# will be used to consume GitHub's API.
GITHUB_BOT_NAME = '...'
GITHUB_BOT_PASSWORD = '...'
Gitality uses background and periodic tasks for it's functionality by utilizing amazing Celery project. Celery worker uses redis as broker and result backend, so it has to be installed (otherwise you can override celery settings).
Running celery (in separte terminal window):
$ python gitality/manage.py celery worker -B