Skip to main content

Publish data to a CKAN instance

Project description

Summary

This cube enables data publishing to a CKAN opendata portal.

Configuration

The cube essentially provides hooks to push data in a CKAN instance. The mapping from CubicWeb entities is handled by adapters which themselves rely on dedicated attributes on the entities:

  • ICKANDataset adapter relies on a ckan_dataset_id attribute on the adapted entity. As its name suggests, the latter is used to relate a CubicWeb entity to a CKAN dataset (the fundamental entity type in CKAN data model).
  • ICKANResource adapter relies on a ckan_resource_id attribute. It is used to related some CubicWeb entity type to a CKAN resource.

The push of a resource on CKAN instance should be triggered by the addition of a relation between the dataset-like entity and a resource-like entity in CubicWeb. This is handled by the LinkResourceToDatasetHook hook, which is abstract and should thus subclass by setting its rtype attribute.

See test/data for a minimal example.

Testing

Testing this cube requires a running CKAN instance with a (dedicated) organization and a user with editors permission in the organization. Corresponding information are expected in the test/ckanconfig.py file.

baseurl = '<url-of-ckan-instance>'
organization = '<organization-name>'
apikey  = '<api-key-of-user-with-editors-permissions-on-organization>'

Note that, since CKAN does not expose an API function to purge datasets, we can only delete them in tests. So, one has to manually purge test datasets from the CKAN at <baseurl>/ckan-admin/trash.

Project details


Download files

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

Files for cubicweb-ckanpublish, version 0.2.0
Filename, size & hash File type Python version Upload date
cubicweb-ckanpublish-0.2.0.tar.gz (13.0 kB) View hashes Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page