kboss/b/ucloud/reset_uhost_instance_password.dspy
2025-07-16 14:27:17 +08:00

40 lines
1.4 KiB
Plaintext

async def reset_uhost_instance_password(ns={}):
db = DBPools()
async with db.sqlorContext('kboss') as sor:
ucloud_user_li = await sor.R('ucloud_users', {'orgid': 'main_user', 'del_flg': '0'})
if ucloud_user_li:
uc_client = U_Client({
"project_id": ucloud_user_li[0]['projectid'],
"public_key": ucloud_user_li[0]['accesskey'],
"private_key": ucloud_user_li[0]['accesskeysecret'],
})
else:
return {
'status': False,
'msg': 'can not find u cloud user'
}
try:
resp = uc_client.uhost().reset_uhost_instance_password({
"Region": ns.get('region'),
"Zone": ns.get('Zone'),
"UHostId": ns.get('UHostId'),
"Password": ns.get('Password')
})
return {
'status': True,
'msg': 'reset_uhost_instance_password uhost success',
'data': resp
}
except exc.UCloudException as e:
msg = e
if 'Make sure your UHost is SHUTOFF' in str(e):
msg = '请关机后再修改'
if 'Password Invalid' in str(e):
msg = '密码不符合规则'
return {
'status': False,
'msg': msg
}
ret = await reset_uhost_instance_password(params_kw)
return ret