add node vmid cores and memory limits to inputs in instance create form
Signed-off-by: Arthur Lu <learthurgo@gmail.com>
This commit is contained in:
parent
c459dad024
commit
759571535e
@ -15,13 +15,13 @@ async function init () {
|
|||||||
if (cookie === "") {
|
if (cookie === "") {
|
||||||
goToPage("login.html");
|
goToPage("login.html");
|
||||||
}
|
}
|
||||||
let user = await requestAPI("/user");
|
let resources = await requestAPI("/user/resources");
|
||||||
let resources = user.resources;
|
let instances = await requestAPI("/user/instances");
|
||||||
let instances = user.instances;
|
let nodes = await requestAPI("/user/nodes");
|
||||||
document.querySelector("#username").innerText = `Username: ${getCookie("username")}`;
|
document.querySelector("#username").innerText = `Username: ${getCookie("username")}`;
|
||||||
document.querySelector("#pool").innerText = `Pool: ${instances.pool}`;
|
document.querySelector("#pool").innerText = `Pool: ${instances.pool}`;
|
||||||
document.querySelector("#vmid").innerText = `VMID Range: ${instances.vmid.min} - ${instances.vmid.max}`;
|
document.querySelector("#vmid").innerText = `VMID Range: ${instances.vmid.min} - ${instances.vmid.max}`;
|
||||||
document.querySelector("#nodes").innerText = `Nodes: ${user.nodes.toString()}`;
|
document.querySelector("#nodes").innerText = `Nodes: ${nodes.toString()}`;
|
||||||
buildResourceTable(resources, "#resource-table");
|
buildResourceTable(resources, "#resource-table");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -125,6 +125,13 @@ async function handleInstanceAdd () {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
let userResources = await requestAPI("/user/resources", "GET");
|
||||||
|
let userInstances = await requestAPI("/user/instances", "GET")
|
||||||
|
d.querySelector("#cores").max = userResources.avail.cores;
|
||||||
|
d.querySelector("#memory").max = userResources.avail.memory;
|
||||||
|
d.querySelector("#vmid").min = userInstances.vmid.min;
|
||||||
|
d.querySelector("#vmid").max = userInstances.vmid.max;
|
||||||
|
|
||||||
let typeSelect = d.querySelector("#type");
|
let typeSelect = d.querySelector("#type");
|
||||||
typeSelect.selectedIndex = -1;
|
typeSelect.selectedIndex = -1;
|
||||||
typeSelect.addEventListener("change", () => {
|
typeSelect.addEventListener("change", () => {
|
||||||
@ -151,9 +158,10 @@ async function handleInstanceAdd () {
|
|||||||
rootfsStorage.selectedIndex = -1;
|
rootfsStorage.selectedIndex = -1;
|
||||||
|
|
||||||
let nodeSelect = d.querySelector("#node");
|
let nodeSelect = d.querySelector("#node");
|
||||||
let nodes = await requestPVE("/nodes", "GET");
|
let clusterNodes = await requestPVE("/nodes", "GET");
|
||||||
nodes.data.forEach((element) => {
|
let allowedNodes = await requestAPI("/user/nodes", "GET");
|
||||||
if (element.status === "online") {
|
clusterNodes.data.forEach((element) => {
|
||||||
|
if (element.status === "online" && allowedNodes.includes(element.node)) {
|
||||||
nodeSelect.add(new Option(element.node));
|
nodeSelect.add(new Option(element.node));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user