1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 19:26:48 +00:00
webvirtcloud/instances
catborise 400ba1614f feat(instances): a VM's clone form in device cards, with fixes to what it clones
Settings > Clone was a horizontal form with unlabelled checkboxes. The
owner chose this layout from three rendered options: the clone's name
on top, a "Network" card with a new MAC address per NIC, a "Storage"
card with a new volume name per disk, then the optional title and
description and a footer with Clone.

Codex reviewed cloning end to end; these are fixed:

- Every NIC of the clone gets a new random MAC when the form opens.
  Only the first did, so a VM with two NICs gave its clone the second
  NIC's MAC. Guess MAC is offered for the first NIC only: a name's DHCP
  host entry holds one address.
- A VM without a NIC can be cloned: the first NIC's MAC was required.
- The disk name script uses the persistent disks, as the form does; a
  disk added pending the next start kept the source's volume name.
- A running or paused VM is not cloned while a copied disk changes at
  the next start: the backup copies the running disk, so the clone
  would get the old contents under the new definition.
- A derived volume name that does not start with the source's name now
  starts with the clone's name and the disk's device, so a second clone
  or a second disk does not take the same name.
- Guess for the clone name says when the DHCP file has no free name; it
  stopped with a script error.
- The qcow2 metadata preallocation box shows only for a shut-off VM: a
  live clone's backup ignores it.

Other users no longer get hidden MAC and disk inputs or the scripts that
filled them: the server derives those values and ignored the posted ones.
2026-10-30 14:55:57 +03:00
..
api feat(instances): migrate a VM with its disks copied into pools of the destination 2026-10-29 19:46:31 +03:00
fixtures Instances overhaul 2020-07-13 15:33:09 +06:00
migrations fix(admin): Removed VMs shows the host a VM left and confirms a delete 2026-10-26 11:48:40 +03:00
templates feat(instances): a VM's clone form in device cards, with fixes to what it clones 2026-10-30 14:55:57 +03:00
templatetags feat(instances): the VM list on Bootstrap's pills, badges and menus, its actions by the user's rights 2026-10-28 13:55:46 +03:00
tests feat(instances): a VM's clone form in device cards, with fixes to what it clones 2026-10-30 14:55:57 +03:00
__init__.py Fixe migrations for new deployments 2020-05-28 18:19:25 +06:00
addresses.py fix(instances): the IP search asks a guest agent with a timeout 2026-10-25 16:15:18 +03:00
apps.py format python code with black 2022-11-02 08:54:35 +03:00
forms.py feat(instances): a VM's console settings in two cards, with a password action 2026-10-30 14:55:57 +03:00
jobs.py feat(instances): a VM's clone form in device cards, with fixes to what it clones 2026-10-30 14:55:57 +03:00
models.py feat(instances): a VM's console settings in two cards, with a password action 2026-10-30 14:55:57 +03:00
report.py fix(admin): the Logs download survives any row and stops at a size it can build 2026-10-26 10:12:53 +03:00
states.py feat(instances): the VM list on Bootstrap's pills, badges and menus, its actions by the user's rights 2026-10-28 13:55:46 +03:00
urls.py feat(instances): move a VM's disk to another storage pool of its host 2026-10-29 21:30:26 +03:00
utils.py feat(instances): a VM's clone form in device cards, with fixes to what it clones 2026-10-30 14:55:57 +03:00
views.py feat(instances): a VM's console settings in two cards, with a password action 2026-10-30 14:55:57 +03:00