mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-06-02 12:05:54 +00:00
21 lines
858 B
Python
21 lines
858 B
Python
from __future__ import annotations
|
|
|
|
import typing
|
|
import traceback
|
|
|
|
from .. import operator, entities, errors
|
|
|
|
|
|
@operator.operator_class(name='update', help='更新程序', usage='!update', privilege=2)
|
|
class UpdateCommand(operator.CommandOperator):
|
|
async def execute(self, context: entities.ExecuteContext) -> typing.AsyncGenerator[entities.CommandReturn, None]:
|
|
try:
|
|
yield entities.CommandReturn(text='正在进行更新...')
|
|
if await self.ap.ver_mgr.update_all():
|
|
yield entities.CommandReturn(text='更新完成,请重启程序以应用更新')
|
|
else:
|
|
yield entities.CommandReturn(text='当前已是最新版本')
|
|
except Exception as e:
|
|
traceback.print_exc()
|
|
yield entities.CommandReturn(error=errors.CommandError('更新失败: ' + str(e)))
|