Hello Whiskers, I am working on an integrated IDE & Debugger for OpenWhisk using the ActionLoop runtime, the standalone OpenWhisk and Eclipse Theia. This would be complementary to the existing wskdebug for Javascript and Java, as this works now for Typescript and I plan to add to other actionloop based runtimes.
You can see a demo here: https://www.youtube.com/watch?v=FhtGsm4Vnu4 I am using the standalone Openwhisk and Eclipse Theia, the in-browser vscode-like editor that can be deployed as a docker container. The mechanic is simple: when I deploy an action I pass an additional environment variable __OW_DEBUG_PORT The runtime when it sees this environment variable starts under a debugger. I can then ask to the runtime the parameters to connect to the debugger and I use this to connect to the debugger, as you can see in the demo. I adapted the upcoming typescript runtime to do this, but I plan to do similar changes also for other action loop based runtimes, like go and python. Also I am using a Makefile to start the environment but I am working on a standalone openwhisk-ide launcher. Unless we add the feature “ide" to the wsk cli 🙂, if you like the idea... I have a couple of problems to solve and I am asking for help. The first problem is that I need to invoke an action twice as the first time the debugger does not attach. I guess it is because the image is paused. So I wonder if it is possible to enable an option that does not pause the container while running using the standalone openwhisk. And the second problem is that sometimes I get more than one instance of an action. This happens when I redeploy. I wonder if it is possible to force the Lean Balancer to use only one instance of an action. All of this of course are options only for development purposes but I think in this way OpenWhisk would be the ONLY serverless to include also an IDE with debugger ready to go. No more “serverless actions are hard to debug”. -- Michele Sciabarra mich...@sciabarra.com