| |
| |
|
|
| import os |
| import sys |
| import time |
|
|
| if "/www/server/panel/class" not in sys.path: |
| sys.path.insert(0, "/www/server/panel/class") |
| if "/www/server/panel" not in sys.path: |
| sys.path.insert(0, "/www/server/panel") |
|
|
| os.chdir("/www/server/panel") |
|
|
|
|
| from mod.project.java.projectMod import main as java_mod |
| import public |
|
|
|
|
| java_mod_obj = java_mod() |
|
|
|
|
| def print_success(msg): |
| print("\033[1;32m" + msg + "\033[0m") |
|
|
|
|
| def print_error(msg): |
| print("\033[1;31m" + msg + "\033[0m") |
|
|
|
|
| def main(action: str, project_name: str): |
| project_data = java_mod_obj.get_project_find(project_name) |
| if action == "start": |
| pid = java_mod_obj.get_project_pid(project_data) |
| if pid: |
| print_success("项目运行中,Pid:{}".format(pid)) |
| return |
| res = java_mod_obj.start_project(public.to_dict_obj({"project_name": project_name})) |
| elif action == "stop": |
| res = java_mod_obj.stop_project(public.to_dict_obj({"project_name": project_name})) |
| else: |
| res = java_mod_obj.restart_project(public.to_dict_obj({"project_name": project_name})) |
|
|
| if res["status"]: |
| print_success(res["msg"]) |
| else: |
| print_error(res["msg"]) |
|
|
| if action != "stop": |
| time.sleep(0.5) |
| pid = java_mod_obj.get_project_pid(project_data) |
| if pid: |
| print_success("项目运行中,Pid:{}".format(pid)) |
| else: |
| print_error("未获取到Pid,项目启动可能失败") |
|
|
|
|
| if __name__ == "__main__": |
| if len(sys.argv) < 3: |
| print("Usage: java-service [project_name] [start|stop|restart]") |
| sys.exit() |
|
|
| if sys.argv[2] not in ("start", "stop", "restart"): |
| print("未知操作【{}】".format(sys.argv[2]), file=sys.stderr) |
| print("Usage: java-service [project_name] [start|stop|restart]") |
| sys.exit() |
| main(sys.argv[2], sys.argv[1]) |
|
|