Dvc.yaml: `deps` & `outs` section accessible from code?

Hm, after browsing the forum a bit more I feel silly, seems like a similar question was just discussed a couple days ago: Parameterlike dependencies .

If I understand this question and the docs correctly, I can specify the paths in the params.yaml, and have the DVC Pipeline track the values of these parameters as deps/outs:

dvc.yaml:

stages:
  preprocess:
    cmd:  python src/preprocess.py
    deps:
      - ${raw_path}
      - src/preprocess
    outs:
      - ${preprocessed_path}

params.yaml

raw_path: "data/raw"
preprocessed_path: "data/preprocessed"

Just tried it in a small project, and is obviously a better solution than my proposed “named dependencies” from above.

Looking forward to the release!

3 Likes