Skip to main content

Extended workflow for dataset lifecycle

Project description

================ ckanext-workflow


Requirements

For example, you might want to mention here which versions of CKAN this extension works with.


Installation

.. Add any additional install steps to the list below. For example installing any non-Python dependencies or adding any required config settings.

To install ckanext-workflow:

  1. Activate your CKAN virtual environment, for example::

    . /usr/lib/ckan/default/bin/activate

  2. Install the ckanext-workflow Python package into your virtual environment::

    pip install ckanext-workflow

  3. Add workflow to the ckan.plugins setting in your CKAN config file (by default the config file is located at /etc/ckan/default/production.ini).

  4. Add next fields to your dataset schema::

       {
           "field_name": "workflow_type",
           "label": "Workflow type",
           "form_snippet": null,
           "validators": "workflow_type_validator"
       },
       {
           "field_name": "workflow_stage",
           "label": "Workflow state",
           "form_snippet": null,
           "validators": "workflow_stage_validator"
       },
       {
           "field_name": "original_id_of_revision",
           "label": "Original dataset",
           "preset": "revision_field"
       }
    
  5. Add workflow presets to scheming(ckanext.workflow:presets.json)::

    scheming.presets = ckanext.scheming:presets.json ckanext.workflow:presets.json

  6. Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu::

    sudo service apache2 reload


Config Settings

Document any optional config settings here. For example::

workflow.site_admin.email = email@example.com

Development Installation

To install ckanext-workflow for development, activate your CKAN virtualenv and do::

git clone https://github.com/DataShades/ckanext-workflow.git
cd ckanext-workflow
python setup.py develop
pip install -r dev-requirements.txt

Deployment Notes

If after adding this extension to existing CKAN instance, it would be disirable to add workflow fields to all existing datasets. You can mark all public/active datasets as published and all other as unpublished by executing next command::

$ paster workflow migrate -c config-file

If you want to update particular dataset, you can run special case::

$ paster workflow migrate PACKAGE_ID_OR_NAME -c config-file


Running the Tests

To run the tests, do::

nosetests --nologcapture --with-pylons=test.ini

To run the tests and produce a coverage report, first make sure you have coverage installed in your virtualenv (pip install coverage) then run::

nosetests --nologcapture --with-pylons=test.ini --with-coverage --cover-package=ckanext.workflow --cover-inclusive --cover-erase --cover-tests

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ckanext-workflow-1.1.1.tar.gz (18.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page