Skip to content

Commit a3a45f0

Browse files
committed
adding test artifacts
Signed-off-by: Ontiomacer <96743995+Ontiomacer@users.noreply.github.com> Signed-off-by: Tejas Tiwari <tt160705@outlook.com>
1 parent 789285d commit a3a45f0

File tree

4 files changed

+124
-2
lines changed

4 files changed

+124
-2
lines changed
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
{
2+
"type": "object",
3+
"properties": {
4+
"host": {
5+
"type": "string",
6+
"title": "Host",
7+
"description": "Elasticsearch host address (e.g., localhost or elasticsearch.example.com)",
8+
"examples": ["localhost", "elasticsearch.example.com"]
9+
},
10+
"port": {
11+
"type": "integer",
12+
"title": "Port",
13+
"description": "Elasticsearch port number",
14+
"default": 9200,
15+
"minimum": 1,
16+
"maximum": 65535
17+
},
18+
"username": {
19+
"type": "string",
20+
"title": "Username",
21+
"description": "Username for Elasticsearch authentication"
22+
},
23+
"password": {
24+
"type": "string",
25+
"title": "Password",
26+
"description": "Password for Elasticsearch authentication",
27+
"format": "password"
28+
},
29+
"api_key": {
30+
"type": "string",
31+
"title": "API Key",
32+
"description": "API key for Elasticsearch authentication (alternative to username/password)",
33+
"format": "password"
34+
},
35+
"cloud_id": {
36+
"type": "string",
37+
"title": "Cloud ID",
38+
"description": "Elasticsearch Cloud ID for cloud-hosted instances"
39+
},
40+
"use_ssl": {
41+
"type": "boolean",
42+
"title": "Use SSL",
43+
"description": "Enable SSL/TLS for secure connection",
44+
"default": false
45+
},
46+
"index": {
47+
"type": "string",
48+
"title": "Index Pattern",
49+
"description": "Elasticsearch index name or pattern (e.g., 'my-index' or 'logs-*')",
50+
"examples": ["my-index", "logs-*", "test-*"]
51+
},
52+
"max_threads": {
53+
"type": "integer",
54+
"title": "Max Threads",
55+
"description": "Maximum number of parallel threads for data sync",
56+
"default": 3,
57+
"minimum": 1,
58+
"maximum": 100
59+
},
60+
"retry_count": {
61+
"type": "integer",
62+
"title": "Retry Count",
63+
"description": "Number of retry attempts for failed operations",
64+
"default": 2,
65+
"minimum": 0,
66+
"maximum": 10
67+
}
68+
},
69+
"required": ["host", "port", "index"],
70+
"oneOf": [
71+
{
72+
"required": ["username", "password"]
73+
},
74+
{
75+
"required": ["api_key"]
76+
},
77+
{
78+
"required": ["cloud_id"]
79+
}
80+
]
81+
}
Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,14 @@
1-
{"type":"STREAM","streams":[{"stream":"test-logs","namespace":"elasticsearch","sync_mode":"","state":{"chunks":[],"timestamp":"2026-01-14T10:45:00Z"}}]}
1+
{
2+
"type": "STREAM",
3+
"version": 1,
4+
"streams": [
5+
{
6+
"stream": "test-incremental-timestamp",
7+
"namespace": "elasticsearch",
8+
"sync_mode": "incremental",
9+
"state": {
10+
"timestamp_field": 1769026162494
11+
}
12+
}
13+
]
14+
}

drivers/elasticsearch/resources/streams.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

utils/spec/uischema.go

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,15 @@ var uiSchemaMap = map[string]string{
1313
"parquet": ParquetUISchema,
1414
"iceberg": IcebergUISchema,
1515
"kafka": KafkaUISchema,
16+
"mongodb": MongoDBUISchema,
17+
"postgres": PostgresUISchema,
18+
"mysql": MySQLUISchema,
19+
"oracle": OracleUISchema,
20+
"s3": S3UISchema,
21+
"parquet": ParquetUISchema,
22+
"iceberg": IcebergUISchema,
23+
"kafka": KafkaUISchema,
24+
"elasticsearch": ElasticsearchUISchema,
1625
}
1726

1827
const MongoDBUISchema = `{
@@ -237,6 +246,25 @@ const KafkaUISchema = `{
237246
}
238247
}`
239248

249+
const ElasticsearchUISchema = `{
250+
"ui:grid": [
251+
{ "host": 12, "port": 12 },
252+
{ "username": 12, "password": 12 },
253+
{ "api_key": 12, "cloud_id": 12 },
254+
{ "use_ssl": 12, "index": 12 },
255+
{ "max_threads": 12, "retry_count": 12 }
256+
],
257+
"use_ssl": {
258+
"ui:widget": "boolean"
259+
},
260+
"password": {
261+
"ui:widget": "password"
262+
},
263+
"api_key": {
264+
"ui:widget": "password"
265+
}
266+
}`
267+
240268
const ParquetUISchema = `{
241269
"type": {
242270
"ui:widget": "hidden"

0 commit comments

Comments
 (0)