This is a follow-up to a Slack conversation with @dragos.dascalita and @csantanapr. As I've been struggling to stand up the API Gateway for OpenWhisk, it occurred to me that I would actually prefer to use a different GW entirely. In my case, Traefik fits nicely in one spot, and Istio integration would be very handy in another.
I'm happy to implement both, but the current state makes it hard to contribute. A couple options and opinions came out of our discussion that could use more input; 1. Splitting the routemgt stuff out of incubator-openwhisk either into openwhisk-apigateway or the cli repo. My preference is a dedicated repo, as it makes more sense from a new users' POV -- I had a rough time getting things to work and it was unclear in the current structure. 2. We can either ship APIGW+routemgt combos for each implementation, or we can potentially make the api commands in wsk a plugin, shipping an APIGW + a wsk cli plugin to match. My personal opinion is this; if the APIGW is optional, the routemgt actions must be as well -- one is pointless without the other. They're also tightly coupled to the specific implementation. As such, I would suggest that both pieces move to their own repo, with a folder for each implementation, as well as deployment docs for all things APIGW in the same place. Thoughts/comments welcome! Thanks, Henry
