Skip to content

Commit 06071a6

Browse files
author
Andrei Neagu
committed
aiodocker format
1 parent e283d7e commit 06071a6

File tree

1 file changed

+8
-0
lines changed
  • services/director-v2/src/simcore_service_director_v2/modules/dynamic_sidecar/docker_api

1 file changed

+8
-0
lines changed

services/director-v2/src/simcore_service_director_v2/modules/dynamic_sidecar/docker_api/_core.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import json
22
import logging
3+
import re
34
from collections.abc import Mapping
45
from typing import Any, Final
56

@@ -91,6 +92,11 @@ async def create_network(network_config: dict[str, Any]) -> NetworkId:
9192
raise DynamicSidecarError(msg) from e
9293

9394

95+
def _to_snake_case(string: str) -> str:
96+
# Convert camelCase or PascalCase to snake_case
97+
return re.sub(r"(?<!^)(?=[A-Z])", "_", string).lower()
98+
99+
94100
async def create_service_and_get_id(
95101
create_service_data: AioDockerServiceSpec | dict[str, Any]
96102
) -> ServiceId:
@@ -100,6 +106,8 @@ async def create_service_and_get_id(
100106
kwargs = jsonable_encoder(
101107
create_service_data, by_alias=True, exclude_unset=True
102108
)
109+
kwargs = {_to_snake_case(k): v for k, v in kwargs.items()}
110+
103111
logging.debug("Creating service with\n%s", json.dumps(kwargs, indent=1))
104112
service_start_result = await client.services.create(**kwargs)
105113

0 commit comments

Comments
 (0)