From d6f14d02dd4edf10c418c6fd0486c4f689934df9 Mon Sep 17 00:00:00 2001 From: Jon Chambers Date: Tue, 24 Jun 2025 19:44:06 -0400 Subject: [PATCH] Add a FoundationDB service container for tests --- .github/workflows/test.yml | 21 +++++++++++++++++++-- pom.xml | 3 ++- 2 files changed, 21 insertions(+), 3 deletions(-) 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