diff --git a/code-server-like/app/config.py b/code-server-like/app/config.py index a370521..e9b7835 100644 --- a/code-server-like/app/config.py +++ b/code-server-like/app/config.py @@ -13,4 +13,5 @@ class Config: # 自定义其他全局配置 ROOT_WORKSPACE_PATH = GLOBAL_CONFIG['Global']['ROOT_WORKSPACE_PATH'] + DEBUG = GLOBAL_CONFIG['Global'].getboolean('DEBUG', False) diff --git a/code-server-like/app/views/routes.py b/code-server-like/app/views/routes.py index 486006e..2c2483d 100644 --- a/code-server-like/app/views/routes.py +++ b/code-server-like/app/views/routes.py @@ -46,30 +46,30 @@ def vsc_like(user_uuid, user_id, course_id, chapter_name, lesson_name, port): print(f"Useradd command returned non-zero exit status, this is expected if user already exists: {e}") try: # 使用 sudo 执行 mkdir 命令来创建目录 - subprocess.run(["sudo", "-u", user_id, "mkdir", "-p", path], check=True) - subprocess.run(["sudo", "-u", user_id, "mkdir", "-p", f'{user_root}/.ssh'], check=True) + subprocess.run(["sudo", "-u", user_id, "mkdir", "-p", path], check=current_app.config['DEBUG']) + subprocess.run(["sudo", "-u", user_id, "mkdir", "-p", f'{user_root}/.ssh'], check=current_app.config['DEBUG']) flask_pub_key = "/home/flask/.ssh/id_ed25519.pub" - subprocess.run(["sudo", "cp", flask_pub_key, f"{user_root}/.ssh/authorized_keys"], check=True) - subprocess.run(["sudo", "chmod", "700", f"{user_root}/.ssh"], check=True) - subprocess.run(["sudo", "chmod", "600", f"{user_root}/.ssh/authorized_keys"], check=True) + subprocess.run(["sudo", "cp", flask_pub_key, f"{user_root}/.ssh/authorized_keys"], check=current_app.config['DEBUG']) + subprocess.run(["sudo", "chmod", "700", f"{user_root}/.ssh"], check=current_app.config['DEBUG']) + subprocess.run(["sudo", "chmod", "600", f"{user_root}/.ssh/authorized_keys"], check=current_app.config['DEBUG']) print(f"Directory {path} created successfully for user {user_id}") except subprocess.CalledProcessError as e: print(f"Error creating directory {path} details {str(e)}") try:#使用sudo创建shared_group - subprocess.run(["sudo", "groupadd", f"shared_group_{user_id}"], check=True) + subprocess.run(["sudo", "groupadd", f"shared_group_{user_id}"], check=current_app.config['DEBUG']) except subprocess.CalledProcessError as e: # 组可能已经存在,这是正常情况,继续执行 print(f"Groupadd command returned non-zero exit status, this is expected if group already exists: {e}") try:#使用sudo将user_id加入shared_group - subprocess.run(["sudo", "usermod", "-a", "-G", f"shared_group_{user_id}", user_id], check=True) + subprocess.run(["sudo", "usermod", "-a", "-G", f"shared_group_{user_id}", user_id], check=current_app.config['DEBUG']) # 自己也加入 - subprocess.run(["sudo", "usermod", "-a", "-G", f"shared_group_{user_id}", 'flask'], check=True) + subprocess.run(["sudo", "usermod", "-a", "-G", f"shared_group_{user_id}", 'flask'], check=current_app.config['DEBUG']) except subprocess.CalledProcessError as e: print(f"Error adding user {user_id} to shared_group: {e}") try: - subprocess.run(["sudo", "chown", "-R", f"flask:shared_group_{user_id}", path], check=True) - subprocess.run(["sudo", "chmod", "-R", "755", user_root], check=True) - subprocess.run(["sudo", "chmod", "-R", "775", path], check=True) + subprocess.run(["sudo", "chown", "-R", f"flask:shared_group_{user_id}", path], check=current_app.config['DEBUG']) + subprocess.run(["sudo", "chmod", "-R", "755", user_root], check=current_app.config['DEBUG']) + subprocess.run(["sudo", "chmod", "-R", "775", path], check=current_app.config['DEBUG']) except subprocess.CalledProcessError as e: print(f"Error changing directory {path} to shared_group_{user_id}: {e}") diff --git a/code-server-like/config.ini b/code-server-like/config.ini index efbb896..c159ff8 100644 --- a/code-server-like/config.ini +++ b/code-server-like/config.ini @@ -1,3 +1,4 @@ [Global] SECRET_KEY = cakebaker ROOT_WORKSPACE_PATH = /home +DEBUG = False