Skip to content

Commit 5acbd92

Browse files
committed
【完善】:修复因为服务器软件包索引和本地软件包索引不一致导致的下载错误问题
1 parent 275ff71 commit 5acbd92

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

cmds/cmd_package.py

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ def modify_submod_file_to_mirror(submod_path):
113113
print('e.message:%s\t' % e.message)
114114

115115

116-
def get_url_from_mirror_server(pkgs_name_in_json, pkg):
116+
def get_url_from_mirror_server(pkgs_name_in_json, pkgs_ver):
117117
"""Get the download address from the mirror server based on the package name."""
118118

119119
payload_pkgs_name_in_json = pkgs_name_in_json.encode("utf-8")
@@ -126,28 +126,37 @@ def get_url_from_mirror_server(pkgs_name_in_json, pkg):
126126
]
127127
}
128128
payload["packages"][0]['name'] = payload_pkgs_name_in_json
129-
129+
130130
try:
131131
r = requests.post(
132132
"http://packages.rt-thread.org/packages/queries", data=json.dumps(payload))
133133

134+
# print(r.status_code)
135+
134136
if r.status_code == requests.codes.ok:
135137
package_info = json.loads(r.text)
136-
138+
139+
# print(package_info)
140+
137141
# Can't find package,change git package SHA if it's a git
138142
# package
139143
if len(package_info['packages']) == 0:
140144
print("Package was NOT found on mirror server.")
145+
return None, None
141146
else:
142147
for item in package_info['packages'][0]['packages_info']['site']:
143-
if item['version'] == pkg['ver']:
148+
if item['version'] == pkgs_ver:
144149
# Change download url
145150
download_url = item['URL']
146151
if download_url[-4:] == '.git':
147152
# Change git package SHA
148153
repo_sha = item['VER_SHA']
149154
return download_url, repo_sha
150155
return download_url, None
156+
157+
print("\nTips : \nThe system needs to be upgraded. \nPlease use the <pkgs --upgrade> command to upgrade packages index.\n")
158+
return None, None
159+
151160
except Exception, e:
152161
print('e.message:%s\t' % e.message)
153162
print(
@@ -189,8 +198,14 @@ def install_pkg(env_root, bsp_root, pkg):
189198
#print("==================================================>")
190199

191200
if os.path.isfile(env_config_file) and find_macro_in_condfig(env_config_file, 'SYS_PKGS_DOWNLOAD_ACCELERATE'):
192-
package_url, ver_sha = get_url_from_mirror_server(
193-
pkgs_name_in_json, pkg)
201+
get_package_url, get_ver_sha = get_url_from_mirror_server(
202+
pkgs_name_in_json, pkg['ver'])
203+
204+
if get_package_url != None:
205+
package_url = get_package_url
206+
207+
if get_ver_sha != None:
208+
ver_sha = get_ver_sha
194209

195210
beforepath = os.getcwd()
196211

0 commit comments

Comments
 (0)