SATU Data: Setup datastore
Enable Plugin
Edit sudo vi /etc/ckan/default/development.ini
ckan.plugins = datastore
Database
Create Datastore & masukan password
sudo -u postgres createuser -S -D -R -P -l datastore_default
Buat database
sudo -u postgres createdb -O ckan_default datastore_default -E utf-8
Edit sudo vi /etc/ckan/default/development.ini
ckan.datastore.write_url = postgresql://ckan_default:pass@localhost/datastore_default ckan.datastore.read_url = postgresql://datastore_default:pass@localhost/datastore_default
ckan.datastore.write_url = postgresql://ckan_default:123456@localhost/datastore_default (contoh) ckan.datastore.read_url = postgresql://datastore_default:123456@localhost/datastore_default (contoh)
Set permission
sudo -u postgres psql paster --plugin=ckan datastore set-permissions -c /etc/ckan/default/development.ini | sudo -u postgres psql --set ON_ERROR_STOP=1 \q
Storage
sudo mkdir -p /var/lib/ckan/default/storage sudo chmod -Rf 777 /var/lib/ckan/default/storage/ sudo chown -Rf nobody: /var/lib/ckan/default/storage/
Edit sudo vi /etc/ckan/default/development.ini
ckan.storage_path = /var/lib/ckan/default/storage/
Restart Web
paster serve /etc/ckan/default/development.ini
Test
curl -X GET "http://127.0.0.1:5000/api/3/action/datastore_search?resource_id=_table_metadata" curl -X POST http://127.0.0.1:5000/api/3/action/datastore_create -H "Authorization: {YOUR-API-KEY}" -d '{"resource": {"package_id": "{PACKAGE-ID}"}, "fields": [ {"id": "a"}, {"id": "b"} ], "records": [ { "a": 1, "b": "xyz"}, {"a": 2, "b": "zzz"} ]}'
http://127.0.0.1:5000/api/3/action/datastore_search?resource_id={RESOURCE_ID} curl -X POST http://127.0.0.1:5000/api/3/action/datastore_delete -H "Authorization: {YOUR-API-KEY}" -d '{"resource_id": "{RESOURCE-ID}"}'