1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 19:26:48 +00:00
webvirtcloud/webvirtcloud
catborise 52b721e6df feat(instances): find the VMs using an IP address or network
The Instances page's filters and the address search become one control:
the state list, the search box and a "Find IP" button. "Find IP" opens a
dialog (with the address typed in the search box, if any). An IP address
or a network (CIDR) finds the running VMs whose network cards use it,
read live from libvirt within 5 seconds: libvirt's DHCP leases, the host's
ARP table and the guest agent. Only addresses on the VM's own NICs count,
so interfaces inside the guest such as docker0 never match. Each match
shows the VM, its MAC, where the address came from, and a possible-
conflict mark when two VMs report one address. A coverage line says how
many running VMs were checked, how many had no connected guest agent (a
static address on them cannot be seen), which agents could not be read,
which hosts were not reached or not finished in time, and when it was
read.

The hosts are read in parallel: leases and ARP first, then each guest
agent on its own thread, so an agent that never answers holds back only
its own VM; libvirt waits for an agent without limit, so a search starts
only while its threads fit in 16 search threads in the worker.
Administrators search every compute, VMs the panel has not registered
yet included, and see the hosts; other users find only their own VMs and
see no hosts or host errors.
2026-10-24 22:22:50 +03:00
..
tests feat(instances): find the VMs using an IP address or network 2026-10-24 22:22:50 +03:00
__init__.py Initial commit 2015-02-27 10:53:51 +02:00
asgi.py fix references to django 3 migration 2021-06-15 14:29:20 +03:00
common_tags.py fix: render the 404 page for logged-in users 2026-10-04 01:08:11 +03:00
middleware.py fix: a form libvirt refuses goes back to its page with the reason 2026-10-20 22:37:40 +03:00
serializers.py fix(api): typed URLs and accurate response schemas 2026-10-04 01:08:11 +03:00
settings-dev.py fix(static): collectstatic writes to staticfiles/, and its output is no longer committed 2026-10-07 16:31:56 +03:00
settings.py.template test: process tests run outside the --parallel pool 2026-10-21 09:45:25 +03:00
test_runner.py test: process tests run outside the --parallel pool 2026-10-21 09:45:25 +03:00
urls-api.py feat(operations): jobs API 2026-10-14 23:27:57 +03:00
urls.py feat(operations): jobs page 2026-10-14 23:27:57 +03:00
wsgi.py fix: stop ignoring SIGCHLD process-wide 2026-10-04 13:40:53 +03:00
wsgi_custom.py fix references to django 3 migration 2021-06-15 14:29:20 +03:00