Skip to content

Commit cb2f440

Browse files
committed
update the sliver info
1 parent 5cadecc commit cb2f440

File tree

1 file changed

+23
-5
lines changed

1 file changed

+23
-5
lines changed

fabric_cf/actor/core/plugins/db/actor_database.py

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -287,14 +287,21 @@ def add_reservation(self, *, reservation: ABCReservationMixin):
287287
components = None
288288
host = None
289289
ip_subnet = None
290-
if reservation.get_resources() is not None and reservation.get_resources().get_sliver() is not None:
290+
sliver = None
291+
from fabric_cf.actor.core.kernel.reservation_client import ReservationClient
292+
if isinstance(reservation, ReservationClient) and reservation.get_leased_resources() and \
293+
reservation.get_leased_resources().get_sliver():
294+
sliver = reservation.get_leased_resources().get_sliver()
295+
if not sliver and reservation.get_resources() and reservation.get_resources().get_sliver():
291296
sliver = reservation.get_resources().get_sliver()
292-
site = sliver.get_site()
297+
298+
if sliver:
293299
rsv_type = sliver.get_type().name
294300
from fim.slivers.network_service import NetworkServiceSliver
295301
from fim.slivers.network_node import NodeSliver
296302

297303
if isinstance(sliver, NetworkServiceSliver) and sliver.interface_info:
304+
site = sliver.get_site()
298305
if sliver.get_gateway():
299306
ip_subnet = sliver.get_gateway().subnet
300307

@@ -311,7 +318,9 @@ def add_reservation(self, *, reservation: ABCReservationMixin):
311318
bdf = ":".join(split_string[3:]) if len(split_string) > 3 else None
312319
if node_id and comp_id and bdf:
313320
components.append((node_id, comp_id, bdf))
321+
314322
elif isinstance(sliver, NodeSliver):
323+
site = sliver.get_site()
315324
if sliver.get_labels() and sliver.get_labels().instance_parent:
316325
host = sliver.get_labels().instance_parent
317326
if sliver.get_label_allocations() and sliver.get_label_allocations().instance_parent:
@@ -368,14 +377,21 @@ def update_reservation(self, *, reservation: ABCReservationMixin):
368377
components = None
369378
ip_subnet = None
370379
host = None
371-
372-
if reservation.get_resources() is not None and reservation.get_resources().get_sliver() is not None:
380+
sliver = None
381+
from fabric_cf.actor.core.kernel.reservation_client import ReservationClient
382+
if isinstance(reservation, ReservationClient) and reservation.get_leased_resources() and \
383+
reservation.get_leased_resources().get_sliver():
384+
sliver = reservation.get_leased_resources().get_sliver()
385+
if not sliver and reservation.get_resources() and reservation.get_resources().get_sliver():
373386
sliver = reservation.get_resources().get_sliver()
374-
site = sliver.get_site()
387+
388+
if sliver:
375389
rsv_type = sliver.get_type().name
376390
from fim.slivers.network_service import NetworkServiceSliver
377391
from fim.slivers.network_node import NodeSliver
378392
if isinstance(sliver, NetworkServiceSliver) and sliver.interface_info:
393+
site = sliver.get_site()
394+
379395
if sliver.get_gateway():
380396
ip_subnet = sliver.get_gateway().subnet
381397

@@ -393,6 +409,8 @@ def update_reservation(self, *, reservation: ABCReservationMixin):
393409
if node_id and comp_id and bdf:
394410
components.append((node_id, comp_id, bdf))
395411
elif isinstance(sliver, NodeSliver):
412+
site = sliver.get_site()
413+
396414
if sliver.get_labels() and sliver.get_labels().instance_parent:
397415
host = sliver.get_labels().instance_parent
398416
if sliver.get_label_allocations() and sliver.get_label_allocations().instance_parent:

0 commit comments

Comments
 (0)