Skip to content

Commit 5f028ad

Browse files
plaffittlperdereau
authored andcommitted
refactor: move PVECluster.get_node_resources to PVENode.resources property
1 parent d4ac84f commit 5f028ad

File tree

2 files changed

+12
-11
lines changed

2 files changed

+12
-11
lines changed

src/pvecontrol/cluster.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,9 @@ def _initstatus(self):
2727
for node in self.get_resources_nodes():
2828
self.nodes.append(
2929
PVENode(
30-
self.api,
30+
self,
3131
node["node"],
3232
node["status"],
33-
node_resources=self.get_node_resources(node["node"]),
3433
kwargs=node,
3534
)
3635
)
@@ -118,9 +117,6 @@ def is_healthy(self):
118117
def get_resources_nodes(self):
119118
return [resource for resource in self.resources if resource["type"] == "node"]
120119

121-
def get_node_resources(self, node_name):
122-
return [resource for resource in self.resources if resource.get("node") == node_name]
123-
124120
def get_vm(self, vm_id):
125121
if isinstance(vm_id, str):
126122
vm_id = int(vm_id)

src/pvecontrol/node.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,13 @@ class NodeStatus(Enum):
1616
class PVENode:
1717
"""A proxmox VE Node"""
1818

19-
_api = None
20-
21-
def __init__(self, api, node, status, node_resources, kwargs=None):
19+
def __init__(self, cluster, node, status, kwargs=None):
2220
if not kwargs:
2321
kwargs = {}
2422

2523
self.node = node
26-
self.resources = node_resources
2724
self.status = NodeStatus[status.upper()]
28-
self._api = api
25+
self.cluster = cluster
2926
self.cpu = kwargs.get("cpu", 0)
3027
self.allocatedcpu = 0
3128
self.maxcpu = kwargs.get("maxcpu", 0)
@@ -52,7 +49,7 @@ def __str__(self):
5249
def _init_vms(self):
5350
self.vms = []
5451
if self.status == NodeStatus.ONLINE:
55-
self.vms = [PVEVm(self._api, self.node, vm["vmid"], vm["status"], vm) for vm in self.resources_vms]
52+
self.vms = [PVEVm(self.api, self.node, vm["vmid"], vm["status"], vm) for vm in self.resources_vms]
5653

5754
def _init_allocatedmem(self):
5855
"""Compute the amount of memory allocated to running VMs"""
@@ -70,6 +67,14 @@ def _init_allocatedcpu(self):
7067
continue
7168
self.allocatedcpu += vm.cpus
7269

70+
@property
71+
def api(self):
72+
return self.cluster.api
73+
74+
@property
75+
def resources(self):
76+
return [resource for resource in self.cluster.resources if resource.get("node") == self.node]
77+
7378
@property
7479
def resources_vms(self):
7580
return [resource for resource in self.resources if resource["type"] == "qemu"]

0 commit comments

Comments
 (0)