feat: implement ConnectorTemplate and Connector#59
feat: implement ConnectorTemplate and Connector#59g1eny0ung merged 31 commits intohstreamdb:mainfrom g1eny0ung:feat/impl-connector
ConnectorTemplate and Connector#59Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #59 +/- ##
==========================================
- Coverage 83.90% 82.73% -1.18%
==========================================
Files 31 38 +7
Lines 2057 2398 +341
==========================================
+ Hits 1726 1984 +258
- Misses 237 302 +65
- Partials 94 112 +18
☔ View full report in Codecov by Sentry. |
Set owners instead of manually control finalizers
Rory-Z
left a comment
There was a problem hiding this comment.
I noticed that the APIVersion is v1beta1, and I think we should also synchronize the APIVersion of other CRDs to v1beta1 in another PR.
Okay for me. |
|
Since sink-es has recently provided a metrics interface for Prometheus to use. I've to make the pod container ports to be customized. Prometheus operator will also rely on annotations to discover pods, so I decided to let users define these annotations in |
Close #57. The following is an informal RFC:
This RR creates two kinds to support deploying hstream io connectors into clusters. One is
ConnectorTemplate, and another isConnector(Hereafter referred to asCTandC).CTis used to store shared configurations, andCis used to deploy connectors by streams. Typically, you should first create aCTand then create aCthat references theCTby name.After creating a
CT, aConfigMapis automatically generated to store the shared configuration. If aCreferences thisCT(via thetemplateNamefield), it will clone aConfigMapand apply some specific parameters (if have). After the clonedConfigMapis created, theCwill create aDeploymentto deploy the connector into the cluster.The overall process is straightforward. Currently, you can think of this PR as an MVP (Minimum viable product), so only the
sink-elasticsearchconnector is supported for now.Examples: