From d441f7d90be945b8c083078d178973a717679736 Mon Sep 17 00:00:00 2001 From: Claudiu Belu Date: Fri, 8 May 2026 16:05:31 +0000 Subject: [PATCH] Fixes _BaseMinionPoolProvider base provider class `coriolis.tasks.minion_pool_tasks._BaseVolumesMinionMachineAttachmentTask._run`, which calls the `attach_volumes_to_minion` and `detach_volumes_from_minion` passes in 5 arguments, not 4. The base class signatures should be amended, to better reflect their actual usage. In the same `_run` call, the called method's output is verified, and it verifies that the fields "volumes_info" and "minion_properties" are present in the result. The `detach_volumes_from_minion` does not mention that it should return this information. The docstring is now updated. --- coriolis/providers/base.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/coriolis/providers/base.py b/coriolis/providers/base.py index fb19bc1d..59f34815 100644 --- a/coriolis/providers/base.py +++ b/coriolis/providers/base.py @@ -1317,6 +1317,7 @@ def attach_volumes_to_minion( ctxt: context.RequestContext, connection_info: dict, minion_properties: dict, + minion_connection_info: dict, volumes_info: list[dict], ) -> dict: """Attach volumes to minion instance. @@ -1328,6 +1329,8 @@ def attach_volumes_to_minion( "minion_provider_properties". :param volumes_info: provider specific list of volumes, conforming to volumes_info_schema.json + :param minion_connection_info: minion connection info returned by + "create_minion" :returns: a dict containing the following fields * minion_properties - updated minion properties * volumes_info - updated volume info, specifying the attachment @@ -1347,6 +1350,7 @@ def detach_volumes_from_minion( ctxt: context.RequestContext, connection_info: dict, minion_properties: dict, + minion_connection_info: dict, volumes_info: list[dict], ): """Detach volumes from minion instance. @@ -1356,8 +1360,14 @@ def detach_volumes_from_minion( :param minion_properties: provider specific properties returned by "create_minion" through "minion_provider_properties". + :param minion_connection_info: minion connection info returned by + "create_minion" :param volumes_info: provider specific list of volumes, conforming to volumes_info_schema.json + + :returns: a dict containing the following fields + * minion_properties - updated minion properties + * volumes_info - updated volume info. """ pass