apache / openwhisk-package-cloudant

The Apache OpenWhisk cloudant package enables you to work with a Cloudant/CouchDB database
https://openwhisk.apache.org/
Apache License 2.0
16 stars 32 forks source link

Is it possible to override cloudant actions with default params? #111

Open tleyden opened 7 years ago

tleyden commented 7 years ago

I'm planning to invoke a cloudant/write action as the second action in a two action sequence, and I want to specify the -p overwrite 'true' parameter, but I don't want to modify the first action in the action sequence to add the -p overwrite 'true' parameter to it's output for reasons of loose coupling.

The only way I can see to do that is during the binding phase:

wsk package bind /whisk.system/cloudant myCloudant -p overwrite 'true' -p username MYUSERNAME -p password MYPASSWORD -p host MYCLOUDANTACCOUNT.cloudant.com

which means that all actions in the myCloudant bound package will have always have -p overwrite 'true' set, which isn't what I necessarily want. As a workaround I was thinking of creating two bindings:

and calling myCloudantOverwrite/write when I needed to write with the overwrite parameter set to true.

Or is there a better way to customize the behavior of cloudant/write via default parameters? Is it possible to create a new action based on an existing action, and customize the default parameters?

tleyden commented 7 years ago

As a workaround I was thinking of creating two bindings

This worked .. but still wondering if there's a cleaner way

rabbah commented 7 years ago

See #112 - this is the current suggested workaround.