Skip to content

Commit 70600bf

Browse files
authored
feat: create external trigger for ephemeral index (#1212)
1 parent 8dc9c6d commit 70600bf

5 files changed

Lines changed: 23 additions & 16 deletions

File tree

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
[project]
22
name = "uipath"
3-
version = "2.6.11"
3+
version = "2.6.12"
44
description = "Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools."
55
readme = { file = "README.md", content-type = "text/markdown" }
66
requires-python = ">=3.11"
77
dependencies = [
88
"uipath-core>=0.2.0, <0.3.0",
9-
"uipath-runtime>=0.6.0, <0.7.0",
9+
"uipath-runtime>=0.6.1, <0.7.0",
1010
"click>=8.3.1",
1111
"httpx>=0.28.1",
1212
"pyjwt>=2.10.1",

src/uipath/platform/resume_triggers/_enums.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ class ExternalTriggerType(str, Enum):
2626
DEEP_RAG = "deepRag"
2727
BATCH_TRANSFORM = "batchTransform"
2828
IXP_EXTRACTION = "ixpExtraction"
29+
INDEX_INGESTION = "indexIngestion"
2930

3031

3132
class ExternalTrigger(BaseModel):

src/uipath/platform/resume_triggers/_protocol.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ async def read_trigger(self, trigger: UiPathResumeTrigger) -> Any | None:
241241

242242
return trigger_response
243243

244-
case UiPathResumeTriggerType.EPHEMERAL_INDEX:
244+
case UiPathResumeTriggerType.INDEX_INGESTION:
245245
if trigger.item_key:
246246
index = await uipath.context_grounding.retrieve_by_id_async(
247247
trigger.item_key
@@ -392,7 +392,7 @@ async def create_trigger(self, suspend_value: Any) -> UiPathResumeTrigger:
392392
await self._handle_deep_rag_job_trigger(
393393
suspend_value, resume_trigger
394394
)
395-
case UiPathResumeTriggerType.EPHEMERAL_INDEX:
395+
case UiPathResumeTriggerType.INDEX_INGESTION:
396396
await self._handle_ephemeral_index_job_trigger(
397397
suspend_value, resume_trigger
398398
)
@@ -449,7 +449,7 @@ def _determine_trigger_type(self, value: Any) -> UiPathResumeTriggerType:
449449
if isinstance(value, (CreateDeepRag, WaitDeepRag)):
450450
return UiPathResumeTriggerType.DEEP_RAG
451451
if isinstance(value, (CreateEphemeralIndex, WaitEphemeralIndex)):
452-
return UiPathResumeTriggerType.EPHEMERAL_INDEX
452+
return UiPathResumeTriggerType.INDEX_INGESTION
453453
if isinstance(value, (CreateBatchTransform, WaitBatchTransform)):
454454
return UiPathResumeTriggerType.BATCH_RAG
455455
if isinstance(value, (DocumentExtraction, WaitDocumentExtraction)):
@@ -477,7 +477,7 @@ def _determine_trigger_name(self, value: Any) -> UiPathResumeTriggerName:
477477
if isinstance(value, (CreateDeepRag, WaitDeepRag)):
478478
return UiPathResumeTriggerName.DEEP_RAG
479479
if isinstance(value, (CreateEphemeralIndex, WaitEphemeralIndex)):
480-
return UiPathResumeTriggerName.EPHEMERAL_INDEX
480+
return UiPathResumeTriggerName.INDEX_INGESTION
481481
if isinstance(value, (CreateBatchTransform, WaitBatchTransform)):
482482
return UiPathResumeTriggerName.BATCH_RAG
483483
if isinstance(value, (DocumentExtraction, WaitDocumentExtraction)):
@@ -570,6 +570,12 @@ async def _handle_ephemeral_index_job_trigger(
570570
attachments=value.attachments,
571571
)
572572
)
573+
await self._create_external_trigger(
574+
ExternalTrigger(
575+
type=ExternalTriggerType.INDEX_INGESTION,
576+
external_id=ephemeral_index.id,
577+
)
578+
)
573579
if not ephemeral_index:
574580
raise Exception("Failed to create ephemeral index")
575581
resume_trigger.item_key = ephemeral_index.id

tests/cli/test_hitl.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -590,7 +590,7 @@ async def test_read_ephemeral_index_trigger_successful(
590590
new=mock_retrieve_by_id,
591591
):
592592
resume_trigger = UiPathResumeTrigger(
593-
trigger_type=UiPathResumeTriggerType.EPHEMERAL_INDEX,
593+
trigger_type=UiPathResumeTriggerType.INDEX_INGESTION,
594594
item_key=index_id,
595595
)
596596
reader = UiPathResumeTriggerReader()
@@ -622,7 +622,7 @@ async def test_read_ephemeral_index_trigger_pending(
622622
new=mock_retrieve_by_id,
623623
):
624624
resume_trigger = UiPathResumeTrigger(
625-
trigger_type=UiPathResumeTriggerType.EPHEMERAL_INDEX,
625+
trigger_type=UiPathResumeTriggerType.INDEX_INGESTION,
626626
item_key=index_id,
627627
)
628628

@@ -650,7 +650,7 @@ async def test_read_ephemeral_index_trigger_failed(
650650
new=mock_retrieve_by_id,
651651
):
652652
resume_trigger = UiPathResumeTrigger(
653-
trigger_type=UiPathResumeTriggerType.EPHEMERAL_INDEX,
653+
trigger_type=UiPathResumeTriggerType.INDEX_INGESTION,
654654
item_key=index_id,
655655
)
656656

@@ -1009,7 +1009,7 @@ async def test_create_resume_trigger_create_ephemeral_index(
10091009

10101010
assert resume_trigger is not None
10111011
assert (
1012-
resume_trigger.trigger_type == UiPathResumeTriggerType.EPHEMERAL_INDEX
1012+
resume_trigger.trigger_type == UiPathResumeTriggerType.INDEX_INGESTION
10131013
)
10141014
assert resume_trigger.item_key == index_id
10151015
mock_create_ephemeral_index.assert_called_once_with(
@@ -1035,7 +1035,7 @@ async def test_create_resume_trigger_wait_ephemeral_index(
10351035
resume_trigger = await processor.create_trigger(wait_ephemeral_index)
10361036

10371037
assert resume_trigger is not None
1038-
assert resume_trigger.trigger_type == UiPathResumeTriggerType.EPHEMERAL_INDEX
1038+
assert resume_trigger.trigger_type == UiPathResumeTriggerType.INDEX_INGESTION
10391039
assert resume_trigger.item_key == index_id
10401040

10411041

uv.lock

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

0 commit comments

Comments
 (0)