0

Apache OpenWhisk has the concept of Action Sequence. Where if we write, for example, functions f1 and f2 we can write a command which shall compose the functions in such a way that the output of f1 shall be piped to f2.

For example, we have the first action asfunction1 :

function main(params) {

    return {
        string: params.text
    };

}

And take the second action, function2 as follows:

function main(params){
    
    return{
        string: "Hello,"+params.string   
    };
}

Then we compose a new action as :

$ wsk action create fun2_o_fun1 --sequence function1,function2

And we invoke the new action as usual:

$ wsk action invoke fun2_o_fun1 -b -r -p text "Abhishek"

And we get the output as follows:

{ string: 'Hello,Abhishek' }

We note that here in the case of OpenFaaS the output of one function is automatically fed to the next function in the sequence when we create a new action with the --sequence directive.

But here, in the case of OpenFaaS, we use a naive Linux-based utility to pipe the outputs of one function to the input of another. (This is done on the client side). But we try to create a wrapper that achieves the same for the server side.

Is this the only equivalent?

Abhishek Ghosh
  • 597
  • 7
  • 18

0 Answers0