2021-02-03 16:17:32 UTC - Pavel Kravchenko: Exactly, invoker host able to 
communicate with the host while docker containers running on invoker host fail 
to communicate. Sorry, meanwhile i moved to KubernetesContainerFactory and the 
issue self-resolved. But i don't think its a dns issue. I tried to communicate 
manually with OW APIHOST using IP and failed.
https://openwhisk-team.slack.com/archives/C3TPCAQG1/p1612369052078400?thread_ts=1611496643.032700&cid=C3TPCAQG1
----
2021-02-03 16:25:58 UTC - Pavel Kravchenko: Can someone point me what am i 
doing wrong?
I have k8s cluster with 3 worker nodes and one master. All 3 worker nodes 
labeled as ow invokers and using KubernetesContainerFactory. For some reason, 
although one of the worker nodes running several OpenWhisk control plane pods, 
it is not used to run action pods.
Not sure if it is important, but i do have multiple invoker and controller 
replicas.
https://openwhisk-team.slack.com/archives/C3TPCAQG1/p1612369558083400
----
2021-02-03 19:02:47 UTC - Yevhen Sentiabov: Hello, I’m new in OW and I thought 
if you could help me to understand some things.

I implemented a custom load balancer which supposed to serve all blocking 
actions. So far, what I see is that the OW message content has a different 
structure depending on the type of action.

Playground action
```{"__ow_method":"post","__ow_body":"{\"code\":\"function main(args) {\\n    
let name = args.name || 'stranger'\\n    let greeting = 'Hello ' + name + 
'!'\\n    console.log(greeting)\\n    return {\\\"body\\\":  
greeting}\\n}\",\"params\":{\"param1\":\"value1\",\"param2\":\"value2\"},\"playgroundId\":\"623917\",\"actionName\":\"sampleJavaScript\",\"runtime\":\"nodejs:default\"}","__ignore_certs":true,"__ow_headers":{"accept":"*/*","host":"localhost:3233","content-type":"text/plain;
 
charset=UTF-8","origin":"<http://localhost:3232>","dnt":"1","referer":"<http://localhost:3232/>","connection":"keep-alive","accept-encoding":"gzip,
 deflate, br"},"__ow_path":""}```
The `__ow_body` contains the action code and params.

And invocation for that action with Json:
```{"param1":"value1","param2":"value2"}```
Web action with `{"param1":"value1","param2":"value2"}` JSON request:
```{"param1":"value1","__ow_method":"post","__ow_headers":{"accept":"*/*","host":"localhost:3233","cache-control":"no-cache","content-type":"application/json","connection":"keep-alive","accept-encoding":"gzip,
 deflate, br"},"__ow_path":"","param2":"value2"}```
Here, params outside of `__ow_body`.

Regular action with `--param param1 value1 --param param2 value2`
```{"param1":"value1","param2":"value2"}```
For some actions, and OW message content contains `__ow` prefixes and data 
inside `__ow_body` for some the content is already a JsonObject.
I have a custom invoker that expects incoming data as regular Json like 
`{"param1":"value1","param2":"value2"}`.

Is there any way how to unify content data regardless of the action type and 
the all params in the same format?
https://openwhisk-team.slack.com/archives/C3TPCAQG1/p1612378967083800
----

Reply via email to