Skip to content

Commit 1b4698f

Browse files
committed
Support DTS
1 parent 5b222d5 commit 1b4698f

File tree

4 files changed

+342
-3
lines changed

4 files changed

+342
-3
lines changed

durabletask-azuremanaged/durabletask/azuremanaged/client.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
DTSDefaultClientInterceptorImpl,
1414
)
1515
from durabletask.client import AsyncTaskHubGrpcClient, TaskHubGrpcClient
16+
from durabletask.payload.store import PayloadStore
1617

1718

1819
# Client class used for Durable Task Scheduler (DTS)
@@ -23,6 +24,7 @@ def __init__(self, *,
2324
token_credential: Optional[TokenCredential],
2425
secure_channel: bool = True,
2526
default_version: Optional[str] = None,
27+
payload_store: Optional[PayloadStore] = None,
2628
log_handler: Optional[logging.Handler] = None,
2729
log_formatter: Optional[logging.Formatter] = None):
2830

@@ -40,7 +42,8 @@ def __init__(self, *,
4042
log_handler=log_handler,
4143
log_formatter=log_formatter,
4244
interceptors=interceptors,
43-
default_version=default_version)
45+
default_version=default_version,
46+
payload_store=payload_store)
4447

4548

4649
# Async client class used for Durable Task Scheduler (DTS)
@@ -60,6 +63,8 @@ class AsyncDurableTaskSchedulerClient(AsyncTaskHubGrpcClient):
6063
secure_channel (bool, optional): Whether to use a secure gRPC channel (TLS).
6164
Defaults to True.
6265
default_version (Optional[str], optional): Default version string for orchestrations.
66+
payload_store (Optional[PayloadStore], optional): A payload store for
67+
externalizing large payloads. If None, payloads are sent inline.
6368
log_handler (Optional[logging.Handler], optional): Custom logging handler for client logs.
6469
log_formatter (Optional[logging.Formatter], optional): Custom log formatter for client logs.
6570
@@ -85,6 +90,7 @@ def __init__(self, *,
8590
token_credential: Optional[AsyncTokenCredential],
8691
secure_channel: bool = True,
8792
default_version: Optional[str] = None,
93+
payload_store: Optional[PayloadStore] = None,
8894
log_handler: Optional[logging.Handler] = None,
8995
log_formatter: Optional[logging.Formatter] = None):
9096

@@ -102,4 +108,5 @@ def __init__(self, *,
102108
log_handler=log_handler,
103109
log_formatter=log_formatter,
104110
interceptors=interceptors,
105-
default_version=default_version)
111+
default_version=default_version,
112+
payload_store=payload_store)

durabletask-azuremanaged/durabletask/azuremanaged/worker.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
from durabletask.azuremanaged.internal.durabletask_grpc_interceptor import \
1111
DTSDefaultClientInterceptorImpl
12+
from durabletask.payload.store import PayloadStore
1213
from durabletask.worker import ConcurrencyOptions, TaskHubGrpcWorker
1314

1415

@@ -30,6 +31,8 @@ class DurableTaskSchedulerWorker(TaskHubGrpcWorker):
3031
concurrency_options (Optional[ConcurrencyOptions], optional): Configuration
3132
for controlling worker concurrency limits. If None, default concurrency
3233
settings will be used.
34+
payload_store (Optional[PayloadStore], optional): A payload store for
35+
externalizing large payloads. If None, payloads are sent inline.
3336
log_handler (Optional[logging.Handler], optional): Custom logging handler for worker logs.
3437
log_formatter (Optional[logging.Formatter], optional): Custom log formatter for worker logs.
3538
@@ -63,6 +66,7 @@ def __init__(self, *,
6366
token_credential: Optional[TokenCredential],
6467
secure_channel: bool = True,
6568
concurrency_options: Optional[ConcurrencyOptions] = None,
69+
payload_store: Optional[PayloadStore] = None,
6670
log_handler: Optional[logging.Handler] = None,
6771
log_formatter: Optional[logging.Formatter] = None):
6872

@@ -80,4 +84,5 @@ def __init__(self, *,
8084
log_handler=log_handler,
8185
log_formatter=log_formatter,
8286
interceptors=interceptors,
83-
concurrency_options=concurrency_options)
87+
concurrency_options=concurrency_options,
88+
payload_store=payload_store)

durabletask-azuremanaged/pyproject.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ dependencies = [
3030
"azure-identity>=1.19.0"
3131
]
3232

33+
[project.optional-dependencies]
34+
azure-blob-payloads = [
35+
"durabletask[azure-blob-payloads]>=1.3.0"
36+
]
37+
3338
[project.urls]
3439
repository = "https://github.com/microsoft/durabletask-python"
3540
changelog = "https://github.com/microsoft/durabletask-python/blob/main/CHANGELOG.md"

0 commit comments

Comments
 (0)