feat(lxc): передаём пользовательский пароль в create_lxc + валидация
This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user