Skip to content

TileDB Nightly Test Build #862

TileDB Nightly Test Build

TileDB Nightly Test Build #862

Workflow file for this run

name: TileDB Nightly Test Build
on:
schedule:
# runs every day at 2:50 UTC
- cron: "50 02 * * *"
workflow_dispatch:
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-latest
- os: macos-latest
- os: macos-latest # ASAN build
sanitizer: "address"
base_triplet: "arm64-osx"
- os: macos-latest
experimental: ON
- os: windows-latest
- os: windows-2019
- os: windows-latest
config: "Debug"
# Insufficient space on default D:/ for debug build
working_directory: "C:/"
fail-fast: false
name: |
${{ matrix.os }} - Sanitizer: ${{ matrix.sanitizer || 'none' }} | Experimental: ${{ matrix.experimental || 'OFF' }} | ${{ matrix.config || 'Release' }}
env:
TILEDB_NIGHTLY_BUILD: 1
steps:
- name: Print env
run: printenv
- name: Checkout TileDB `dev`
uses: actions/checkout@v3
- name: Configure TileDB CMake (not-Windows)
if: ${{ ! contains(matrix.os, 'windows') }}
env:
SANITIZER_ARG: ${{ matrix.sanitizer || 'OFF' }}
EXPERIMENTAL: ${{ matrix.experimental || 'OFF' }}
working-directory: ${{ matrix.working_directory || github.workspace }}
run: |
cmake -B build -DTILEDB_WERROR=ON -DTILEDB_SERIALIZATION=ON -DTILEDB_EXPERIMENTAL_FEATURES=$EXPERIMENTAL -DCMAKE_BUILD_TYPE=${{ matrix.config || 'Release' }} -DTILEDB_SANITIZER=$SANITIZER_ARG -DTILEDB_VCPKG_BASE_TRIPLET=${{ matrix.base_triplet }}
- name: Configure TileDB CMake (Windows)
if: contains(matrix.os, 'windows')
working-directory: ${{ matrix.working_directory || github.workspace }}
run: |
cmake -B build -S $env:GITHUB_WORKSPACE -DTILEDB_WERROR=ON -DTILEDB_SERIALIZATION=ON -DCMAKE_BUILD_TYPE=${{ matrix.config || 'Release' }}
- name: Build TileDB
working-directory: ${{ matrix.working_directory || github.workspace }}
run: |
cmake --build build -j2 --config ${{ matrix.config || 'Release' }}
- name: Test TileDB
working-directory: ${{ matrix.working_directory || github.workspace }}
run: |
cmake --build build --target check --config ${{ matrix.config || 'Release' }}
test_hdfs_build:
uses: ./.github/workflows/ci-linux_mac.yml
with:
ci_backend: HDFS
matrix_image: ubuntu-24.04
matrix_compiler_cc: 'gcc-13'
matrix_compiler_cxx: 'g++-13'
timeout: 300
build_only: true
bootstrap_args: '--enable-hdfs --enable-static-tiledb --disable-werror'
create_issue_on_fail:
permissions:
issues: write
runs-on: ubuntu-latest
needs:
- test
- test_hdfs_build
if: failure() || cancelled()
steps:
- name: Checkout TileDB `dev`
uses: actions/checkout@v3
- name: Create Issue if Build Fails
uses: TileDB-Inc/github-actions/open-issue@main
with:
name: nightly GitHub Actions build
label: nightly
assignee: KiterLuc,teo-tsirpanis,davisp