-
Notifications
You must be signed in to change notification settings - Fork 76
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define modular pipelines with config file #713
Comments
And you're not alone!
First of all, this doesn't have to start its life in To create the package, we don't have a plugin template yet kedro-org/kedro#2685 but you can start with https://github.com/astrojuanlu/copier-pylib (shameless self-plug) and take it from there. This is just one idea on how the Developer Experience could be:
Now, the only blocker I see off the top of my head is the from kedro.framework.project import find_pipelines
from kedro.pipeline import Pipeline
+from kedro_yaml_pipelines.registry import find_pipelines as find_yaml_pipelines
+
def register_pipelines() -> Dict[str, Pipeline]:
"""Register the project's pipelines.
@@ -12,5 +14,6 @@ def register_pipelines() -> Dict[str, Pipeline]:
A mapping from pipeline names to ``Pipeline`` objects.
"""
pipelines = find_pipelines()
+ pipelines += find_yaml_pipelines()
pipelines["__default__"] = sum(pipelines.values())
return pipelines
and hopefully this should be it. Of course there are lots of variations for this. The key points are
|
Notice that this is a departure from your original request - that |
Description
As a Kedro user I have always wanted to be able to define modular pipelines in a config file.
Context
I believe that doing so will reduce the likelihood of a user inadvertently impacting a pipeline other than the one intended when making changes to
pipeline_registry
.Possible Implementation
I created PR #3904 in the Kedro core repository and @datajoely mentioned it might make more sense to make this a plugin rather than part of Kedro Core, but I'm unsure which directory it would belong in.
Possible Alternatives
@datajoely mentioned a possible alternative here
The text was updated successfully, but these errors were encountered: