def trello(): prompt_for_keychain('Trello API key', AuthKeys.TRELLO_API_KEY, hide=False) prompt_for_keychain('Trello token', AuthKeys.TRELLO_TOKEN) client = TrelloClient( wf.get_password(AuthKeys.TRELLO_API_KEY), wf.get_password(AuthKeys.TRELLO_TOKEN) ) me = client.get_me() boards = client.get_boards(me.id) click.secho('Boards', bold=True) for i, board in enumerate(boards): click.echo('{}: {}'.format(i, board.name)) board_index = click.prompt('Choose a board for card creation', type=int) board = boards[board_index] lists = client.get_lists(board.id) for i, list_ in enumerate(lists): click.echo('{}: {}'.format(i, list_.name)) list_index = click.prompt('Choose a list for card creation', type=int) list_ = lists[list_index] kwargs = { ConfigKeys.TRELLO_MEMBER_ID: me.id, ConfigKeys.TRELLO_BOARD_ID: board.id, ConfigKeys.TRELLO_LIST_ID: list_.id, } config.set(**kwargs)
def prompt_for_config(label, key): current = config.get(key, enforce=False) value = click.prompt(label, default=current) kwargs = {key: value} config.set(**kwargs) assert config.get(key) == value