datajoint-python icon indicating copy to clipboard operation
datajoint-python copied to clipboard

interactive add-store

Open ixcat opened this issue 4 years ago • 1 comments
trafficstars

Feature Request

Problem

datajoint store syntax is fairly complicated, with various parameters that overlap/vary by type, etc. this usually means store setup involves manual editing of very picky json files, or cross referencing docs, for keys, etc.

it would be nice if, like database users, etc. datajoint provided a way to interactively configure remote stores with prompts

Requirements

function which is capable of providing dj.conn() like interactive prompting for required external store settings. e.g.:

>>> dj.config.add_store()
store name: cloud
store type? [blob, filepath]: 'blob'
store protocol? [filesystem, s3]: 's3'
s3 endpoint? [default: s3.amazonaws.com]: <enter>
s3 bucket name: muhdata
s3 key id: muhkee
s3 key: sekrit
created new store 'cloud'! # < could optionally confirm access somehow in the background
>>> dj.config.save_local()

Justification

much simpler ease of use for external stores; makes store configuration consistent with dj's 'interactivity friendly' design philosophy

ixcat avatar May 21 '21 16:05 ixcat

@ixcat Nice suggestion. I could see how this could be easier for users to follow.

guzman-raphael avatar May 21 '21 19:05 guzman-raphael