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

Method check_node_version

mod/project/nodejs/base.py:1021–1063  ·  view source on GitHub ↗

@name 判断是否存在"engines",并且判断 get.nodejs_version 是否在大于等于"engines"中的node版本

(self, get)

Source from the content-addressed store, hash-verified

1019
1020 # 2024/7/12 上午10:40 检测node版本是否符合要求
1021 def check_node_version(self, get):
1022 '''
1023 @name 判断是否存在"engines",并且判断 get.nodejs_version 是否在大于等于"engines"中的node版本
1024 '''
1025 if "engines" in get.package_info:
1026 if "node" in get.package_info["engines"]:
1027 # 2024/7/12 上午10:24 获取engines的数学符号
1028 get_nodejs_version = self.version_key(get.nodejs_version)
1029 if ">=" in get.package_info["engines"]["node"]:
1030 engines_node_version = get.package_info["engines"]["node"].replace(">=", "v").strip()
1031 engines_node_version = self.version_key(engines_node_version)
1032 if get_nodejs_version < engines_node_version:
1033 self.ws_err_exit(False, '当前项目【{}】要求使用【{}】以上的node版本'.format(
1034 get.project_name,
1035 "v" + ".".join(map(str, engines_node_version))), code=2)
1036 elif ">" in get.package_info["engines"]["node"]:
1037 engines_node_version = get.package_info["engines"]["node"].replace(">", "v").strip()
1038 engines_node_version = self.version_key(engines_node_version)
1039 if get_nodejs_version <= engines_node_version:
1040 self.ws_err_exit(False, '当前项目【{}】要求使用【{}】以上的node版本'.format(
1041 get.project_name,
1042 "v" + ".".join(map(str, engines_node_version))), code=2)
1043 elif "<=" in get.package_info["engines"]["node"]:
1044 engines_node_version = get.package_info["engines"]["node"].replace("<=", "v").strip()
1045 engines_node_version = self.version_key(engines_node_version)
1046 if get_nodejs_version > engines_node_version:
1047 self.ws_err_exit(False, '当前项目【{}】要求使用【{}】以下的node版本'.format(
1048 get.project_name,
1049 "v" + ".".join(map(str, engines_node_version))), code=2)
1050 elif "<" in get.package_info["engines"]["node"]:
1051 engines_node_version = get.package_info["engines"]["node"].replace("<", "v").strip()
1052 engines_node_version = self.version_key(engines_node_version)
1053 if get_nodejs_version >= engines_node_version:
1054 self.ws_err_exit(False, '当前项目【{}】要求使用【{}】以下的node版本'.format(
1055 get.project_name,
1056 "v" + ".".join(map(str, engines_node_version))), code=2)
1057 elif "==" in get.package_info["engines"]["node"]:
1058 engines_node_version = get.package_info["engines"]["node"].replace("==", "v").strip()
1059 engines_node_version = self.version_key(engines_node_version)
1060 if get_nodejs_version != engines_node_version:
1061 self.ws_err_exit(False, '当前项目【{}】要求使用【{}】的node版本'.format(
1062 get.project_name,
1063 "v" + ".".join(map(str, engines_node_version))), code=2)
1064
1065 def replace_or_add_field(self, config_body, regex, field):
1066 if regex.search(config_body):

Callers 2

create_projectMethod · 0.80
create_projectMethod · 0.80

Calls 6

version_keyMethod · 0.95
ws_err_exitMethod · 0.95
mapFunction · 0.85
replaceMethod · 0.45
formatMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected