Exemple #1
0
def makeService(conf):
    mqService = client.makeService(conf)
    mqFactory = mqService.mqFactory


    processRequest = queue.returnResponse(defer_pipe.pipe([queue.keysInBody(['cluster',
                                                                             'tasklet',
                                                                             'conf']),
                                                           forwardOrCreate(
                                                               conf('www.url_prefix') + '/' +
                                                               os.path.basename(conf('tasklets.tasklets_www')),
                                                               conf('tasklets.tasklets_queue'),
                                                               'runTasklets',
                                                               1)]))



    queue.subscribe(mqFactory,
                    conf('tasklets.tasklets_www'),
                    conf('tasklets.concurrent_tasklets'),
                    queue.wrapRequestHandler(None, processRequest))


    processRunTasklet = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['tasklet',
                                                                                'conf']),
                                                              handleRunTasklet]),
                                             queue.failureMsg)
    
    queue.subscribe(mqFactory,
                    conf('tasklets.tasklets_queue'),
                    conf('tasklets.concurrent_tasklets'),
                    queue.wrapRequestHandlerTask(None, processRunTasklet))
    
    
    return mqService
Exemple #2
0
def makeService(conf):
    mqService = client.makeService(conf)
    mqFactory = mqService.mqFactory

    processRequest = queue.returnResponse(
        defer_pipe.pipe([
            queue.keysInBody(['cluster', 'tasklet', 'conf']),
            forwardOrCreate(
                conf('www.url_prefix') + '/' +
                os.path.basename(conf('tasklets.tasklets_www')),
                conf('tasklets.tasklets_queue'), 'runTasklets', 1)
        ]))

    queue.subscribe(mqFactory, conf('tasklets.tasklets_www'),
                    conf('tasklets.concurrent_tasklets'),
                    queue.wrapRequestHandler(None, processRequest))

    processRunTasklet = defer_pipe.hookError(
        defer_pipe.pipe(
            [queue.keysInBody(['tasklet', 'conf']), handleRunTasklet]),
        queue.failureMsg)

    queue.subscribe(mqFactory, conf('tasklets.tasklets_queue'),
                    conf('tasklets.concurrent_tasklets'),
                    queue.wrapRequestHandlerTask(None, processRunTasklet))

    return mqService
Exemple #3
0
def wrapRequestHandler(state, f):
    _addState = lambda r : defer_pipe.ret(r.update(state=state))
    
    return defer_pipe.pipe([decodeRequest,
                            defer_pipe.hookError(defer_pipe.pipe([keysInBody(['return_queue']),
                                                                  _addState,
                                                                  f,
                                                                  ackMsg]),
                                                 ackMsgFailure)])
def subscribe(mq, state):
    processGetCType = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(['credential_name']),
            credentials_misc.loadCredentialForRequest, handleGetCType
        ]), queue.failureMsg)
    queue.subscribe(mq, state.conf('credentials.getctype_queue'),
                    state.conf('credentials.concurrent_getctype'),
                    queue.wrapRequestHandler(state, processGetCType))
def subscribe(mq, state):
    processListKeypairs = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name']),
                                                                credentials_misc.loadCredentialForRequest,
                                                                handleListKeypairs]),
                                               queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.listkeypairs_queue'),
                    state.conf('credentials.concurrent_listkeypairs'),
                    queue.wrapRequestHandler(state, processListKeypairs))
Exemple #6
0
def subscribe(mq, state):
    processCredentialConfig = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name']),
                                                                    credentials_misc.loadCredentialForRequest,
                                                                    handleCredentialConfig]),
                                                   queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.credentialconfig_queue'),
                    state.conf('credentials.concurrent_credentialconfig'),
                    queue.wrapRequestHandler(state, processCredentialConfig))
def subscribe(mq, state):
    processListKeypairs = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(['credential_name']),
            credentials_misc.loadCredentialForRequest, handleListKeypairs
        ]), queue.failureMsg)
    queue.subscribe(mq, state.conf('credentials.listkeypairs_queue'),
                    state.conf('credentials.concurrent_listkeypairs'),
                    queue.wrapRequestHandler(state, processListKeypairs))
