本文档提供了将 Blocklet Server 命令行界面(CLI)升级至最新可用版本的说明。
命令用法
upgrade 命令会自动获取并安装最新版本的 Blocklet Server CLI。
blocklet server upgrade升级过程
该命令会执行一系列步骤,以确保升级过程安全且成功。过程如下:
版本检查
该命令首先从 npm 仓库检索最新的可用版本号,并与当前安装的版本进行比较。如果当前版本已是最新,则过程终止。
权限验证
它会验证当前用户是否对 CLI 工具的安装目录拥有必要的写权限。如果权限不足,该命令将失败并建议使用
sudo重新运行。服务器关闭
如果当前有 Blocklet Server 实例正在运行,升级命令将自动停止该服务器,以防止在更新过程中发生任何冲突。原始的运行状态和数据目录将被保存。
安装
该命令会使用系统检测到的包管理器(例如,npm、yarn)继续下载并安装最新版本的 CLI 包。
服务器重启
如果服务器在升级前正在运行,该命令将自动从其原始数据目录重启它,以确保服务的连续性。
确认
成功完成后,将显示一条确认消息,其中包含升级后的新版本号。
下图说明了升级命令的工作流程。

执行示例
当您运行该命令时,它将显示升级的进度。
$ blocklet server upgrade
ℹ Using blocklet server from /home/user/.nvm/versions/node/v16.20.2/bin/blocklet
ℹ Checking permissions...
ℹ Current version is 1.8.0, found latest version 1.8.1
ℹ Begin upgrade
ℹ Stopping Blocklet Server ...
ℹ Installing Blocklet Server by npm install -g @blocklet/cli@latest ...
+ @blocklet/cli@1.8.1
added 1 package from 1 contributor, updated 1 package and audited 931 packages in 10.2s
ℹ Restarting Blocklet Server ...
✔ Blocklet Server started
✔ Blocklet Server upgrade success, current version is 1.8.1权限不足
如果您缺少修改安装目录所需的权限,该命令将输出错误并提供指导。
$ blocklet server upgrade
ℹ Using blocklet server from /usr/local/bin/blocklet
ℹ Checking permissions...
✖ Seems you do not have permission to upgrade Blocklet Server version
ℹ Maybe you can try run sudo blocklet server upgrade在这种情况下,您应按照建议使用 sudo 运行该命令:
sudo blocklet server upgrade已是最新版本
如果您的 Blocklet Server CLI 已经是最新版本,该命令将通知您无需执行任何操作。
$ blocklet server upgrade
ℹ Using blocklet server from /home/user/.nvm/versions/node/v16.20.2/bin/blocklet
ℹ Checking permissions...
ℹ The current version 1.8.1 is the latest version, no need to upgrade