Search code examples
command-line-argumentsnetflix-metaflow

Setting metaflow decorator using command line parameter


I have a metaflow flowspec with a decorator @some_decorator(parameter="something"). Is it possible to set things up so that I can set the parameter to the decorator via a command line parameter when I run the flow?

I tried a couple of approaches, but reached dead ends.

  • metaflow.Parameter won't work because the parameter only becomes available once we've entered the flow, whereas I need when the decorator is called.
  • I tried grabbing the parameter with argparse. But it turns out the flow file gets executed several times by metaflow, with different arguments, so this did not work.

Solution

  • Yes, you can rely on config support within Metaflow to pass these values from the command line. Here are the official docs for this - https://docs.metaflow.org/metaflow/configuring-flows/basic-configuration#defining-config-files