Skip to content

Commit c6e8a8f

Browse files
committed
Check if recipe is a continuous activity
1 parent 4e0ed83 commit c6e8a8f

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

dataikuapi/dss/recipe.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,13 @@ def run(self, job_type="NON_RECURSIVE_FORCED_BUILD", partitions=None, wait=True,
7777
:rtype: :class:`dataikuapi.dss.job.DSSJob`
7878
"""
7979
project = self.client.get_project(self.project_key)
80-
settings = self.get_settings()
81-
outputs = project.get_flow().get_graph().get_successor_computables(self)
8280

81+
continuous_recipes_names = set(activity.recipe_id for activity in project.list_continuous_activities())
82+
if self.name in continuous_recipes_names:
83+
raise Exception(
84+
"Cannot run continuous recipe. Use a dataikuapi.dss.continuousactivity.DSSContinuousActivity instead")
85+
86+
outputs = project.get_flow().get_graph().get_successor_computables(self)
8387
if len(outputs) == 0:
8488
raise Exception("recipe has no outputs, can't run it")
8589

@@ -91,11 +95,6 @@ def run(self, job_type="NON_RECURSIVE_FORCED_BUILD", partitions=None, wait=True,
9195
"COMPUTABLE_SAVED_MODEL": "SAVED_MODEL",
9296
"COMPUTABLE_STREAMING_ENDPOINT": "STREAMING_ENDPOINT",
9397
}
94-
95-
if first_output["type"] == "COMPUTABLE_STREAMING_ENDPOINT" and not isinstance(settings, SyncRecipeSettings):
96-
raise Exception(
97-
"Cannot run recipe with output type STREAMING_ENDPOINT. Use a dataikuapi.dss.continuousactivity.DSSContinuousActivity instead")
98-
9998
if first_output["type"] in object_type_map:
10099
jd = project.new_job(job_type)
101100
jd.with_output(first_output["ref"], object_type=object_type_map[first_output["type"]], partition=partitions)

0 commit comments

Comments
 (0)