Exemple #8
0
def subscribe(mq, state):
    processCredentialConfig = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(['credential_name']),
            credentials_misc.loadCredentialForRequest, handleCredentialConfig
        ]), queue.failureMsg)
    queue.subscribe(mq, state.conf('credentials.credentialconfig_queue'),
                    state.conf('credentials.concurrent_credentialconfig'),
                    queue.wrapRequestHandler(state, processCredentialConfig))
def subscribe(mq, state):
    processUpdateInstances = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(['credential_name', 'instances']),
            credentials_misc.loadCredentialForRequest, handleUpdateInstances
        ]), queue.failureMsg)
    queue.subscribe(mq, state.conf('credentials.updateinstances_queue'),
                    state.conf('credentials.concurrent_updateinstances'),
                    queue.wrapRequestHandler(state, processUpdateInstances))
def subscribe(mq, state):
    processGetCType = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name']),
                                                            credentials_misc.loadCredentialForRequest,
                                                            handleGetCType]),
                                           queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.getctype_queue'),
                    state.conf('credentials.concurrent_getctype'),
                    queue.wrapRequestHandler(state, processGetCType))
def subscribe(mq, state):
    processAddKeypair = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(['credential_name', 'keypair_name']),
            credentials_misc.loadCredentialForRequest, handleAddKeypair
        ]), queue.failureMsg)

    queue.subscribe(mq, state.conf('credentials.addkeypair_queue'),
                    state.conf('credentials.concurrent_addkeypair'),
                    queue.wrapRequestHandler(state, processAddKeypair))
Exemple #12
0
def wrapRequestHandler(state, f):
    _addState = lambda r: defer_pipe.ret(r.update(state=state))

    return defer_pipe.pipe([
        decodeRequest,
        defer_pipe.hookError(
            defer_pipe.pipe(
                [keysInBody(['return_queue']), _addState, f, ackMsg]),
            ackMsgFailure)
    ])
def subscribe(mq, state):
    processTerminateInstances = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name',
                                                                                        'instances']),
                                                                      credentials_misc.loadCredentialForRequest,
                                                                      handleTerminateInstances]),
                                                     queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.terminateinstances_queue'),
                    state.conf('credentials.concurrent_terminateinstances'),
                    queue.wrapRequestHandler(state, processTerminateInstances))
Exemple #14
0
def subscribe(mq, state):
    processAddGroup = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(
                ['credential_name', 'group_name', 'group_description']),
            credentials_misc.loadCredentialForRequest, handleAddGroup
        ]), queue.failureMsg)
    queue.subscribe(mq, state.conf('credentials.addgroup_queue'),
                    state.conf('credentials.concurrent_addgroup'),
                    queue.wrapRequestHandler(state, processAddGroup))
def subscribe(mq, state):
    processRunInstances = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody([
                'credential_name', 'ami', 'key', 'instance_type', 'groups',
                'num_instances'
            ]), credentials_misc.loadCredentialForRequest, handleRunInstances
        ]), queue.failureMsg)
    queue.subscribe(mq, state.conf('credentials.runinstances_queue'),
                    state.conf('credentials.concurrent_runinstances'),
                    queue.wrapRequestHandler(state, processRunInstances))
Exemple #16
0
def subscribe(mq, state):
    processWWWListAddCredentials = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['cluster']),
                                                                         queue.forwardRequestToCluster(
                                                                             state.conf('www.url_prefix') + '/' +
                                                                             os.path.basename(state.conf('credentials.listaddcredentials_www'))),
                                                                         handleWWWListAddCredentials]),
                                                        queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.listaddcredentials_www'),
                    state.conf('credentials.concurrent_listaddcredentials'),
                    queue.wrapRequestHandler(state, processWWWListAddCredentials))
def subscribe(mq, state):
    processAuthorizeGroup = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name',
                                                                                    'group_name',
                                                                                    'port_range']),
                                                                  credentials_misc.loadCredentialForRequest,
                                                                  handleAuthorizeGroup]),
                                                 queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.authorizegroup_queue'),
                    state.conf('credentials.concurrent_authorizegroup'),
                    queue.wrapRequestHandler(state, processAuthorizeGroup))
