|
|
|
@ -6,8 +6,14 @@ import os |
|
|
|
|
import time |
|
|
|
|
import json |
|
|
|
|
|
|
|
|
|
sys.path.append(os.getcwd() + "/class/core") |
|
|
|
|
import mw |
|
|
|
|
web_dir = os.getcwd() + "/web" |
|
|
|
|
if os.path.exists(web_dir): |
|
|
|
|
sys.path.append(web_dir) |
|
|
|
|
os.chdir(web_dir) |
|
|
|
|
|
|
|
|
|
import core.mw as mw |
|
|
|
|
from utils.crontab import crontab as MwCrontab |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app_debug = False |
|
|
|
@ -35,12 +41,10 @@ def getTaskDeltaConf(): |
|
|
|
|
conf = getServerDir() + "/cron_delta_config.json" |
|
|
|
|
return conf |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def getConfigData(): |
|
|
|
|
try: |
|
|
|
|
conf = getTaskConf() |
|
|
|
|
if os.path.exists(conf): |
|
|
|
|
return json.loads(mw.readFile(getTaskConf())) |
|
|
|
|
except: |
|
|
|
|
pass |
|
|
|
|
return { |
|
|
|
|
"task_id": -1, |
|
|
|
|
"period": "day-n", |
|
|
|
@ -50,10 +54,9 @@ def getConfigData(): |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
def getConfigDeltaData(): |
|
|
|
|
try: |
|
|
|
|
conf = getTaskDeltaConf() |
|
|
|
|
if os.path.exists(conf): |
|
|
|
|
return json.loads(mw.readFile(getTaskDeltaConf())) |
|
|
|
|
except: |
|
|
|
|
pass |
|
|
|
|
return { |
|
|
|
|
"task_id": -1, |
|
|
|
|
"period": "minute-n", |
|
|
|
@ -80,15 +83,12 @@ def createBgTaskByName(name): |
|
|
|
|
return True |
|
|
|
|
|
|
|
|
|
if "task_id" in args and args["task_id"] > 0: |
|
|
|
|
res = mw.M("crontab").field("id, name").where( |
|
|
|
|
"id=?", (args["task_id"],)).find() |
|
|
|
|
res = mw.M("crontab").field("id, name").where("id=?", (args["task_id"],)).find() |
|
|
|
|
if res and res["id"] == args["task_id"]: |
|
|
|
|
print("计划任务已经存在!") |
|
|
|
|
return True |
|
|
|
|
import crontab_api |
|
|
|
|
api = crontab_api.crontab_api() |
|
|
|
|
|
|
|
|
|
mw_dir = mw.getRunDir() |
|
|
|
|
mw_dir = mw.getPanelDir() |
|
|
|
|
cmd = ''' |
|
|
|
|
mw_dir=%s |
|
|
|
|
rname=%s |
|
|
|
@ -118,7 +118,7 @@ logs_file=$plugin_path/${rname}.log |
|
|
|
|
'urladdress': '', |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
task_id = api.add(params) |
|
|
|
|
task_id = MwCrontab.instance().add(params) |
|
|
|
|
if task_id > 0: |
|
|
|
|
args["task_id"] = task_id |
|
|
|
|
args["name"] = name |
|
|
|
@ -132,15 +132,12 @@ def createBgTaskDeltaByName(name): |
|
|
|
|
return True |
|
|
|
|
|
|
|
|
|
if "task_id" in args and args["task_id"] > 0: |
|
|
|
|
res = mw.M("crontab").field("id, name").where( |
|
|
|
|
"id=?", (args["task_id"],)).find() |
|
|
|
|
res = mw.M("crontab").field("id, name").where("id=?", (args["task_id"],)).find() |
|
|
|
|
if res and res["id"] == args["task_id"]: |
|
|
|
|
print("计划任务已经存在!") |
|
|
|
|
return True |
|
|
|
|
import crontab_api |
|
|
|
|
api = crontab_api.crontab_api() |
|
|
|
|
|
|
|
|
|
mw_dir = mw.getRunDir() |
|
|
|
|
mw_dir = mw.getPanelDir() |
|
|
|
|
cmd = ''' |
|
|
|
|
mw_dir=%s |
|
|
|
|
rname=%s |
|
|
|
@ -170,7 +167,7 @@ logs_file=$plugin_path/${rname}.log |
|
|
|
|
'urladdress': '', |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
task_id = api.add(params) |
|
|
|
|
task_id = MwCrontab.instance().add(params) |
|
|
|
|
if task_id > 0: |
|
|
|
|
args["task_id"] = task_id |
|
|
|
|
args["name"] = name |
|
|
|
@ -183,9 +180,7 @@ def removeBgTask(): |
|
|
|
|
res = mw.M("crontab").field("id, name").where( |
|
|
|
|
"id=?", (cfg["task_id"],)).find() |
|
|
|
|
if res and res["id"] == cfg["task_id"]: |
|
|
|
|
import crontab_api |
|
|
|
|
api = crontab_api.crontab_api() |
|
|
|
|
data = api.delete(cfg["task_id"]) |
|
|
|
|
data = MwCrontab.instance().delete(cfg["task_id"]) |
|
|
|
|
if data[0]: |
|
|
|
|
cfg["task_id"] = -1 |
|
|
|
|
mw.writeFile(getTaskConf(), json.dumps(cfg)) |
|
|
|
@ -198,9 +193,7 @@ def removeDeltaBgTask(): |
|
|
|
|
res = mw.M("crontab").field("id, name").where( |
|
|
|
|
"id=?", (cfg["task_id"],)).find() |
|
|
|
|
if res and res["id"] == cfg["task_id"]: |
|
|
|
|
import crontab_api |
|
|
|
|
api = crontab_api.crontab_api() |
|
|
|
|
data = api.delete(cfg["task_id"]) |
|
|
|
|
data = MwCrontab.instance().delete(cfg["task_id"]) |
|
|
|
|
if data[0]: |
|
|
|
|
cfg["task_id"] = -1 |
|
|
|
|
mw.writeFile(getTaskDeltaConf(), json.dumps(cfg)) |
|
|
|
|