25
25
import java .util .Set ;
26
26
27
27
import static org .elasticsearch .cluster .metadata .DataStreamTestHelper .backingIndexEqualTo ;
28
- import static org .hamcrest .Matchers .aMapWithSize ;
29
28
import static org .hamcrest .Matchers .containsInAnyOrder ;
30
29
import static org .hamcrest .Matchers .containsString ;
31
30
import static org .hamcrest .Matchers .empty ;
@@ -54,6 +53,7 @@ public class TsdbDataStreamRestIT extends DisabledSecurityDataStreamTestCase {
54
53
"number_of_replicas": 1,
55
54
"number_of_shards": 2,
56
55
"mode": "time_series"
56
+ SOURCEMODE
57
57
}
58
58
},
59
59
"mappings":{
@@ -201,15 +201,35 @@ public class TsdbDataStreamRestIT extends DisabledSecurityDataStreamTestCase {
201
201
{"@timestamp": "$now", "metricset": "pod", "k8s": {"pod": {"name": "elephant", "uid":"df3145b3-0563-4d3b-a0f7-897eb2876eb4", "ip": "10.10.55.3", "network": {"tx": 1434595272, "rx": 530605511}}}}
202
202
""" ;
203
203
204
+ private static String getTemplate () {
205
+ return TEMPLATE .replace ("SOURCEMODE" , randomFrom ("" , """
206
+ , "mapping": { "source": { "mode": "stored" } }""" , """
207
+ , "mapping": { "source": { "mode": "synthetic" } }""" ));
208
+ }
209
+
210
+ private static boolean trialStarted = false ;
211
+
204
212
@ Before
205
213
public void setup () throws IOException {
214
+ if (trialStarted == false ) {
215
+ // Start trial to support synthetic source.
216
+ Request startTrial = new Request ("POST" , "/_license/start_trial" );
217
+ startTrial .addParameter ("acknowledge" , "true" );
218
+ try {
219
+ client ().performRequest (startTrial );
220
+ } catch (Exception e ) {
221
+ // Ignore failures, the API is not present in Serverless.
222
+ }
223
+ trialStarted = true ;
224
+ }
225
+
206
226
// Add component template:
207
227
var request = new Request ("POST" , "/_component_template/custom_template" );
208
228
request .setJsonEntity (COMPONENT_TEMPLATE );
209
229
assertOK (client ().performRequest (request ));
210
230
// Add composable index template
211
231
request = new Request ("POST" , "/_index_template/1" );
212
- request .setJsonEntity (TEMPLATE );
232
+ request .setJsonEntity (getTemplate () );
213
233
assertOK (client ().performRequest (request ));
214
234
}
215
235
@@ -220,7 +240,7 @@ public void testTsdbDataStreams() throws Exception {
220
240
public void testTsdbDataStreamsNanos () throws Exception {
221
241
// Overwrite template to use date_nanos field type:
222
242
var putComposableIndexTemplateRequest = new Request ("POST" , "/_index_template/1" );
223
- putComposableIndexTemplateRequest .setJsonEntity (TEMPLATE .replace ("date" , "date_nanos" ));
243
+ putComposableIndexTemplateRequest .setJsonEntity (getTemplate () .replace ("date" , "date_nanos" ));
224
244
assertOK (client ().performRequest (putComposableIndexTemplateRequest ));
225
245
226
246
assertTsdbDataStream ();
@@ -407,7 +427,6 @@ public void testSimulateTsdbDataStreamTemplate() throws Exception {
407
427
var response = client ().performRequest (simulateIndexTemplateRequest );
408
428
assertOK (response );
409
429
var responseBody = entityAsMap (response );
410
- assertThat (ObjectPath .evaluate (responseBody , "template.settings.index" ), aMapWithSize (6 ));
411
430
assertThat (ObjectPath .evaluate (responseBody , "template.settings.index.number_of_shards" ), equalTo ("2" ));
412
431
assertThat (ObjectPath .evaluate (responseBody , "template.settings.index.number_of_replicas" ), equalTo ("1" ));
413
432
assertThat (ObjectPath .evaluate (responseBody , "template.settings.index.mode" ), equalTo ("time_series" ));
@@ -493,7 +512,7 @@ public void testMigrateRegularDataStreamToTsdbDataStream() throws Exception {
493
512
494
513
// Update template
495
514
putComposableIndexTemplateRequest = new Request ("POST" , "/_index_template/1" );
496
- putComposableIndexTemplateRequest .setJsonEntity (TEMPLATE );
515
+ putComposableIndexTemplateRequest .setJsonEntity (getTemplate () );
497
516
assertOK (client ().performRequest (putComposableIndexTemplateRequest ));
498
517
499
518
var rolloverRequest = new Request ("POST" , "/k8s/_rollover" );
0 commit comments