+ def _getK8sNodes(self, k8sclient):
+ return k8sclient.list_node()
+
+ def _getK8sNodeDetail(self, k8sclient, node_name):
+ return k8sclient.read_node(name=node_name)
+
+ def _getK8sCapabilities(self, k8s_client):
+ k8s_capabilities = {}
+ nodes = self._getK8sNodes(k8s_client)
+ for node in nodes.items:
+ logger.debug(f'k8s node {node.metadata.name} allocatable: '
+ f'{node.status.allocatable}')
+ for allocatable in node.status.allocatable:
+ if allocatable.startswith('intel.com/pci_sriov_net_'):
+ k8s_capabilities[f'{node.metadata.name}_sriov'] = True
+ if allocatable == 'windriver.com/isolcpus':
+ k8s_capabilities[f'{node.metadata.name}_isolcpus'] = True
+ return k8s_capabilities
+
+ def _setK8sCapabilities(self, k8scluster, client, k8s_client):