blob: 4720a6e972308ef324f3f84642607072f0e69f3b [file] [log] [blame]
#!/usr/bin/env python
import mesos
import sys
import time
import os
from subprocess import *
class MyExecutor(mesos.Executor):
def __init__(self):
mesos.Executor.__init__(self)
def init(self, driver, arg):
print "in daemon executor"
def launchTask(self, driver, task):
print "in launchTask"
self.tid = task.taskId
print "task id is " + str(task.taskId) + ", task.args is " + task.arg
self.args = task.arg.split("\t")
print "running: " + "java -cp " + self.args[0] + " " + self.args[1] + " " + self.args[2]
print Popen("/usr/lib/jvm/java-6-sun/bin/java -cp " + self.args[0] + " " + self.args[1] + " " + self.args[2], shell=True, stdout=PIPE).stdout.readline()
update = mesos.TaskStatus(task.taskId, mesos.TASK_FINISHED, "")
driver.sendStatusUpdate(update)
def error(self, code, message):
print "Error: %s" % message
if __name__ == "__main__":
print "starting daemon framework executor"
executor = MyExecutor()
mesos.MesosExecutorDriver(executor).run()