adorable-truck-38791
08/22/2025, 2:30 PMFlowSpec
subclass such that one of the steps calls whatever random function gets thrown into the mix
2. Managing the underlying packages backing the different runs
I might be way over-complicating this, so I would appreciate any thoughts or pointers! I'm happy to dig into the code and work through some of the internal APIs for this. I do realize there are security concerns with executing arbitrary functions in this manner, but I think that is manageable in the environment we work inhundreds-rainbow-67050
08/22/2025, 3:13 PMadorable-truck-38791
08/22/2025, 3:14 PMadorable-truck-38791
08/22/2025, 3:15 PMhundreds-rainbow-67050
08/22/2025, 6:06 PMadorable-truck-38791
08/23/2025, 8:00 AMrequirements.txt
and their simple python function file(s)
a. The goal here is to create the absolute dumbest interface / code layout for easy adoption
3. run command with a pointer to the function they want to test (validate it gets the right result in the metaflow environment)
4. run command with a pointer to the function they want to mark as validated (i.e. tested as "good" now)
At a basic level, I'm trying to decouple the package management from the flow execution, then I'm trying to keep my own metadata associated with the different package versions
I wasn't sure exactly the best way to get the packaging of the functions correct. I guess locally, I could just create a temp directory, copy the generic FlowSpec
subclass there and add a symlink to their simple function directory, but I think that doesn't quite solve for the remote case where we might be using Argo.
I'm definitely a bit naive around general python packaging best practices / methods, so would you have any ideas about the options there? i.e. what would be the most minimal way to make a local python function available in a remote environment?adorable-truck-38791
08/23/2025, 8:00 AMadorable-truck-38791
08/27/2025, 10:49 AMhundreds-rainbow-67050
08/27/2025, 8:38 PM@pypi(
python="3.11.5",
packages={
"/my/directory/path/mylibrary": "",
},
)