Exemple #18
0
def subscribe(mq, state):
    processWWWDeleteCredential = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name']),
                                                                       queue.forwardRequestToCluster(
                                                                           state.conf('www.url_prefix') + '/' +
                                                                            os.path.basename(state.conf('credentials.delete_www'))),
                                                                       handleWWWDeleteCredential]),
                                                      queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.delete_www'),
                    state.conf('credentials.concurrent_deletecredential'),
                    queue.wrapRequestHandler(state, processWWWDeleteCredential))
def subscribe(mq, state):
    processAddKeypair = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name',
                                                                                'keypair_name']),
                                                              credentials_misc.loadCredentialForRequest,
                                                              handleAddKeypair]),
                                             queue.failureMsg)

    queue.subscribe(mq,
                    state.conf('credentials.addkeypair_queue'),
                    state.conf('credentials.concurrent_addkeypair'),
                    queue.wrapRequestHandler(state, processAddKeypair))
Exemple #20
0
def subscribe(mq, state):
    processWWWListAddCredentials = defer_pipe.hookError(
        defer_pipe.pipe([
            queue.keysInBody(['cluster']),
            queue.forwardRequestToCluster(
                state.conf('www.url_prefix') + '/' + os.path.basename(
                    state.conf('credentials.listaddcredentials_www'))),
            handleWWWListAddCredentials
        ]), queue.failureMsg)
    queue.subscribe(
        mq, state.conf('credentials.listaddcredentials_www'),
        state.conf('credentials.concurrent_listaddcredentials'),
        queue.wrapRequestHandler(state, processWWWListAddCredentials))
def subscribe(mq, state):
    processRunInstances = defer_pipe.hookError(defer_pipe.pipe([queue.keysInBody(['credential_name',
                                                                                  'ami',
                                                                                  'key',
                                                                                  'instance_type',
                                                                                  'groups',
                                                                                  'num_instances']),
                                                                credentials_misc.loadCredentialForRequest,
                                                                handleRunInstances]),
                                               queue.failureMsg)
    queue.subscribe(mq,
                    state.conf('credentials.runinstances_queue'),
                    state.conf('credentials.concurrent_runinstances'),
                    queue.wrapRequestHandler(state, processRunInstances))
def subscribe(mq, state):
    processUpdateInstances = defer_pipe.hookError(
        defer_pipe.pipe(
            [
                queue.keysInBody(["credential_name", "instances"]),
                credentials_misc.loadCredentialForRequest,
                handleUpdateInstances,
            ]
        ),
        queue.failureMsg,
    )
    queue.subscribe(
        mq,
        state.conf("credentials.updateinstances_queue"),
        state.conf("credentials.concurrent_updateinstances"),
        queue.wrapRequestHandler(state, processUpdateInstances),
    )
Exemple #23
0
def hookFailure(pipe):
    return defer_pipe.hookError(pipe, failureMsg)
Exemple #24
0
def wrapRequestHandlerTask(state, f):
    _f = defer_pipe.hookError(defer_pipe.pipe([f, tasks.setRequestComplete]),
                              tasks.setRequestFailed)
    return wrapRequestHandler(state, _f)
Exemple #25
0
def _wrapRequestHandler(f):
    return defer_pipe.pipe([
        queue.decodeRequest,
        defer_pipe.hookError(defer_pipe.pipe([f, queue.ackMsg]),
                             queue.ackMsgFailure)
    ])
Exemple #26
0
def _wrapRequestHandler(f):
    return defer_pipe.pipe(
        [queue.decodeRequest, defer_pipe.hookError(defer_pipe.pipe([f, queue.ackMsg]), queue.ackMsgFailure)]
    )
Exemple #27
0
def wrapRequestHandlerTask(state, f):
    _f = defer_pipe.hookError(defer_pipe.pipe([f, tasks.setRequestComplete]),
                              tasks.setRequestFailed)
    return wrapRequestHandler(state, _f)
Exemple #28
0
def hookFailure(pipe):
    return defer_pipe.hookError(pipe,
                                failureMsg)