Initial YakPanel commit
This commit is contained in:
40
mod/base/git_tool/install.py
Normal file
40
mod/base/git_tool/install.py
Normal file
@@ -0,0 +1,40 @@
|
||||
import re
|
||||
from .util import ExecShell
|
||||
|
||||
|
||||
def installed():
|
||||
sh_str = "git --version"
|
||||
out, error = ExecShell(sh_str)
|
||||
if re.search(r"git\s+version\s+(\d+\.){1,4}\d+", out):
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def version_1_5_3() -> bool:
|
||||
sh_str = "git --version"
|
||||
out, error = ExecShell(sh_str)
|
||||
res = re.search(r"git\s+version\s+(?P<v>(\d+\.){1,4}\d+)", out)
|
||||
if not res:
|
||||
return False
|
||||
ver = [int(i) for i in res.group('v').split(".")]
|
||||
if len(ver) < 3:
|
||||
ver.extend([0] * (3 - len(ver)))
|
||||
if ver[0] > 1:
|
||||
return True
|
||||
elif ver[0] == 1 and ver[1] > 5:
|
||||
return True
|
||||
elif ver[0] == 1 and ver[1] == 5 and ver[3] >= 3:
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def install_git():
|
||||
check_str = "Git installed successfully"
|
||||
if not installed():
|
||||
script_path = "/www/server/panel/mod/base/git_tool/install.sh"
|
||||
out, error = ExecShell("bash {}".format(script_path))
|
||||
if out.find(check_str) != -1:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
return True
|
||||
Reference in New Issue
Block a user