Open carimura opened 6 years ago
Is any work done on this issue? I'm interested in contributing to Fn, so I would be glad to discuss this issue with somebody and implement it (or help in implementing).
@makrusak would love help here... @rdallman and @zootalures have the latest info on the triggers work and may have thoughts on implementation. We could also setup a room in our Slack to discuss -- http://slack.fnproject.io
Hey there are a couple things here:
This would be our first native queue-based trigger integration (which is great) - there are some things to work out there though:
On the technical side, we need to be able to spin up queue runners for each attached stream - inside FN we'd like to be able to run this both as a capability of a single FN server (e.g. fn start) and also likely also as a distributed component (e.g. as a kube POD) in a scaled up environment - this is similar to what we did in the runner abstraction for Fn calls.
We're converging on cloudevents as a lingua franca for functions going forward - for triggers there is a choice to bind directly to incoming cloud events (e.g. a cloudevents webhook that only receives cloud event-type webhooks) or to wrap other input into corresponing cloud events (we are doing this for HTTP trigggers now) - in this case a raw HTTP request becomes a fn-defined cloud event describing the input.
There is a proposed cloudevents NATS binding pattern here: https://github.com/cloudevents/spec/blob/master/nats-transport-binding.md - i'd like to investigate whether this could be supported in line and then build a "arbitrary NATS event" capability on top of this.
👍 For NATS support.
Aligns with our current trigger work, cloudevents support, and cncf participation.
request here: https://github.com/fnproject/fn/issues/446