This is an automated email from the ASF dual-hosted git repository.

pjfanning pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pekko-connectors.git


The following commit(s) were added to refs/heads/main by this push:
     new 9dfe80a06 Couchbase3: test against couchbase community-8.0.2 (#1888)
9dfe80a06 is described below

commit 9dfe80a06e835affa64129e368b927b2ded50349
Author: PJ Fanning <[email protected]>
AuthorDate: Sun Sep 6 18:58:50 2026 +0100

    Couchbase3: test against couchbase community-8.0.2 (#1888)
    
    * Couchbase3: test against couchbase community-8.0.2
    
    Motivation:
    Couchbase Server 8.0 is the current community line; the couchbase module's
    EOL SDK 2.x stays on 7.6, while couchbase3 (SDK 3.x) moves to Server 8.
    
    Modification:
    Add separate couchbase3/couchbase3_prep docker-compose services on
    couchbase:community-8.0.2 (couchstore storage backend, replica 0 - both
    required on Server 8 community) and point the couchbase3 CI job at them.
    Give CouchbaseTestSourceSpec IntegrationPatience for the slower KV
    sampling scan on Server 8.
    
    Result:
    couchbase3 tests run against Couchbase Server community 8.0; the legacy
    couchbase module keeps its 7.6 coverage.
    
    Tests:
    - sbt couchbase3/test passes 14/14 locally against couchbase3_prep
    
    References:
    None - test docker image maintenance
    
    * rename couchbase docker-compose services to couchbase7 and couchbase8
---
 .github/workflows/check-build-test.yml             |  4 +-
 .../docs/scaladsl/CouchbaseTestSourceSpec.scala    |  3 +-
 docker-compose.yml                                 | 55 +++++++++++++++++++---
 3 files changed, 52 insertions(+), 10 deletions(-)

diff --git a/.github/workflows/check-build-test.yml 
b/.github/workflows/check-build-test.yml
index 3dc373c60..f40f80d16 100644
--- a/.github/workflows/check-build-test.yml
+++ b/.github/workflows/check-build-test.yml
@@ -105,8 +105,8 @@ jobs:
           - { connector: aws-event-bridge,             pre_cmd: 'docker 
compose up -d amazoneventbridge' }
           - { connector: azure-storage-queue }
           - { connector: cassandra,                    pre_cmd: 'docker 
compose up -d cassandra' }
-          - { connector: couchbase,                    pre_cmd: 'docker 
compose up -d couchbase_prep' }
-          - { connector: couchbase3,                   pre_cmd: 'docker 
compose up -d couchbase_prep' }
+          - { connector: couchbase,                    pre_cmd: 'docker 
compose up -d couchbase7_prep' }
+          - { connector: couchbase3,                   pre_cmd: 'docker 
compose up -d couchbase8_prep' }
           - { connector: csv }
           - { connector: dynamodb,                     pre_cmd: 'docker 
compose up -d dynamodb' }
           - { connector: elasticsearch,                pre_cmd: 'docker 
compose up -d elasticsearch6 elasticsearch7 opensearch1' }
diff --git 
a/couchbase3/src/test/scala/docs/scaladsl/CouchbaseTestSourceSpec.scala 
b/couchbase3/src/test/scala/docs/scaladsl/CouchbaseTestSourceSpec.scala
index 7697a1540..0fc9d191b 100644
--- a/couchbase3/src/test/scala/docs/scaladsl/CouchbaseTestSourceSpec.scala
+++ b/couchbase3/src/test/scala/docs/scaladsl/CouchbaseTestSourceSpec.scala
@@ -26,7 +26,7 @@ import 
org.apache.pekko.stream.connectors.testkit.scaladsl.LogCapturing
 import org.apache.pekko.stream.scaladsl.Sink
 import 
org.apache.pekko.stream.testkit.scaladsl.StreamTestKit.assertAllStagesStopped
 import org.scalatest.{ BeforeAndAfterAll, BeforeAndAfterEach, Inspectors }
-import org.scalatest.concurrent.ScalaFutures
+import org.scalatest.concurrent.{ IntegrationPatience, ScalaFutures }
 import org.scalatest.matchers.should.Matchers
 import org.scalatest.wordspec.AnyWordSpec
 
@@ -36,6 +36,7 @@ class CouchbaseTestSourceSpec extends AnyWordSpec
     with BeforeAndAfterEach
     with Matchers
     with ScalaFutures
+    with IntegrationPatience
     with Inspectors
     with LogCapturing {
 
diff --git a/docker-compose.yml b/docker-compose.yml
index 487da7eaf..c428cc9da 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -206,27 +206,27 @@ services:
       - 9090:9090
       - 12345:12345
     command: standalone
-  couchbase:
+  couchbase7:
     image: couchbase:community-7.6.1
     ports:
       - "8091-8096:8091-8096"
       - "11210-11211:11210-11211"
-  couchbase_prep:
+  couchbase7_prep:
     image: couchbase:community-7.6.1
     links:
-      - "couchbase"
+      - "couchbase7"
     entrypoint: ""
     # when we drop couchbase2, we don't need to create bucket pekkoquery
     command: >
       bash -c 
       "echo 'waiting until couchbase is up'
       
-      until `curl --output /dev/null --silent --head --fail 
http://couchbase:8091`; do
+      until `curl --output /dev/null --silent --head --fail 
http://couchbase7:8091`; do
             printf '.'
             sleep 2
       done
       
-      couchbase-cli cluster-init -c couchbase
+      couchbase-cli cluster-init -c couchbase7
       --cluster-username Administrator
       --cluster-password password
       --cluster-ramsize 300
@@ -235,7 +235,7 @@ services:
       --cluster-query-ramsize 256
       --services data,index,query,fts
       
-      couchbase-cli bucket-create -c couchbase
+      couchbase-cli bucket-create -c couchbase7
       -u Administrator -p password
       --bucket pekko
       --bucket-type couchbase
@@ -243,7 +243,7 @@ services:
       --bucket-replica 1
       --wait
       
-      couchbase-cli bucket-create -c couchbase
+      couchbase-cli bucket-create -c couchbase7
       -u Administrator -p password
       --bucket pekkoquery
       --bucket-type couchbase
@@ -251,6 +251,47 @@ services:
       --bucket-replica 1
       --wait
       
+      sleep 2 # just wait a tiny bit more after creating the bucket
+      "
+  # couchbase8 shares host ports with the couchbase7 service above (the SDK
+  # requires the standard ports), so only one of the two can run at a time
+  couchbase8:
+    image: couchbase:community-8.0.2
+    ports:
+      - "8091-8096:8091-8096"
+      - "11210-11211:11210-11211"
+  couchbase8_prep:
+    image: couchbase:community-8.0.2
+    links:
+      - "couchbase8"
+    entrypoint: ""
+    command: >
+      bash -c
+      "echo 'waiting until couchbase is up'
+
+      until `curl --output /dev/null --silent --head --fail 
http://couchbase8:8091`; do
+            printf '.'
+            sleep 2
+      done
+
+      couchbase-cli cluster-init -c couchbase8
+      --cluster-username Administrator
+      --cluster-password password
+      --cluster-ramsize 300
+      --cluster-index-ramsize 256
+      --cluster-fts-ramsize 256
+      --cluster-query-ramsize 256
+      --services data,index,query,fts
+
+      couchbase-cli bucket-create -c couchbase8
+      -u Administrator -p password
+      --bucket pekko
+      --bucket-type couchbase
+      --storage-backend couchstore
+      --bucket-ramsize 120
+      --bucket-replica 0
+      --wait
+
       sleep 2 # just wait a tiny bit more after creating the bucket
       "
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to