Like #3549 say, "A run of a pipeline is like a function call". Based on that analogy, we can't right now call a function from another function: f(g(x)) doesn't make any sense for the current dvc model. As discussed in #331, it would allow to use very flexible workflows by allowing to dynamically created pipelines.
Some potential applications:
A possible interface could be:
dvc run could specify a yaml file to use, instead of dvc.yml
- We allow that file to the output of another pipeline step
- Then
dvc run -n "create_pipe" -o generated_pipe.yml generate_pipe.sh would create the generated_pipe.yml file, and dvc repro -c generated_pipe.yml would execute all the steps dynamically defined.
Like #3549 say, "A run of a pipeline is like a function call". Based on that analogy, we can't right now call a function from another function:
f(g(x))doesn't make any sense for the current dvc model. As discussed in #331, it would allow to use very flexible workflows by allowing to dynamically created pipelines.Some potential applications:
A possible interface could be:
dvc runcould specify a yaml file to use, instead ofdvc.ymldvc run -n "create_pipe" -o generated_pipe.yml generate_pipe.shwould create the generated_pipe.yml file, anddvc repro -c generated_pipe.ymlwould execute all the steps dynamically defined.