cli beginnings
This commit is contained in:
parent
64b369f4d3
commit
570b08d189
|
@ -0,0 +1,48 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import sys
|
||||
|
||||
import cli.app
|
||||
import cli.log
|
||||
|
||||
|
||||
DEFAULT_PARAMS = (
|
||||
(('--url',), {'dest': 'url', 'action': 'store'}),
|
||||
(('--token',), {'dest': 'token', 'action': 'store'}),
|
||||
)
|
||||
|
||||
|
||||
class BaseApp(cli.log.LoggingApp):
|
||||
def __init__(self, *args, **kw):
|
||||
kw.setdefault('name', self.__class__.__name__.lower())
|
||||
super(BaseApp, self).__init__(*args, **kw)
|
||||
|
||||
def add_default_params(self):
|
||||
for args, kw in DEFAULT_PARAMS:
|
||||
self.add_param(*args, **kw)
|
||||
|
||||
|
||||
class LoadData(BaseApp):
|
||||
def __init__(self, *args, **kw):
|
||||
super(LoadData, self).__init__(*args, **kw)
|
||||
self.add_default_params()
|
||||
self.add_param('fixture', nargs='+')
|
||||
|
||||
def main(self):
|
||||
"""Given some fixtures, create the appropriate data in Keystone Light."""
|
||||
pass
|
||||
|
||||
|
||||
|
||||
CMDS = {'loaddata': LoadData,
|
||||
}
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
if not len(sys.argv) > 1:
|
||||
print 'try one of:', ' '.join(CMDS.keys())
|
||||
sys.exit(1)
|
||||
|
||||
cmd = sys.argv[1]
|
||||
if cmd in CMDS:
|
||||
CMDS[cmd](argv=(sys.argv[:1] + sys.argv[2:])).run()
|
Loading…
Reference in New Issue