Florian Giroud
10/03/2022, 8:15 PMNicolas Felipe
10/03/2022, 8:24 PMNate
10/03/2022, 8:41 PMsys.argv
like:
import sys
from prefect import flow, get_run_logger, task
@task
def double(x: int) -> int:
return x * 2
@flow
def my_flow(my_int: int):
logger = get_run_logger()
result = double(my_int)
<http://logger.info|logger.info>(f"Result: {result}")
if __name__ == '__main__':
my_int_arg = sys.argv[-1]
my_flow(my_int=my_int_arg)
❯ python clitriggeredflow.py 4
15:39:02.542 | INFO | prefect.engine - Created flow run 'uppish-dormouse' for flow 'my-flow'
15:39:03.568 | INFO | Flow run 'uppish-dormouse' - Created task run 'double-718afc09-0' for task 'double'
15:39:03.570 | INFO | Flow run 'uppish-dormouse' - Executing 'double-718afc09-0' immediately...
15:39:03.900 | INFO | Task run 'double-718afc09-0' - Finished in state Completed()
15:39:03.900 | INFO | Flow run 'uppish-dormouse' - Result: 8
15:39:03.994 | INFO | Flow run 'uppish-dormouse' - Finished in state Completed('All states completed.')
Florian Giroud
10/03/2022, 8:47 PM--foo=bar --foo
Don’t want to seems like asking for too much, but it’s a serious drawback if developers are not able to run their scripts locally with proper input parametersNate
10/03/2022, 8:50 PMmerlin
10/03/2022, 9:57 PM