Skip to main content

Extension to manage CKAN resources in any S3-like object storage.

Project description

CKAN Cloudstorage API

Extension to manage CKAN resources in any S3-like object storage.

Documentation: https://envidat.gitlab-pages.wsl.ch/ckanext-cloudstorage_api/

Source Code: https://gitlabext.wsl.ch/EnviDat/ckanext-cloudstorage_api


This plugin is primarily intended for custom frontends built on the CKAN API.

Supports any S3-like API, e.g. Minio, Ceph Object Gateway.

Full support for all Apache libcloud drivers was dropped, due to primarily relying on S3 multipart and pre-signed URL capabilities.

Install

pip install ckanext-cloudstorage-api

Config

Required variables are set in your ckan.ini:

  • ckanext.cloudstorage_api.host
    • Type: str.
    • Description: The S3 host URL.
  • ckanext.cloudstorage_api.region
    • Type: str.
    • Description: The S3 host region.
  • ckanext.cloudstorage_api.access_key
    • Type: str.
    • Description: Access key for S3.
  • ckanext.cloudstorage_api.secret_key
    • Type: str.
    • Description: Secret key for S3.
  • ckanext.cloudstorage_api.bucket_name
    • Type: str.
    • Description: The name of the S3 bucket to store files.
  • ckanext.cloudstorage_api.bucket_path
    • Type: str.
    • Description: (Optional) The path within the S3 to store files. Default: "/", i.e. bucket root.
  • ckanext.cloudstorage_api.max_multipart_lifetime
    • Type: str.
    • Description: (Optional) maximum time a multipart part can exist. Multiparts will be cleaned if older than this by calling the cloudstorage_clean_multiparts endpoint.
  • ckanext.cloudstorage_api.leave_files
    • Type: bool.
    • Description: (Optional) leave files on S3 after resource deletion.

Endpoints

Actions

{CKAN_HOST}/api/3/action/{ACTION_NAME}

  • cloudstorage_initiate_multipart
  • cloudstorage_get_presigned_url_download
  • cloudstorage_get_presigned_url_multipart
  • cloudstorage_get_presigned_url_list_multipart
  • cloudstorage_multipart_list_parts
  • cloudstorage_finish_multipart
  • cloudstorage_abort_multipart
  • cloudstorage_check_multipart
  • cloudstorage_clean_multipart

Blueprints

  • /download/<resource_id>
    • Description: redirect to download a resource directly.

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-cloudstorage-api-0.2.0.tar.gz (15.0 kB view hashes)

Uploaded Source

Built Distribution

ckanext_cloudstorage_api-0.2.0-py3-none-any.whl (16.3 kB view hashes)

Uploaded Python 3

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