spring-boot/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-cache/build.gradle
Stephane Nicoll abe43b2e83 Upgrade to Couchbase SDK v3
This commit upgrades to the Couchbase SDK v3 which brings the following
breaking changes:

* Bootstrap hosts have been replaced by a connection string and the
authentication is now mandatory.
* A `Bucket` is no longer auto-configured. The
`spring.couchbase.bucket.*` properties have been removed
* `ClusterInfo` no longer exists and has been replaced by a dedicated
API on `Cluster`.
* `CouchbaseEnvironment` no longer exist in favour of
`ClusterEnvironment`, the customizer has been renamed accordingly.
* The bootstrap-related properties have been removed. Users requiring
custom ports should supply the seed nodes and initialize a Cluster
themselves.
* The endpoints-related configuration has been consolidated in a
single IO configuration.

The Spring Data Couchbase provides an integration with the new SDK. This
leads to the following changes:

* A convenient `CouchbaseClientFactory` is auto-configured.
* Repositories are configured against a bucket and a scope. Those can
be set via configuration in `spring.data.couchbase.*`.
* The default consistency property has been removed in favour of a more
flexible annotation on the repository query methods instead. You can now
specify different query consistency on a per method basis.
* The `CacheManager` implementation is provided, as do other stores for
consistency so a dependency on `couchbase-spring-cache` is no longer
required.

See gh-19893

Co-authored-by: Michael Nitschinger <michael@nitschinger.at>
2020-03-17 17:00:09 +01:00

45 lines
1.2 KiB
Groovy

plugins {
id "java"
id "org.springframework.boot.conventions"
}
description = "Spring Boot cache smoke test"
def caches = [
"caffeine": [
"com.github.ben-manes.caffeine:caffeine"
],
"couchbase": [
project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-couchbase")
],
"ehcache": [
"javax.cache:cache-api",
"org.ehcache:ehcache"
],
"ehcache2": [
"net.sf.ehcache:ehcache"
],
"hazelcast": [
"com.hazelcast:hazelcast",
"com.hazelcast:hazelcast-spring"
],
"infinispan": [
"org.infinispan:infinispan-jcache",
"org.infinispan:infinispan-spring5-embedded"
],
"redis": [
project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-redis")
]
]
dependencies {
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-actuator"))
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-cache"))
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web"))
testImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test"))
if (project.hasProperty("cache")) {
caches[project.getProperty("cache")].each { runtimeOnly it }
}
}