Skip to content

Commit a6dc2af

Browse files
author
s.kazemi
committed
add support for workflow_id_prefix for scheduled jobs
1 parent ab882a7 commit a6dc2af

1 file changed

Lines changed: 14 additions & 2 deletions

File tree

archipy/adapters/temporal/adapters.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
Client,
1515
Schedule,
1616
ScheduleActionStartWorkflow,
17+
ScheduleOverlapPolicy,
18+
SchedulePolicy,
1719
ScheduleSpec,
1820
TLSConfig,
1921
WorkflowHandle,
@@ -404,17 +406,27 @@ async def close(self) -> None:
404406
self._client = None
405407

406408
@override
407-
async def create_schedule(self, schedule_id: str, workflow_class: Any, spec: ScheduleSpec, task_queue: str) -> None:
409+
async def create_schedule(
410+
self,
411+
schedule_id: str,
412+
workflow_class: Any,
413+
spec: ScheduleSpec,
414+
task_queue: str,
415+
workflow_id_prefix: str | None = None,
416+
) -> None:
408417
"""Create a schedule for a workflow."""
409418
client = await self.get_client()
410419

411420
sched = Schedule(
412421
action=ScheduleActionStartWorkflow(
413422
workflow_class,
414-
id=schedule_id,
423+
id=workflow_id_prefix,
415424
task_queue=task_queue,
416425
),
417426
spec=spec,
427+
policy=SchedulePolicy(
428+
overlap=ScheduleOverlapPolicy.SKIP,
429+
),
418430
)
419431

420432
await client.create_schedule(schedule_id, sched)

0 commit comments

Comments
 (0)