Basic CLI implementation with Click

This commit is contained in:
Przemyslaw Kaminski
2015-04-16 18:36:59 +02:00
parent f65fffb15f
commit a4e0fa580e
5 changed files with 126 additions and 8 deletions

View File

@@ -1,4 +1,5 @@
# -*- coding: UTF-8 -*-
import json
import os
import shutil
@@ -24,8 +25,8 @@ class Resource(object):
def __repr__(self):
return "Resource('name={0}', metadata={1}, args={2}, base_dir='{3}')".format(self.name,
self.metadata,
self.args,
json.dumps(self.metadata),
json.dumps(self.args),
self.base_dir)
def update(self, args):

View File

@@ -12,7 +12,7 @@ CLIENTS_CONFIG_KEY = 'clients-data-file'
CLIENTS = utils.read_config_file(CLIENTS_CONFIG_KEY)
def guess_mappings(emitter, receiver):
def guess_mapping(emitter, receiver):
"""Guess connection mapping between emitter and receiver.
Suppose emitter and receiver have inputs:
@@ -49,11 +49,11 @@ def guess_mappings(emitter, receiver):
return ret
def connect(emitter, receiver, mappings=None):
if mappings is None:
mappings = guess_mappings(emitter, receiver)
def connect(emitter, receiver, mapping=None):
if mapping is None:
mapping = guess_mapping(emitter, receiver)
for src, dst in mappings:
for src, dst in mapping.items():
CLIENTS.setdefault(emitter.name, {})
CLIENTS[emitter.name].setdefault(src, [])
CLIENTS[emitter.name][src].append((receiver.name, dst))