boomerang-io / charts

Helm charts for Boomerang Projects
Apache License 2.0
3 stars 5 forks source link

Update eventing properties for Workflow status updates #66

Closed corcoja closed 2 years ago

corcoja commented 2 years ago

Part of boomerang-io/roadmap#326.

Changelog

New

Changed

Removed

tlawrie commented 2 years ago

Hi @corcoja. Firstly, thank you for the eventing changes.

There may need to be some discussion had on all these extra parameters and why they are needed. Have we gone too customized in the design?

  1. Do we really need to allow installers to change the name of the stream?
  2. or choose the storage type by stream?
  3. Why are their consumer settings for the stream, wouldn't that be configured by whatever eventing system is involved.

When I look at systems that provide Event Syncs (like Tekton) or using Azure Event Grid, etc. You don't need to provide / customize all this detail.

Additionally, I think eventing isn't until the 3.10 release. So we may need to hang off on these changes until the 3.9.0 release is out there door.

corcoja commented 2 years ago

Hey @tlawrie, great questions:

  1. Do we really need to allow installers to change the name of the stream?
  2. or choose the storage type by stream?

The thinking behind this is indeed to allow some type of customization. The NATS server is not installed by our charts and must be installed manually. The user that owns the NATS server might already use it for something else, and in order to avoid any kind of conflicts, allow the customization (to a certain degree).

Why are their consumer settings for the stream, wouldn't that be configured by whatever eventing system is involved.

Flow will own 2 streams and 1 consumer:

  1. First stream will store action-type events: trigger, WFE, cancel.
  2. Second stream will store status-type events (the events produced when the status of a Workflow activity changes).

The consumer owned by Flow will be associated to the first stream (for action events), and will be used by flow to consume action-type CE.

A client can create other consumers that he can associate with the second stream (for statuses) to consume updates for Workflow activity status (see diagram below – the consumer with dashed line).

image
corcoja commented 2 years ago

@corcoja Can you also please increase the helm chart version and the flow app version to 3.9.0 ?

Incremented to 3.10.0 as suggested by @tlawrie.