diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 3cb3cb5dd..5b7bf6836 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -12,6 +12,12 @@ jobs:
container: ubuntu:22.04
timeout-minutes: 20
+ services:
+ foundationdb:
+ # Note: this should generally match the version of the FoundationDB SERVER deployed in production; it's okay if
+ # it's a little behind the CLIENT version.
+ image: foundationdb/foundationdb:7.3.62
+
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up JDK 21
@@ -26,6 +32,17 @@ jobs:
HOME: /root
- name: Install APT packages
# ca-certificates: required for AWS CRT client
- run: apt update && apt install -y ca-certificates
+ run: apt update && apt install -y ca-certificates curl
+ - name: Download and install FoundationDB client
+ env:
+ # Note that even-numbered patch versions have AVX instructions disabled; not all GitHub Actions runners have
+ # AVX-capable processors, and we should take care to use non-AVX FoundationDB versions.
+ FOUNDATIONDB_VERSION: 7.3.62
+ FOUNDATIONDB_SHA256: 5cedd29f9dd31e6ad259bd2bd14b61293372bcb8c0c2d8dc4cf4689203790547
+ run: |
+ curl -L https://github.com/apple/foundationdb/releases/download/${FOUNDATIONDB_VERSION}/foundationdb-clients_${FOUNDATIONDB_VERSION}-1_amd64.deb -O && \
+ echo "${FOUNDATIONDB_SHA256} foundationdb-clients_${FOUNDATIONDB_VERSION}-1_amd64.deb" | sha256sum --check --status - && \
+ apt install -y ./foundationdb-clients_${FOUNDATIONDB_VERSION}-1_amd64.deb && \
+ rm foundationdb-clients_${FOUNDATIONDB_VERSION}-1_amd64.deb
- name: Build with Maven
- run: ./mvnw -e -B verify
+ run: ./mvnw -e -B verify -DfoundationDb.serviceContainerName=foundationdb
diff --git a/pom.xml b/pom.xml
index 02af1764b..84b39cead 100644
--- a/pom.xml
+++ b/pom.xml
@@ -47,7 +47,8 @@
2.2.1
+ with even-numbered patch versions). Also when updating FoundationDB, make sure to update the version of FoundationDB
+ used by GitHub Actions. -->
7.3.62
26.57.0
1.70.0