Skip to content

Commit 8bda537

Browse files
ci(hive): build and test iceberg_hive with bundled Thrift
Add an Ubuntu CI job that configures with -DICEBERG_BUILD_HIVE=ON (via ICEBERG_EXTRA_CMAKE_ARGS) so the iceberg_hive library and hive_catalog_test are compiled and run. Thrift comes from Arrow's bundled build (ICEBERG_BUNDLE_THRIFT=ON, the default), so no system Thrift install is required.
1 parent 8e08b6e commit 8bda537

1 file changed

Lines changed: 44 additions & 0 deletions

File tree

.github/workflows/test.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,50 @@ jobs:
8686
CC: gcc-14
8787
CXX: g++-14
8888
run: ci/scripts/build_example.sh $(pwd)/example
89+
hive:
90+
if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }}
91+
name: AMD64 Ubuntu 26.04 Hive
92+
runs-on: ubuntu-26.04
93+
timeout-minutes: 45
94+
strategy:
95+
fail-fast: false
96+
env:
97+
SCCACHE_DIR: ${{ github.workspace }}/.sccache
98+
SCCACHE_CACHE_SIZE: "2G"
99+
ICEBERG_EXTRA_CMAKE_ARGS: "-DICEBERG_BUILD_HIVE=ON"
100+
steps:
101+
- name: Checkout iceberg-cpp
102+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
103+
with:
104+
persist-credentials: false
105+
- name: Install dependencies
106+
shell: bash
107+
run: sudo apt-get update && sudo apt-get install -y libcurl4-openssl-dev
108+
- name: Restore sccache cache
109+
uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
110+
with:
111+
path: ${{ github.workspace }}/.sccache
112+
key: sccache-test-hive-${{ github.run_id }}
113+
restore-keys: |
114+
sccache-test-hive-
115+
sccache-test-ubuntu-
116+
- name: Setup sccache
117+
uses: mozilla-actions/sccache-action@9e7fa8a12102821edf02ca5dbea1acd0f89a2696 # v0.0.10
118+
- name: Build and test Iceberg with Hive
119+
shell: bash
120+
env:
121+
CC: gcc-14
122+
CXX: g++-14
123+
run: ci/scripts/build_iceberg.sh $(pwd) OFF ON
124+
- name: Show sccache stats
125+
shell: bash
126+
run: sccache --show-stats
127+
- name: Save sccache cache
128+
if: github.ref == 'refs/heads/main'
129+
uses: actions/cache/save@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
130+
with:
131+
path: ${{ github.workspace }}/.sccache
132+
key: sccache-test-hive-${{ github.run_id }}
89133
macos:
90134
if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }}
91135
name: AArch64 macOS 26

0 commit comments

Comments
 (0)