bk-sops
bk-sops copied to clipboard
任务执行前需要校验任务是否已删除
问题描述
用户 a 新建了任务,开着任务窗口但未执行 用户 b 删除了任务 用户 a 点执行 ,执行成功
def task_action(self, action, username):
# self: 任务对象
# 在这里增加一个判断,判断任务是否被删除
if self.is_deleted: # 为True,终止执行
message = _(f"任务操作失败: 任务[ID: {self.id}]已被删除")
logger.error(message)
return {"result": False, "message": message, "code": err_code.INVALID_OPERATION.code}
........
# 任务命令分发
dispatcher = TaskCommandDispatcher(
engine_ver=self.engine_ver,
taskflow_id=self.id,
pipeline_instance=self.pipeline_instance,
project_id=self.project_id,
queue=self._get_task_celery_queue(self.engine_ver),
)
......