Skip to content

Commit 4f9f688

Browse files
committed
fix(build): Harden the merge to main builds
Switch ubuntu-debug from BUNDLED to SYSTEM dependency resolution for deps installed via install_apt_deps (CURL, ICU, gflags, glog, GTest, re2, c-ares). This avoids flaky internet downloads for these deps. Deps not available as system packages are explicitly set to BUNDLED: DuckDB, fmt, simdjson, xsimd, FastFloat, stemmer, Boost, folly, Protobuf, Arrow, geos, absl, gRPC, faiss. Upgrade runner to 32-core-ubuntu for memory headroom. Move bundled-deps testing to scheduled.yml to maintain coverage.
1 parent 15879ed commit 4f9f688

File tree

2 files changed

+88
-2
lines changed

2 files changed

+88
-2
lines changed

.github/workflows/linux-build-base.yml

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@ jobs:
222222
python ./scripts/checks/run-clang-tidy.py -p $BUILD_PATH --commit $RANGE $FILES
223223
224224
ubuntu-debug:
225-
runs-on: 16-core-ubuntu
225+
runs-on: 32-core-ubuntu
226226
# prevent errors when forks ff their main branch
227227
if: ${{ github.repository == 'facebookincubator/velox' }}
228228
name: Ubuntu debug with resolve_dependency
@@ -261,8 +261,24 @@ jobs:
261261
262262
- name: Make Debug Build
263263
env:
264-
VELOX_DEPENDENCY_SOURCE: BUNDLED
264+
VELOX_DEPENDENCY_SOURCE: SYSTEM
265265
ICU_SOURCE: SYSTEM
266+
# Deps not available as system packages (not installed by
267+
# install_apt_deps). These must be built from source.
268+
DuckDB_SOURCE: BUNDLED
269+
fmt_SOURCE: BUNDLED
270+
simdjson_SOURCE: BUNDLED
271+
xsimd_SOURCE: BUNDLED
272+
FastFloat_SOURCE: BUNDLED
273+
stemmer_SOURCE: BUNDLED
274+
Boost_SOURCE: BUNDLED
275+
folly_SOURCE: BUNDLED
276+
Protobuf_SOURCE: BUNDLED
277+
Arrow_SOURCE: BUNDLED
278+
geos_SOURCE: BUNDLED
279+
absl_SOURCE: BUNDLED
280+
gRPC_SOURCE: BUNDLED
281+
faiss_SOURCE: BUNDLED
266282
MAKEFLAGS: NUM_THREADS=16 MAX_HIGH_MEM_JOBS=4 MAX_LINK_JOBS=2
267283
run: |
268284
EXTRA_CMAKE_FLAGS=(

.github/workflows/scheduled.yml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1476,3 +1476,73 @@ jobs:
14761476
uses: ./.github/workflows/linux-build-base.yml
14771477
with:
14781478
use-clang: true
1479+
1480+
ubuntu-debug-bundled-deps:
1481+
runs-on: 16-core-ubuntu
1482+
# prevent errors when forks ff their main branch
1483+
if: ${{ github.repository == 'facebookincubator/velox' }}
1484+
name: Ubuntu debug with bundled dependencies
1485+
env:
1486+
CCACHE_DIR: ${{ github.workspace }}/ccache
1487+
defaults:
1488+
run:
1489+
shell: bash
1490+
working-directory: velox
1491+
steps:
1492+
1493+
- name: Get Ccache Stash
1494+
uses: apache/infrastructure-actions/stash/restore@3354c1565d4b0e335b78a76aedd82153a9e144d4
1495+
with:
1496+
path: ${{ env.CCACHE_DIR }}
1497+
key: ccache-ubuntu-debug-bundled-deps
1498+
1499+
- name: Ensure Stash Dirs Exists
1500+
working-directory: ${{ github.workspace }}
1501+
run: |
1502+
mkdir -p "$CCACHE_DIR"
1503+
1504+
- uses: actions/checkout@v5
1505+
with:
1506+
path: velox
1507+
persist-credentials: false
1508+
1509+
- name: Install Dependencies
1510+
run: |
1511+
source scripts/setup-ubuntu.sh && install_apt_deps && install_faiss_deps
1512+
1513+
- name: Clear CCache Statistics
1514+
run: |
1515+
ccache -sz
1516+
1517+
- name: Make Debug Build
1518+
env:
1519+
VELOX_DEPENDENCY_SOURCE: BUNDLED
1520+
ICU_SOURCE: SYSTEM
1521+
MAKEFLAGS: NUM_THREADS=16 MAX_HIGH_MEM_JOBS=4 MAX_LINK_JOBS=2
1522+
run: |
1523+
EXTRA_CMAKE_FLAGS=(
1524+
"-DCMAKE_LINK_LIBRARIES_STRATEGY=REORDER_FREELY"
1525+
"-DVELOX_ENABLE_BENCHMARKS=ON"
1526+
"-DVELOX_ENABLE_EXAMPLES=ON"
1527+
"-DVELOX_ENABLE_ARROW=ON"
1528+
"-DVELOX_ENABLE_GEO=ON"
1529+
"-DVELOX_ENABLE_PARQUET=ON"
1530+
"-DVELOX_MONO_LIBRARY=ON"
1531+
"-DVELOX_BUILD_SHARED=ON"
1532+
"-DVELOX_ENABLE_FAISS=ON"
1533+
"-DVELOX_ENABLE_REMOTE_FUNCTIONS=ON"
1534+
)
1535+
make debug
1536+
1537+
- name: CCache after
1538+
run: |
1539+
ccache -vs
1540+
1541+
- uses: apache/infrastructure-actions/stash/save@3354c1565d4b0e335b78a76aedd82153a9e144d4
1542+
with:
1543+
path: ${{ env.CCACHE_DIR }}
1544+
key: ccache-ubuntu-debug-bundled-deps
1545+
1546+
- name: Run Tests
1547+
run: |
1548+
cd _build/debug && ctest -j 8 --output-on-failure --no-tests=error

0 commit comments

Comments
 (0)