diff --git a/.github/workflows/cpp_extra.yml b/.github/workflows/cpp_extra.yml index 5c0319897a72..756993f68715 100644 --- a/.github/workflows/cpp_extra.yml +++ b/.github/workflows/cpp_extra.yml @@ -377,8 +377,9 @@ jobs: include: - image: ubuntu-cpp-odbc title: AMD64 Ubuntu - - image: debian-cpp-odbc - title: AMD64 Debian + # GH-49582: TODO Enable Debian build for ODBC + # - image: debian-cpp-odbc + # title: AMD64 Debian env: ARCH: amd64 ARCHERY_DEBUG: 1 @@ -391,6 +392,12 @@ jobs: with: fetch-depth: 0 submodules: recursive + - name: Create Docker Test Network + run: docker network create odbc_net + - name: Set Up Dremio Instance + run: | + docker compose -f cpp/src/arrow/flight/sql/odbc/tests/dremio/docker-compose.yml up -d + cpp/src/arrow/flight/sql/odbc/tests/dremio/set_up_dremio_instance.sh - name: Cache Docker Volumes uses: actions/cache@v5 with: diff --git a/compose.yaml b/compose.yaml index bd417c524e4f..669cabdd9225 100644 --- a/compose.yaml +++ b/compose.yaml @@ -205,6 +205,11 @@ volumes: ubuntu-ccache: name: ${ARCH}-ubuntu-${UBUNTU}-ccache +networks: + # GH-48068 for Flight SQL ODBC Testing + odbc_net: + external: true + services: ################################# C++ ####################################### @@ -558,6 +563,7 @@ services: ARROW_DEPENDENCY_SOURCE: BUNDLED ARROW_DEPENDENCY_USE_SHARED: "OFF" ARROW_FLIGHT_SQL_ODBC: "ON" + ARROW_FLIGHT_SQL_ODBC_CONN: "driver={Apache Arrow Flight SQL ODBC Driver};HOST=dremio_container;port=32010;pwd=admin2025;uid=admin;useEncryption=false;UseWideChar=true;" ARROW_GANDIVA: "OFF" ARROW_GCS: "OFF" ARROW_HDFS: "OFF" @@ -568,6 +574,8 @@ services: # GH-49651 Link ODBC tests statically on Linux to fix segfault ARROW_TEST_LINKAGE: "static" # Register ODBC before running tests + networks: + - odbc_net command: > /bin/bash -c " /arrow/ci/scripts/cpp_build.sh /arrow /build && diff --git a/cpp/src/arrow/flight/sql/odbc/tests/dremio/docker-compose.yml b/cpp/src/arrow/flight/sql/odbc/tests/dremio/docker-compose.yml index eaab4d02b731..bf8f7f32ed4d 100644 --- a/cpp/src/arrow/flight/sql/odbc/tests/dremio/docker-compose.yml +++ b/cpp/src/arrow/flight/sql/odbc/tests/dremio/docker-compose.yml @@ -15,7 +15,9 @@ # specific language governing permissions and limitations # under the License. -# GH-48068 TODO: run remote ODBC tests on Linux +networks: + odbc_net: + external: true services: dremio: @@ -33,3 +35,5 @@ services: interval: 10s timeout: 5s retries: 30 + networks: + - odbc_net diff --git a/cpp/src/arrow/flight/sql/odbc/tests/dremio/set_up_dremio_instance.sh b/cpp/src/arrow/flight/sql/odbc/tests/dremio/set_up_dremio_instance.sh old mode 100644 new mode 100755