feat(lxc): передаём пользовательский пароль в create_lxc + валидация

This commit is contained in:
2026-08-09 22:10:18 +03:00
parent dea129b076
commit 55c3da65f5
+6 -3
View File
@@ -69,17 +69,20 @@ def _provision(instance_id: int, template_id: int, node: str) -> None:
# Создание из существующего LXC по VMID не поддерживается.
if not template.source_template:
raise ValueError("У LXC-шаблона не указан source_template")
# create_lxc делает всё сам: ostemplate → passwd → resize → start.
password = pve.create_lxc(
if not instance.root_password:
raise ValueError("Для LXC необходимо задать пароль")
# Пароль задаёт сам пользователь в форме — приходит через cipassword
# и сохраняется в instance.root_password. Передаём его в create_lxc.
pve.create_lxc(
new_vmid=instance.vmid,
name=clean_name,
template_volid=template.source_template,
password=instance.root_password,
cores=template.cores,
memory_mb=template.memory_mb,
disk_gb=template.disk_gb,
node=node,
)
instance.root_password = password
instance.status = models.InstanceStatus.running
logger.info("Инстанс %s (vmid=%s) создан и запущен", instance.id, instance.vmid)