def __init__(self, task_id, task_type): self.warnings = "" if Task._check_args(task_id, task_type): self.warnings = "parameters error [taskId:%s, taskType:%s]"%(task_id, task_type) self.taskid = task_id self.tasktype = task_type self.rc = runCmd(LOGNAME) self.tmpath = VIDEO_TMP_DIR+ self.taskid+ "_"+ str(self.tasktype)+ "/" self._init_workspace() #创建临时工作目录 self.obj = self._get_models() if not self.obj: self.warnings = "unknown taskId %s"%self.taskid self.download = self._download self.startprocess = self._video_info if self.tasktype == 1 else self._video_task self.end = self._del_workspace
for data in videos: postData = {"taskId":data.taskid, "status":data.status} res = toPost(data.callback, postData) if res.get("status",0) == 1: data.status = 200 data.save() def chk_start(pidfile): if os.path.exists(pidfile): sys.exit(0) else: commands.getstatusoutput("touch %s"%pidfile) def chk_end(pidfile): if os.path.exists(pidfile): commands.getstatusoutput("rm -rf %s"%pidfile) if __name__ == "__main__": pidfile = __file__ + ".pid" chk_start(pidfile) sys.path.append('/root/workspace/video_production/') os.environ['DJANGO_SETTINGS_MODULE'] = 'video_production.settings' from video_task.models import VideoTask from video_info.models import VideoInfo logname = "/root/workspace/log/callback_%s.log"%time.strftime("%Y%m%d") global RC RC = runCmd(logname) getPostData(50) chk_end(pidfile)