Skip to content

Commit a6ceb5b

Browse files
authored
Merge pull request #53 from RT-Thread/develop
【添加】:通过镜像更新 Env 功能脚本和软件包列表功能
2 parents 4972c5c + 9397304 commit a6ceb5b

File tree

1 file changed

+44
-7
lines changed

1 file changed

+44
-7
lines changed

cmds/cmd_package.py

Lines changed: 44 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -939,20 +939,44 @@ def package_wizard():
939939

940940
def upgrade_packages_index():
941941
"""Update the package repository index."""
942+
943+
env_root = Import('env_root')
944+
env_kconfig_path = os.path.join(env_root, 'tools\scripts\cmds')
945+
env_config_file = os.path.join(env_kconfig_path, '.config')
946+
if os.path.isfile(env_config_file) and find_macro_in_config(env_config_file, 'SYS_PKGS_DOWNLOAD_ACCELERATE'):
947+
get_package_url, get_ver_sha = get_url_from_mirror_server('packages', 'latest')
948+
if get_package_url != None:
949+
git_repo = get_package_url
950+
else:
951+
print("Failed to get url from mirror server. Using default url.")
952+
git_repo = 'https://gitee.com/RT-Thread-Mirror/packages.git'
953+
else:
954+
git_repo = 'https://github.com/RT-Thread/packages.git'
955+
956+
# print(get_package_url,get_ver_sha)
942957

943-
packages_root = os.path.join(Import('env_root'), 'packages')
944-
git_repo = 'https://github.com/RT-Thread/packages.git'
958+
packages_root = os.path.join(env_root, 'packages')
945959
pkgs_path = os.path.join(packages_root, 'packages')
946960

947961
if not os.path.isdir(pkgs_path):
948962
cmd = 'git clone ' + git_repo + ' ' + pkgs_path
949963
os.system(cmd)
950964
print ("upgrade from :%s" % (git_repo))
965+
else:
966+
print("Begin to upgrade env packages.")
967+
cmd = r'git pull ' + git_repo
968+
execute_command(cmd, cwd=pkgs_path)
969+
print("==============================> Env packages upgrade done \n")
951970

952971
for filename in os.listdir(packages_root):
953972
package_path = os.path.join(packages_root, filename)
954973
if os.path.isdir(package_path):
974+
975+
if package_path == pkgs_path:
976+
continue
977+
955978
if os.path.isdir(os.path.join(package_path, '.git')):
979+
print("Begin to upgrade %s." % filename)
956980
cmd = r'git pull'
957981
execute_command(cmd, cwd=package_path)
958982
print("==============================> Env %s update done \n" % filename)
@@ -961,18 +985,31 @@ def upgrade_packages_index():
961985
def upgrade_env_script():
962986
"""Update env function scripts."""
963987

964-
env_scripts_root = os.path.join(Import('env_root'), 'tools', 'scripts')
965-
env_scripts_repo = 'https://github.com/RT-Thread/env.git'
988+
print("Begin to upgrade env scripts.")
989+
env_root = Import('env_root')
990+
env_kconfig_path = os.path.join(env_root, 'tools\scripts\cmds')
991+
env_config_file = os.path.join(env_kconfig_path, '.config')
992+
if os.path.isfile(env_config_file) and find_macro_in_config(env_config_file, 'SYS_PKGS_DOWNLOAD_ACCELERATE'):
993+
get_package_url, get_ver_sha = get_url_from_mirror_server('env', 'latest')
994+
if get_package_url != None:
995+
env_scripts_repo = get_package_url
996+
else:
997+
print("Failed to get url from mirror server. Using default url.")
998+
env_scripts_repo = 'https://gitee.com/RT-Thread-Mirror/env.git'
999+
else:
1000+
env_scripts_repo = 'https://github.com/RT-Thread/env.git'
9661001

1002+
# print(get_package_url,get_ver_sha)
1003+
1004+
env_scripts_root = os.path.join(env_root, 'tools', 'scripts')
9671005
cmd = r'git pull ' + env_scripts_repo
9681006
execute_command(cmd, cwd=env_scripts_root)
969-
970-
print("==============================> Env scripts update done \n")
1007+
print("==============================> Env scripts upgrade done \n")
9711008

9721009

9731010
def package_upgrade():
9741011
"""Update the package repository directory and env function scripts."""
975-
1012+
9761013
upgrade_packages_index()
9771014
upgrade_env_script()
9781015

0 commit comments

Comments
 (0)