功能:扩展云管资源运维、账号授权及监控管理

This commit is contained in:
songyiming committed 2026-11-10 17:52:52 +08:00
1 parent eef485306f
commit 6134d49c16
87 files changed
+29498 -126

No files matched your search

+28
View File
@@ -0,0 +1,28 @@
package proxmox
import "testing"
func TestTemplateDisksRejectUnsafeSources(t *testing.T) {
for _, tc := range []struct {
name string
config map[string]any
}{
{"ordinary-vm", map[string]any{"template": 0, "scsi0": "local:disk,size=32G"}},
{"locked", map[string]any{"template": 1, "lock": "clone", "scsi0": "local:disk,size=32G"}},
{"gpu", map[string]any{"template": 1, "hostpci0": "0000:01:00.0", "scsi0": "local:disk,size=32G"}},
{"host-disk", map[string]any{"template": 1, "scsi0": "/dev/sda,size=32G"}},
{"unknown-size", map[string]any{"template": 1, "scsi0": "local:disk"}},
{"nan-size", map[string]any{"template": 1, "scsi0": "local:disk,size=NaNG"}},
{"inf-size", map[string]any{"template": 1, "scsi0": "local:disk,size=+InfG"}},
} {
t.Run(tc.name, func(t *testing.T) {
if _, err := TemplateDisks(tc.config); err == nil {
t.Fatal("unsafe template accepted")
}
})
}
disks, err := TemplateDisks(map[string]any{"template": 1, "scsi0": "local:disk,size=32G", "efidisk0": "local:efi,size=4M", "tpmstate0": "local:tpm,size=4M", "ide2": "none,media=cdrom"})
if err != nil || disks["local"] != 32*(1<<30)+8*(1<<20) {
t.Fatalf("incorrect capacity including firmware disks: %v %v", disks, err)
}
}