Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,9 @@ async def stop_dynamic_service(
assert request # nosec

try:
await scheduler.mark_service_for_removal(node_uuid, can_save)
await scheduler.mark_service_for_removal(
node_uuid=node_uuid, can_save=can_save, skip_observation_recreation=False
)
except DynamicSidecarNotFoundError:
# legacy service? if it's not then a 404 will anyway be received
# forward to director-v0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ async def mark_service_for_removal(
node_uuid: NodeID,
can_save: bool | None,
*,
skip_observation_recreation: bool = False,
skip_observation_recreation: bool,
) -> None:
"""The service will be removed as soon as possible"""

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ async def mark_service_for_removal(
node_uuid: NodeID,
can_save: bool | None,
*,
skip_observation_recreation: bool = False,
skip_observation_recreation: bool,
) -> None:
"""Marks service for removal, causing RemoveMarkedService to trigger"""
async with self._lock:
Expand Down Expand Up @@ -393,6 +393,7 @@ async def mark_all_services_in_wallet_for_removal(
await self.mark_service_for_removal(
scheduler_data.node_uuid,
can_save=scheduler_data.dynamic_sidecar.service_removal_state.can_save,
skip_observation_recreation=False,
)

async def is_service_awaiting_manual_intervention(self, node_uuid: NodeID) -> bool:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,12 @@ async def mark_service_for_removal(
node_uuid: NodeID,
can_save: bool | None,
*,
skip_observation_recreation: bool = False,
skip_observation_recreation: bool,
) -> None:
return await self.scheduler.mark_service_for_removal(
node_uuid, can_save, skip_observation_recreation=skip_observation_recreation
node_uuid=node_uuid,
can_save=can_save,
skip_observation_recreation=skip_observation_recreation,
)

async def mark_all_services_in_wallet_for_removal(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,9 @@ async def test_regression_break_endless_loop_cancellation_edge_case(
# NOTE: this will create the observation task as well!
# Simulates user action like going back to the dashboard.
await dynamic_sidecar_scheduler.mark_service_for_removal(
scheduler_data_from_http_request.node_uuid, can_save=can_save
scheduler_data_from_http_request.node_uuid,
can_save=can_save,
skip_observation_recreation=False,
)

assert (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ async def _assert_get_dynamic_services_mocked(
yield stack_status

await scheduler.mark_service_for_removal(
scheduler_data.node_uuid, can_save=True
scheduler_data.node_uuid, can_save=True, skip_observation_recreation=False
)
assert (
scheduler_data.service_name
Expand Down Expand Up @@ -259,7 +259,9 @@ async def test_scheduler_add_remove(
if with_observation_cycle:
await manually_trigger_scheduler()

await scheduler.mark_service_for_removal(scheduler_data.node_uuid, can_save=True)
await scheduler.mark_service_for_removal(
scheduler_data.node_uuid, can_save=True, skip_observation_recreation=False
)
if with_observation_cycle:
await manually_trigger_scheduler()

Expand Down Expand Up @@ -354,7 +356,7 @@ async def test_remove_missing_no_error(
) -> None:
with pytest.raises(DynamicSidecarNotFoundError) as execinfo:
await scheduler.mark_service_for_removal(
scheduler_data.node_uuid, can_save=True
scheduler_data.node_uuid, can_save=True, skip_observation_recreation=False
)
assert "not found" in str(execinfo.value)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -269,7 +269,7 @@ def get_stack_status(node_uuid: NodeID) -> RunningDynamicServiceDetails:
)

# MOCKING remove_service
def remove_service(node_uuid: NodeID, *ars: Any, **kwargs: Any) -> None:
def remove_service(self, node_uuid: NodeID, *ars: Any, **kwargs: Any) -> None:
if exp_status_code == status.HTTP_307_TEMPORARY_REDIRECT:
raise DynamicSidecarNotFoundError(node_uuid=node_uuid)

Expand Down
Loading