Skip to content

Commit 7fed8b0

Browse files
committed
Use @ssl and @Serviceconnection for Elasticseach 8
1 parent d43f8e3 commit 7fed8b0

File tree

1 file changed

+5
-34
lines changed

1 file changed

+5
-34
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,11 @@
11
package com.example.springbootelasticsearch;
22

3-
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
4-
import org.elasticsearch.client.RestClientBuilder;
53
import org.junit.jupiter.api.Test;
64
import org.springframework.beans.factory.annotation.Autowired;
7-
import org.springframework.boot.autoconfigure.elasticsearch.RestClientBuilderCustomizer;
85
import org.springframework.boot.test.autoconfigure.data.elasticsearch.DataElasticsearchTest;
9-
import org.springframework.boot.test.context.TestConfiguration;
10-
import org.springframework.context.annotation.Bean;
6+
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
7+
import org.springframework.boot.testcontainers.service.connection.Ssl;
118
import org.springframework.data.elasticsearch.client.elc.ElasticsearchTemplate;
12-
import org.springframework.test.context.DynamicPropertyRegistry;
13-
import org.springframework.test.context.DynamicPropertySource;
149
import org.testcontainers.elasticsearch.ElasticsearchContainer;
1510
import org.testcontainers.junit.jupiter.Container;
1611
import org.testcontainers.junit.jupiter.Testcontainers;
@@ -19,20 +14,16 @@
1914

2015
import static org.assertj.core.api.Assertions.assertThat;
2116

22-
@DataElasticsearchTest(
23-
properties = { "spring.elasticsearch.username=elastic", "spring.elasticsearch.password=changeme" })
17+
@DataElasticsearchTest
2418
@Testcontainers
2519
class BookRepositoryElasticsearch8Tests {
2620

2721
@Container
22+
@ServiceConnection
23+
@Ssl
2824
private static ElasticsearchContainer elasticsearch = new ElasticsearchContainer(
2925
"docker.elastic.co/elasticsearch/elasticsearch:8.7.1");
3026

31-
@DynamicPropertySource
32-
static void properties(DynamicPropertyRegistry registry) {
33-
registry.add("spring.elasticsearch.uris", () -> "https://" + elasticsearch.getHttpHostAddress());
34-
}
35-
3627
@Autowired
3728
private BookRepository bookRepository;
3829

@@ -47,24 +38,4 @@ void contextLoads() {
4738
assertThat(this.elasticsearchTemplate.get(id, Book.class)).extracting("title").isEqualTo("Spring Boot Testing");
4839
}
4940

50-
@TestConfiguration
51-
static class SSL {
52-
53-
@Bean
54-
public RestClientBuilderCustomizer customizer() {
55-
return new RestClientBuilderCustomizer() {
56-
@Override
57-
public void customize(RestClientBuilder builder) {
58-
59-
}
60-
61-
@Override
62-
public void customize(HttpAsyncClientBuilder builder) {
63-
builder.setSSLContext(elasticsearch.createSslContextFromCa());
64-
}
65-
};
66-
}
67-
68-
}
69-
7041
}

0 commit comments

Comments
 (0)