コード例 #1
0
ファイル: tasks.py プロジェクト: jakebarnwell/PythonGenerator
def run_remote_process(processor):
    """Create a sandboxed environment for the processor and run it

    """
    from streamr.remote.managers import RemoteNodeManager

    log.info('Initializing processor environment...')
    manager = RemoteNodeManager(settings)

    with SandBox():
        status = Status.Succeed

        log.info("Loading processor's input...")
        try:
            manager.load_streams(processor.input.values())
        except UnavailableStream:
            status = Status.Cancelled
        else:
            log.info('Running processor...')
            try:
                output = processor.run()
            except:
                log.exception('Error during processor execution')
                status = Status.Failed
                for ostream in output:
                    manager.notify_ready(ostream, status)
            else:
                log.info("Saving processor's output")
                for ostream in output:
                    manager.store_stream(ostream)

        log.info('Update processor status')
        manager.notify_ready(processor, status)

    return True
コード例 #2
0
ファイル: tasks.py プロジェクト: jakebarnwell/PythonGenerator
def run_remote_process(processor):
    """Create a sandboxed environment for the processor and run it

    """
    from streamr.remote.managers import RemoteNodeManager

    log.info("Initializing processor environment...")
    manager = RemoteNodeManager(settings)

    with SandBox():
        status = Status.Succeed

        log.info("Loading processor's input...")
        try:
            manager.load_streams(processor.input.values())
        except UnavailableStream:
            status = Status.Cancelled
        else:
            log.info("Running processor...")
            try:
                output = processor.run()
            except:
                log.exception("Error during processor execution")
                status = Status.Failed
                for ostream in output:
                    manager.notify_ready(ostream, status)
            else:
                log.info("Saving processor's output")
                for ostream in output:
                    manager.store_stream(ostream)

        log.info("Update processor status")
        manager.notify_ready(processor, status)

    return True
コード例 #3
0
ファイル: tasks.py プロジェクト: jakebarnwell/PythonGenerator
def terminate_job(job_node_id, node_keys):
    """Proxy task to terminate a job

    Call `RemoteNodeManager.terminate_job` method to a default instance of
    `RemoteNodeManager`.

    """
    from streamr.remote.managers import RemoteNodeManager

    log.info('Terminating job')
    manager = RemoteNodeManager(settings)
    manager.terminate_job(job_node_id, node_keys)
コード例 #4
0
ファイル: tasks.py プロジェクト: jakebarnwell/PythonGenerator
def terminate_job(job_node_id, node_keys):
    """Proxy task to terminate a job

    Call `RemoteNodeManager.terminate_job` method to a default instance of
    `RemoteNodeManager`.

    """
    from streamr.remote.managers import RemoteNodeManager

    log.info("Terminating job")
    manager = RemoteNodeManager(settings)
    manager.terminate_job(job_node_id, node_keys)