#!/usr/bin/env python
import logging
import errno
from cocaine.exceptions import CocaineError

from cocaine.tools.cli import ToolsError
from cocaine.tools.dispatcher import d


__author__ = 'EvgenySafronov <division494@gmail.com>'


__doc__ = '''Provides helpful tools for management, viewing, uploading and other actions with cocaine applications
and services'''


log = logging.getLogger('cocaine.tools')


if __name__ == '__main__':
    try:
        d.dispatch()
    except (CocaineError, ToolsError) as err:
        log.error(err)
        exit(128)
    except ValueError as err:
        log.error(err)
        exit(errno.EINVAL)
    except KeyboardInterrupt:
        log.error('Terminated by user')
        exit(errno.ECANCELED)
    except Exception as err:
        log.error('Unknown error occurred - %s', err)
        exit(128)
