Exemple #1
0
def main():
    """Module body."""
    try:
        conf_loader  = ConfLoader(dirname(realpath(__file__)) + '/conf')
        app_conf = conf_loader.load('conf')
        factories = (UserFactory(conf_loader.load('users')), CommandFactory(conf_loader.load('commands')))
        adapter = JobSqliteAdapter(app_conf['sqlite']['file'])
        job_service = JobService(adapter)
        rest_server = RESTServer(app_conf['http'], factories, job_service)
        daemon = RESTExecd(app_conf['daemon'], rest_server=rest_server)
        if len(sys.argv) == 2:
            if 'start' == sys.argv[1]:
                daemon.start()
            elif 'stop' == sys.argv[1]:
                daemon.stop()
            elif 'restart' == sys.argv[1]:
                daemon.restart()
            else:
                print "Error: Unknown command {0}".format(sys.argv[1])
                sys.exit(2)
            sys.exit(0)
        else:
            print "usage: %s start|stop|restart" % sys.argv[0]
            sys.exit(2)
    except RxcException as err:
        print 'Error: {0}'.format(err)
        sys.exit(1)
Exemple #2
0
def main():
    """Module body."""
    parser = OptionParser()
    parser.add_option('-e', '--exec', action='store_true', dest='execute', default=False, help='Command is executed')
    (options, args) = parser.parse_args()
    if len(args) != 1 :
        print "{0}: {1}".format(bold('Syntax'), r'./try_command.py command_identifier?param1=value1\&param2=value2')
        sys.exit(1)
    command_id, command_params = CommandFactory.parse_url(args[0])
    conf_loader = ConfLoader(dirname(realpath(__file__)) + '/conf')
    factory = CommandFactory(conf_loader.load('commands'))
    try:
        command = factory.get_by_id(command_id)
        command.insuflate(command_params) 
    except RxcCommandException as err:
        print '{0}: {1}'.format(bold('Error'), err)
        sys.exit(1)
    
    if not options.execute:
        print "{0}: {1}\n(use --exec to execute it.)".format(bold('Command'), command.to_exec)
        sys.exit(0)
    try:
        result = command.run()
        for key, value in result.items():
            print '-' * 80 
            print "{0}\n{1}".format(bold(key), value)
        print '-' * 80
        sys.exit(0)
    except RxcCommandException as err:
        print '{0}: {1}'.format(bold('Error'), err)
        sys.exit(1)
def main():
    """Module body."""
    try:
        conf_loader = ConfLoader(dirname(realpath(__file__)) + '/conf')
        app_conf = conf_loader.load('conf')
        factories = (UserFactory(conf_loader.load('users')), CommandFactory(conf_loader.load('commands')))
        adapter = JobSqliteAdapter(app_conf['sqlite']['file'])
        job_service = JobService(adapter)
        rest_server = RESTServer(app_conf['http'], factories, job_service)
        rest_server.run()
    except RxcException as err:
        print 'Error: {0}'.format(err)
        sys.exit(1)