From 40e92d9180c00f3649588cf9c0309a6d5ea7af57 Mon Sep 17 00:00:00 2001 From: rgrp Date: Sat, 10 Dec 2011 12:36:28 +0000 Subject: [PATCH] [doc/plan][s]: add a plan to doc detailing (incompletely) ideas around source data packages. --- doc/new-plan-2011-nov.rst | 93 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 doc/new-plan-2011-nov.rst diff --git a/doc/new-plan-2011-nov.rst b/doc/new-plan-2011-nov.rst new file mode 100644 index 0000000..f157208 --- /dev/null +++ b/doc/new-plan-2011-nov.rst @@ -0,0 +1,93 @@ +=========================================== +Data Package Manager - New Plan Autumn 2011 +=========================================== + + +The two roles: + +* dpm as a data *package* manager - like pip, gem, apt-get +* dpm as a data *source* manager - like mercurial / git / ... + +dpm as pure *package* manager +----------------------------- + +Commands:: + + dpm search + dpm info + dpm install + dpm publish + +dpm as source package manager +----------------------------- + +Commands:: + + dpm clone + dpm init + dpm push + dpm add + +Creating source data package from scratch:: + + $ dpm init {name} + > ask you a few questions + Your source data package has been created at ... + + # create csv + $ cp /some/path/to/my.csv data/my.csv + $ dpm add data/my.csv + $ dpm status + Staged files are ... + + # Now upload + $ dpm push + Pushing to ... + +Working on existing:: + + $ dpm clone {url} {path} + ... + $ edit some files + + $ dpm add {changed files} + $ dpm push ... + +Source package layout +~~~~~~~~~~~~~~~~~~~~~ + +Same as normal package but in addition have .dpm directory:: + + datapackage.json + .dpm/ + config + manifest + +.dpm/config file +~~~~~~~~~~~~~~~~ + +Looks like:: + + [remote] + # ckan url + url = http://test.ckan.org/ + +.dpm/manifest +~~~~~~~~~~~~~ + +List of files that we manage and their connection to remote webstore. On push this needs to sync with datapackage.json:: + + {resource} + local_path + webstore_url + state: new, unchanged, changed, deleted + syncinfo: { + unique_columns: + } + + +Questions +~~~~~~~~~ + +* Duplication of datapackage.json and .dpm/config and .dpm/manifest? +