Feature: Connector Actions
- Dominant language
- Go
- Stars
- 610
- Forks
- 63
- Avg merge
- 12h 28m
- Merged PRs (30d)
- 57
Description
### Feature description
It would be nice if connectors could expose custom actions that can be manually triggered through the API while the connector is running. The use case would be to allow users to trigger ad-hoc snapshots (like [Debezium](https://debezium.io/documentation/reference/stable/connectors/mysql.html#mysql-ad-hoc-snapshots)), log compaction, offset resets or similar actions.
~We should consider changing the design of [connector lifecycle events](https://github.com/ConduitIO/conduit/issues/810) to something similar to [option 2](https://github.com/ConduitIO/conduit/blob/main/docs/design-documents/20230228-connector-lifecycle-methods.md#option-2---single-method), where the connector protocol would expose a single method that can be called to deliver an event and arguments. Conduit could use it to trigger lifecycle events, while the user could use it to manually trigger actions. This approach requires two more things:~
- ~A field that tells us who/what triggered the event (e.g. conduit vs user/API) for debugging purposes.~
- ~We need a way for the connector to expose a list of events it accepts and the parameters that each event expects to receive (we can piggyback on the specification parameter types).~
Update: We decided not to mix connector lifecycle events with connector actions. We will tackle this issue separately.
Contributor guide
Assessment
This issue has not been assessed yet.