Skip to content

Commit 60a1092

Browse files
committed
handle existing connector
1 parent 3e4ce8a commit 60a1092

File tree

1 file changed

+11
-7
lines changed
  • python/understack-workflows/understack_workflows/oslo_event

1 file changed

+11
-7
lines changed

python/understack-workflows/understack_workflows/oslo_event/ironic_node.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from uuid import UUID
33

44
from openstack.connection import Connection
5+
from openstack.exceptions import ConflictException
56
from pydantic import BaseModel
67
from pydantic import computed_field
78
from pynautobot.core.api import Api as Nautobot
@@ -77,13 +78,16 @@ def handle_provision_end(conn: Connection, _: Nautobot, event_data: dict) -> int
7778

7879
def create_volume_connector(conn: Connection, event: IronicProvisionSetEvent):
7980
logger.info("Creating baremetal volume connector.")
80-
connector = conn.baremetal.create_volume_connector( # pyright: ignore
81-
node_uuid=event.node_uuid,
82-
type="iqn",
83-
connector_id=instance_nqn(event.instance_uuid),
84-
)
85-
logger.debug("Created connector: %s", connector)
86-
return connector
81+
try:
82+
connector = conn.baremetal.create_volume_connector( # pyright: ignore
83+
node_uuid=event.node_uuid,
84+
type="iqn",
85+
connector_id=instance_nqn(event.instance_uuid),
86+
)
87+
logger.debug("Created connector: %s", connector)
88+
return connector
89+
except ConflictException:
90+
logger.info("Connector already exists.")
8791

8892

8993
def instance_nqn(instance_id: UUID):

0 commit comments

Comments
 (0)