CKAN Issues Extension
This extension allows users to to report issues with datasets in a CKAN instance.
Current Status: Beta
What it does
Once installed and enabled, the issues extension will make available a per- dataset issue tracker.
The issue tracker user interface can be found at:
You can add an issue at:
The issues extension also exposes its functionality as part of the standard CKAN Action API:
/api/3/action/issue_show /api/3/action/issue_create /api/3/action/issue_update /api/3/action/issue_delete /api/3/action/issue_search /api/3/action/issue_count /api/3/action/issue_comment_create /api/3/action/issue_report /api/3/action/issue_report_clear /api/3/action/issue_comment_report /api/3/action/issue_comment_report_clear
To install the plugin, enter your virtualenv and install the source::
pip install -e git+http://github.com/ckan/ckanext-issues
Create the necessary tables:
paster --plugin=ckanext-issues issues init_db -c ckan.ini
This will also register a plugin entry point, so you now should be able to add the following to your CKAN .ini file::
ckan.plugins = issues
After you clear your cache and restart the web server, the Issues extension should be available.
Upgrade from older versions
When upgrading ckanext-issues from older code versions, you should run the issues upgrade command, in case there are any model migrations (e.g. 11th Jan 2016):
paster --plugin=ckanext-issues issues upgrade_db -c test-core.ini
To switch-on notifications, you should set the following option in your configuration, and all users in the group will get the email.
ckanext.issues.send_email_notifications = true
If you set max_strikes then users can 'report' a comment as spam/abuse. If the number of users reporting a particular comment hits the max_strikes number then it is hidden, pending moderation.
ckanext.issues.max_strikes = 2
By default, issues are enabled for all datasets. If you wish to restrict issues to specific datasets or organizations, you can use these config options:
ckanext.issues.enabled_for_datasets = mydataset1 mydataset2 ... ckanext.issues.enabled_for_organizations = department-of-transport health-regulator
Alternatively, you can switch issues on/off for particular datasets by using an extra field:
and you can set the default for all the other datasets (without that extra field):
ckanext.issues.enabled_without_extra = false
For the extra field to work you must not set
Please open an issue in the github issue tracker.
Normal requirements for CKAN Extensions (including an installation of CKAN and its dev requirements). Contributions welcome.
Testing with Postgres
To run full production tests on postgres run. These are the tests that the travis build will run
nosetests --ckan --with-pylons=test.ini -v --with-id ckanext/issues --with-coverage --cover-package=ckanext.issues --nologcapture
Testing with sqlite
For quick development tests run. --reset-db is necessary when running sqlite tests in memory
nosetests --reset-db --ckan --with-pylons=test-sqlite.ini -v --with-id ckanext/issues --with-coverage --cover-package=ckanext.issues --nologcapture