Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion cmds/cmd_package/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,9 @@
# 2019-01-07 SummerGift The prompt supports utf-8 encoding
# 2020-04-08 SummerGift Optimize program structure
#

__version__ = 'RT-Thread packages v1.2.1'
# This version number prepares for the subsequent suspension
# of the env script to upgrade the python2 version
from .cmd_package_printenv import package_print_env, package_print_help
from .cmd_package_list import list_packages
from .cmd_package_wizard import package_wizard
Expand All @@ -46,6 +48,8 @@ def run_env_cmd(args):
list_packages()
elif args.package_upgrade:
package_upgrade()
elif args.package_upgrade_force:
package_upgrade(force_upgrade=True)
elif args.package_print_env:
package_print_env()
else:
Expand All @@ -69,6 +73,12 @@ def add_parser(sub):
default=False,
dest='package_update')

parser.add_argument('--force-upgrade',
help='force upgrade packages, install or remove the packages by your settings in menuconfig',
action='store_true',
default=False,
dest='package_upgrade_force')

parser.add_argument('--list',
help='list target packages',
action='store_true',
Expand Down
14 changes: 11 additions & 3 deletions cmds/cmd_package/cmd_package_upgrade.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
from .cmd_package_update import need_using_mirror_download


def upgrade_packages_index():
def upgrade_packages_index(force_upgrade=False):
"""Update the package repository index."""

env_root = Import('env_root')
Expand All @@ -51,11 +51,19 @@ def upgrade_packages_index():
packages_root = pkgs_root
pkgs_path = os.path.join(packages_root, 'packages')



if not os.path.isdir(pkgs_path):
cmd = 'git clone ' + git_repo + ' ' + pkgs_path
os.system(cmd)
print("upgrade from :%s" % (git_repo.encode("utf-8")))
else:
if force_upgrade:
cwd = os.getcwd()
os.chdir(pkgs_path)
os.system('git fetch --all')
os.system('git reset --hard origin/master')
os.chdir(cwd)
print("Begin to upgrade env packages.")
git_pull_repo(pkgs_path, git_repo)
print("==============================> Env packages upgrade done \n")
Expand Down Expand Up @@ -97,8 +105,8 @@ def upgrade_env_script():
print("==============================> Env scripts upgrade done \n")


def package_upgrade():
def package_upgrade(force_upgrade=False):
"""Update the package repository directory and env function scripts."""

upgrade_packages_index()
upgrade_packages_index(force_upgrade=force_upgrade)
upgrade_env_script()
2 changes: 1 addition & 1 deletion env.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
from cmds import *
from vars import Export

__version__ = 'RT-Thread packages v1.2.0'
__version__ = 'RT-Thread packages v1.2.1'


def init_argparse():
Expand Down