fission-workflows icon indicating copy to clipboard operation
fission-workflows copied to clipboard

Allow users to dynamically add internal functions

Open erwinvaneyk opened this issue 7 years ago • 2 comments

Currently internal functions (like if, noop and sleep) are hardcoded into the workflow engine, though they are built to be extensible. A user should be able to add internal functions during runtime, without the need to rebuild/redeploy the workflow engine. Probably requires a separate endpoint that allows loading (http or shared volume) of Golang plugins.

erwinvaneyk avatar Sep 13 '17 01:09 erwinvaneyk

You can use portions of Fission for this. The storage service can be used for actually dealing with bits, and the builder can be used for compiling the plugins with the right options and versions.

In other words we could have an "workflows internal functions" fission environment, that has a builder but no runtime (since the execution of those functions would be outside the scope of fission itself). Then the workflows API for adding plugins can accept a fission function that uses this environment.

soamvasani avatar Sep 29 '17 18:09 soamvasani

Really like that idea @soamvasani. That would avoid having to deal with the storage of internal functions in the workflow engine

erwinvaneyk avatar Oct 01 '17 21:10 erwinvaneyk