Skip to content

Commit ee33bb6

Browse files
committed
Apply sandbox image proto updates
1 parent 47517af commit ee33bb6

6 files changed

Lines changed: 22 additions & 20 deletions

File tree

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
cd99bc4f734eb9abc5fad49b76eea7a1396f3216
1+
49a4dea8f9d8f62f026645135ec9bad71b73d7b4

durabletask-azuremanaged/durabletask/azuremanaged/internal/sandbox_service_pb2.py

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

durabletask-azuremanaged/durabletask/azuremanaged/internal/sandbox_service_pb2.pyi

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class SandboxActivityWorkerSessionResult(_message.Message):
5252
def __init__(self, message: _Optional[str] = ...) -> None: ...
5353

5454
class SandboxActivityDeclaration(_message.Message):
55-
__slots__ = ("worker_profile_id", "activity_names", "image", "environment_variables", "max_concurrent_activities", "resources", "entrypoint", "cmd", "scheduler_managed_identity_client_id")
55+
__slots__ = ("worker_profile_id", "activity_names", "image", "environment_variables", "max_concurrent_activities", "resources", "scheduler_managed_identity_client_id")
5656
class EnvironmentVariablesEntry(_message.Message):
5757
__slots__ = ("key", "value")
5858
KEY_FIELD_NUMBER: _ClassVar[int]
@@ -66,27 +66,27 @@ class SandboxActivityDeclaration(_message.Message):
6666
ENVIRONMENT_VARIABLES_FIELD_NUMBER: _ClassVar[int]
6767
MAX_CONCURRENT_ACTIVITIES_FIELD_NUMBER: _ClassVar[int]
6868
RESOURCES_FIELD_NUMBER: _ClassVar[int]
69-
ENTRYPOINT_FIELD_NUMBER: _ClassVar[int]
70-
CMD_FIELD_NUMBER: _ClassVar[int]
7169
SCHEDULER_MANAGED_IDENTITY_CLIENT_ID_FIELD_NUMBER: _ClassVar[int]
7270
worker_profile_id: str
7371
activity_names: _containers.RepeatedScalarFieldContainer[str]
7472
image: SandboxActivityImage
7573
environment_variables: _containers.ScalarMap[str, str]
7674
max_concurrent_activities: int
7775
resources: SandboxActivityResources
78-
entrypoint: _containers.RepeatedScalarFieldContainer[str]
79-
cmd: _containers.RepeatedScalarFieldContainer[str]
8076
scheduler_managed_identity_client_id: str
81-
def __init__(self, worker_profile_id: _Optional[str] = ..., activity_names: _Optional[_Iterable[str]] = ..., image: _Optional[_Union[SandboxActivityImage, _Mapping]] = ..., environment_variables: _Optional[_Mapping[str, str]] = ..., max_concurrent_activities: _Optional[int] = ..., resources: _Optional[_Union[SandboxActivityResources, _Mapping]] = ..., entrypoint: _Optional[_Iterable[str]] = ..., cmd: _Optional[_Iterable[str]] = ..., scheduler_managed_identity_client_id: _Optional[str] = ...) -> None: ...
77+
def __init__(self, worker_profile_id: _Optional[str] = ..., activity_names: _Optional[_Iterable[str]] = ..., image: _Optional[_Union[SandboxActivityImage, _Mapping]] = ..., environment_variables: _Optional[_Mapping[str, str]] = ..., max_concurrent_activities: _Optional[int] = ..., resources: _Optional[_Union[SandboxActivityResources, _Mapping]] = ..., scheduler_managed_identity_client_id: _Optional[str] = ...) -> None: ...
8278

8379
class SandboxActivityImage(_message.Message):
84-
__slots__ = ("image_ref", "managed_identity_client_id")
80+
__slots__ = ("image_ref", "managed_identity_client_id", "entrypoint", "cmd")
8581
IMAGE_REF_FIELD_NUMBER: _ClassVar[int]
8682
MANAGED_IDENTITY_CLIENT_ID_FIELD_NUMBER: _ClassVar[int]
83+
ENTRYPOINT_FIELD_NUMBER: _ClassVar[int]
84+
CMD_FIELD_NUMBER: _ClassVar[int]
8785
image_ref: str
8886
managed_identity_client_id: str
89-
def __init__(self, image_ref: _Optional[str] = ..., managed_identity_client_id: _Optional[str] = ...) -> None: ...
87+
entrypoint: _containers.RepeatedScalarFieldContainer[str]
88+
cmd: _containers.RepeatedScalarFieldContainer[str]
89+
def __init__(self, image_ref: _Optional[str] = ..., managed_identity_client_id: _Optional[str] = ..., entrypoint: _Optional[_Iterable[str]] = ..., cmd: _Optional[_Iterable[str]] = ...) -> None: ...
9090

9191
class SandboxActivityResources(_message.Message):
9292
__slots__ = ("cpu", "memory")

durabletask-azuremanaged/durabletask/azuremanaged/internal/sandbox_service_pb2_grpc.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ def ConnectSandboxActivityWorker(self, request_iterator, context):
7070

7171
def DeclareSandboxActivities(self, request, context):
7272
"""Declares sandbox activities before any live worker stream exists.
73+
This private preview supports activity execution only as a business
74+
decision; orchestrations and entities are not part of this contract.
7375
This is a configuration contract and does not advertise active worker
7476
capacity.
7577
"""

durabletask-azuremanaged/durabletask/azuremanaged/preview/sandboxes/declarations.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,8 +140,8 @@ def _build_sandbox_activity_declaration(
140140
max_concurrent_activities=max_concurrent_activities)
141141
declaration.activity_names.extend(resolved_activity_names)
142142
declaration.environment_variables.update(environment_variables or {})
143-
declaration.entrypoint.extend(_normalize_optional_strings(entrypoint or []))
144-
declaration.cmd.extend(_normalize_optional_strings(cmd or []))
143+
declaration.image.entrypoint.extend(_normalize_optional_strings(entrypoint or []))
144+
declaration.image.cmd.extend(_normalize_optional_strings(cmd or []))
145145
return declaration
146146

147147

tests/durabletask-azuremanaged/test_sandboxes_extension.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,8 @@ def configure(self, options) -> None:
7878
assert declaration.resources.memory == "1Gi"
7979
assert declaration.max_concurrent_activities == 3
8080
assert declaration.environment_variables["SANDBOX_SAMPLE_MARKER"] == "custom-value"
81-
assert list(declaration.entrypoint) == []
82-
assert list(declaration.cmd) == []
81+
assert list(declaration.image.entrypoint) == []
82+
assert list(declaration.image.cmd) == []
8383
finally:
8484
sandbox_declarations._worker_profiles.pop("pytest-profile-a", None)
8585

@@ -182,8 +182,8 @@ def test_build_sandbox_activity_declaration() -> None:
182182
assert declaration.resources.memory == "1Gi"
183183
assert declaration.environment_variables["CUSTOM_ENV"] == "custom-value"
184184
assert declaration.max_concurrent_activities == 3
185-
assert list(declaration.entrypoint) == ["python"]
186-
assert list(declaration.cmd) == ["/app/remote_worker.py"]
185+
assert list(declaration.image.entrypoint) == ["python"]
186+
assert list(declaration.image.cmd) == ["/app/remote_worker.py"]
187187

188188

189189
def test_build_sandbox_activity_declaration_accepts_adc_resource_quantities() -> None:

0 commit comments

Comments
 (0)