Hi all! We're getting a bug when using Argo-events...
# ask-metaflow
c
Hi all! We're getting a bug when using Argo-events to trigger a Flow: Specifically, we're trying to pass a list of http endpoints as a parameter to a flow. Everything works fine when calling it from the command line (passing a list of endpoints as a comma separated string), but when we deploy it to argo-workflows with a
@trigger
and publish an
ArgoEvent()
, parameter strings with
&
(ampersands) are received as Unicode
\u0026
, so endpoint apps don't receive the provided parameters. Here is a sample flow to demonstrate the issue. I see that the argo-workflow plugin _compile_sensor adds parameters as
"{{ .Input.body.payload.%s | toJson }}"
, but digging further, the toJson function is a simple wrapper around Go's json.Marshal which escapes
&
(and
< >
) for HTML compatible formatting. Is this the expected behavior? Or is this actually an issue with Argo workflow/events? Any advice is appreciated for insight, solutions or workarounds. Thanks for making such a great tool!
b
Sorry for the long delay getting to this. Yesterdays release includes fixes regarding handling special characters in the payload keys. Testing out fixes regarding handling the encoding in values now.
will be testing out if not escaping HTML characters from the payload has any unexpected consequences, but if you want to take the fix for a spin, you can try https://github.com/Netflix/metaflow/pull/1911