Mono repo Kedro project

182 Views Asked by At

I started a Kedro project a while ago and started to build different parts of the pipeline which only tangentially interact with each other. In some cases not much at all.

As a consequence, as the project grew, I am starting to get issues with the dependencies given that the installation process uses requirement.txt

Thus I wanted to ask if Kedro was meant to be designed as a mono repo or not. If so, is there an example of how this could be done, please? Thanks in advance.

1

There are 1 best solutions below

0
On

So Kedro isn't necessarily opinionated on the question of mono vs multi repo, but the modern way to use kedro via Modular pipelines and Micro-packaging is designed with this sort of pattern in mind.

You can even provide a module specific requirements.txt in your pipeline folder which means when users package/consume your reusable pipelines they won't take the global requirements, but just the pipeline specific ones.

Now if you are at a stage where your different pipelines are using very different requirements that are impossible to compile at a global level, it would be recommended to try and keep the requirements aligned or think about breaking it up into smaller repositories.