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-projection.git


The following commit(s) were added to refs/heads/main by this push:
     new 0ff4440  test with yugabyte (#491)
0ff4440 is described below

commit 0ff44405b920e0b36a5088f385d0d52a6cf45eb4
Author: PJ Fanning <[email protected]>
AuthorDate: Sat May 23 17:49:59 2026 +0100

    test with yugabyte (#491)
    
    * test with yugabyte
    
    * missing file
    
    * Update integration-tests-r2dbc.yml
    
    * only run for this repo
---
 .github/workflows/integration-tests-cassandra.yml  |  1 +
 .github/workflows/integration-tests-grpc.yml       |  1 +
 .github/workflows/integration-tests-jdbc.yml       |  1 +
 .github/workflows/integration-tests-kafka.yml      |  1 +
 .github/workflows/integration-tests-r2dbc.yml      | 62 ++++++++++++++++++++--
 .github/workflows/integration-tests-slick.yml      |  1 +
 .../docker-compose-postgres.yml                    |  0
 docker-files/docker-compose-yugabyte.yml           | 46 ++++++++++++++++
 8 files changed, 109 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/integration-tests-cassandra.yml 
b/.github/workflows/integration-tests-cassandra.yml
index 3343263..453268d 100644
--- a/.github/workflows/integration-tests-cassandra.yml
+++ b/.github/workflows/integration-tests-cassandra.yml
@@ -19,6 +19,7 @@ jobs:
   test:
     name: Build and Test Integration for Cassandra
     runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
     strategy:
       fail-fast: false
       matrix:
diff --git a/.github/workflows/integration-tests-grpc.yml 
b/.github/workflows/integration-tests-grpc.yml
index 4b26748..7561879 100644
--- a/.github/workflows/integration-tests-grpc.yml
+++ b/.github/workflows/integration-tests-grpc.yml
@@ -22,6 +22,7 @@ jobs:
   test:
     name: Build and Test Integration for gRPC
     runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
     strategy:
       fail-fast: false
       matrix:
diff --git a/.github/workflows/integration-tests-jdbc.yml 
b/.github/workflows/integration-tests-jdbc.yml
index 69e1863..c4b2ff8 100644
--- a/.github/workflows/integration-tests-jdbc.yml
+++ b/.github/workflows/integration-tests-jdbc.yml
@@ -19,6 +19,7 @@ jobs:
   test:
     name: Build and Test Integration for JDBC
     runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
     strategy:
       fail-fast: false
       matrix:
diff --git a/.github/workflows/integration-tests-kafka.yml 
b/.github/workflows/integration-tests-kafka.yml
index 061773f..10029ae 100644
--- a/.github/workflows/integration-tests-kafka.yml
+++ b/.github/workflows/integration-tests-kafka.yml
@@ -19,6 +19,7 @@ jobs:
   test:
     name: Build and Test Integration for Kafka
     runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
     strategy:
       fail-fast: false
       matrix:
diff --git a/.github/workflows/integration-tests-r2dbc.yml 
b/.github/workflows/integration-tests-r2dbc.yml
index 5d98546..8b0ead5 100644
--- a/.github/workflows/integration-tests-r2dbc.yml
+++ b/.github/workflows/integration-tests-r2dbc.yml
@@ -19,9 +19,10 @@ permissions:
   contents: read
 
 jobs:
-  test:
-    name: Build and Test Integration for R2DBC
+  postgres-test:
+    name: Build and Test Integration for R2DBC with PostgreSQL
     runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
     strategy:
       fail-fast: false
       matrix:
@@ -53,9 +54,9 @@ jobs:
       - name: Install sbt
         uses: sbt/setup-sbt@508b753e53cb6095967669e0911487d2b9bc9f41 # v1.1.22
 
-      - name: Start DB
+      - name: Start PostgreSQL DB
         run: |-
-          docker compose -f docker/docker-compose-postgres.yml up -d
+          docker compose -f docker-files/docker-compose-postgres.yml up -d
           # TODO: could we poll the port instead of sleep?
           sleep 10
           docker exec -i docker-postgres-db-1 psql -U postgres -t < 
r2dbc-int-test/ddl-scripts/create_tables_postgres.sql
@@ -70,3 +71,56 @@ jobs:
       - name: Print logs on failure
         if: ${{ failure() }}
         run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \;
+
+  yugabyte-test:
+    name: Build and Test Integration for R2DBC with YugabyteDB
+    runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
+    strategy:
+      fail-fast: false
+      matrix:
+        include:
+          - { java-version: 17, scala-version: 2.13,  sbt-opts: '' }
+
+    steps:
+      - name: Checkout
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          fetch-depth: 0
+          fetch-tags: true
+
+      - name: Checkout GitHub merge
+        if: github.event.pull_request
+        run: |-
+          git fetch origin pull/${{ github.event.pull_request.number 
}}/merge:scratch
+          git checkout scratch
+
+      - name: Cache Coursier cache
+        uses: coursier/cache-action@90c37294538be80a558fd665531fcdc2b467b475 # 
v8.1.0
+
+      - name: Setup JDK ${{ matrix.java-version }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: ${{ matrix.java-version }}
+          distribution: temurin
+
+      - name: Install sbt
+        uses: sbt/setup-sbt@508b753e53cb6095967669e0911487d2b9bc9f41 # v1.1.22
+
+      - name: Start YugabyteDB
+        run: |-
+          docker compose -f docker-files/docker-compose-yugabyte.yml up -d
+          # TODO: could we poll the port instead of sleep?
+          sleep 10
+          docker exec -i yb-tserver-n1 /home/yugabyte/bin/ysqlsh -h 
yb-tserver-n1 -t < r2dbc-int-test/ddl-scripts/create_tables_yugabyte.sql
+          docker exec -i yb-tserver-n1 /home/yugabyte/bin/ysqlsh -h 
yb-tserver-n1 -t -c 'CREATE DATABASE database1;'
+          docker exec -i yb-tserver-n1 /home/yugabyte/bin/ysqlsh -h 
yb-tserver-n1 -t -d database1 < 
r2dbc-int-test/ddl-scripts/create_tables_yugabyte.sql
+          docker exec -i yb-tserver-n1 /home/yugabyte/bin/ysqlsh -h 
yb-tserver-n1 -t -c 'CREATE DATABASE database2;'
+          docker exec -i yb-tserver-n1 /home/yugabyte/bin/ysqlsh -h 
yb-tserver-n1 -t -d database2 < 
r2dbc-int-test/ddl-scripts/create_tables_yugabyte.sql
+
+      - name: test
+        run: sbt -Dpekko.persistence.r2dbc.dialect=yugabyte 
-Dpekko.projection.r2dbc.dialect=yugabyte ++${{ matrix.SCALA_VERSION }} test
+
+      - name: Print logs on failure
+        if: ${{ failure() }}
+        run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \;
diff --git a/.github/workflows/integration-tests-slick.yml 
b/.github/workflows/integration-tests-slick.yml
index 5ca3370..c65967f 100644
--- a/.github/workflows/integration-tests-slick.yml
+++ b/.github/workflows/integration-tests-slick.yml
@@ -19,6 +19,7 @@ jobs:
   test:
     name: Build and Test Integration for Slick
     runs-on: ubuntu-22.04
+    if: github.repository == 'apache/pekko-projection'
     strategy:
       fail-fast: false
       matrix:
diff --git a/docker/docker-compose-postgres.yml 
b/docker-files/docker-compose-postgres.yml
similarity index 100%
rename from docker/docker-compose-postgres.yml
rename to docker-files/docker-compose-postgres.yml
diff --git a/docker-files/docker-compose-yugabyte.yml 
b/docker-files/docker-compose-yugabyte.yml
new file mode 100644
index 0000000..aa62fa1
--- /dev/null
+++ b/docker-files/docker-compose-yugabyte.yml
@@ -0,0 +1,46 @@
+# Local Yugabyte database, see 
https://docs.yugabyte.com/latest/deploy/docker/docker-compose/
+
+volumes:
+  yb-master-data-1:
+  yb-tserver-data-1:
+
+services:
+  yb-master:
+    image: yugabytedb/yugabyte:2025.2.0.1-b1
+    container_name: yb-master-n1
+    volumes:
+      - yb-master-data-1:/mnt/master
+    command: [ "/home/yugabyte/bin/yb-master",
+               "--fs_data_dirs=/mnt/master",
+               "--master_addresses=yb-master-n1:7100",
+               "--rpc_bind_addresses=yb-master-n1:7100",
+               "--replication_factor=1"]
+    ports:
+      - "7000:7000"
+    environment:
+      SERVICE_7000_NAME: yb-master
+
+  yb-tserver:
+    image: yugabytedb/yugabyte:2025.2.0.1-b1
+    container_name: yb-tserver-n1
+    shm_size: '512mb'
+    volumes:
+      - yb-tserver-data-1:/mnt/tserver
+    command: [ "/home/yugabyte/bin/yb-tserver",
+               "--fs_data_dirs=/mnt/tserver",
+               "--start_pgsql_proxy",
+               "--rpc_bind_addresses=yb-tserver-n1:9100",
+               "--tserver_master_addrs=yb-master-n1:7100",
+               "--ysql_sequence_cache_minval=1",
+               "--yb_num_shards_per_tserver=1"]
+    ports:
+      - "9042:9042"
+      - "5433:5433"
+      - "9000:9000"
+    environment:
+      SERVICE_5433_NAME: ysql
+      SERVICE_9042_NAME: ycql
+      SERVICE_6379_NAME: yedis
+      SERVICE_9000_NAME: yb-tserver
+    depends_on:
+      - yb-master


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

Reply via email to