MCPcopy Create free account
hub / github.com/aaPanel/BaoTa / create_python_env

Method create_python_env

mod/project/python/pyenv_tool.py:1362–1397  ·  view source on GitHub ↗
(self,
                          venv_name: str,
                          src_python_bin: str,
                          ps:str,
                          call_log: Callable[[str], None] = None)

Source from the content-addressed store, hash-verified

1360 return True
1361
1362 def create_python_env(self,
1363 venv_name: str,
1364 src_python_bin: str,
1365 ps:str,
1366 call_log: Callable[[str], None] = None) -> Optional[str]:
1367
1368 if call_log and callable(call_log):
1369 real_call = call_log
1370 else:
1371 real_call = lambda x: None
1372
1373 if not self._is_valid_env_name(venv_name):
1374 err_msg3 = "虚拟环境名称不合法"
1375 real_call(err_msg3)
1376 return err_msg3
1377
1378 err_msg = "源Python环境不存在"
1379 if not os.path.exists(src_python_bin):
1380 real_call(err_msg)
1381 return err_msg
1382 src_p = self.get_env_py_path(src_python_bin)
1383 if not src_p:
1384 real_call(err_msg)
1385 return err_msg
1386
1387 if src_p.env_type != "system":
1388 err_msg2 = "需要使用系统Python环境来创建虚拟环境"
1389 real_call(err_msg2)
1390 return err_msg2
1391
1392 venv_path = "/www/server/pyporject_evn/{}".format(venv_name)
1393 if call_log and callable(call_log):
1394 call_log("开始创建虚拟环境")
1395 return src_p.create_venv_sync(venv_path, ps, call_log)
1396 else:
1397 return src_p.create_venv(venv_path, ps)
1398
1399
1400if __name__ == '__main__':

Callers

nothing calls this directly

Calls 6

_is_valid_env_nameMethod · 0.95
get_env_py_pathMethod · 0.95
create_venv_syncMethod · 0.80
create_venvMethod · 0.80
existsMethod · 0.45
formatMethod · 0.45

Tested by

no test coverage detected