Difference between revisions of "SATU Data: Setup datastore"
Jump to navigation
Jump to search
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) |
||
(8 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
ckan.plugins = datastore | ckan.plugins = datastore | ||
+ | |||
+ | ==Database== | ||
Create Datastore & masukan password | Create Datastore & masukan password | ||
Line 12: | Line 14: | ||
sudo -u postgres createdb -O ckan_default datastore_default -E utf-8 | 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}"}' | ||
==Referensi== | ==Referensi== |
Latest revision as of 08:37, 27 July 2019
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}"}'