TileDB Nightly Test Build #491
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: TileDB Nightly Test Build | |
on: | |
schedule: | |
# runs every day at 2:50 UTC | |
- cron: "50 02 * * *" | |
workflow_dispatch: | |
push: | |
branches: | |
- '*' # must quote since "*" is a YAML reserved character; we want a string | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
include: | |
- os: windows-latest | |
config: "Debug" | |
fail-fast: false | |
name: | | |
${{ matrix.os }} - Sanitizer: ${{ matrix.sanitizer || 'none' }} | Experimental: ${{ matrix.experimental || 'OFF' }} | ${{ matrix.config || 'Release' }} | |
permissions: | |
issues: write | |
env: | |
MACOSX_DEPLOYMENT_TARGET: 10.15 | |
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' }} | |
run: | | |
cmake -B build -DTILEDB_WERROR=ON -DTILEDB_SERIALIZATION=ON -DTILEDB_EXPERIMENTAL_FEATURES=$EXPERIMENTAL -DCMAKE_BUILD_TYPE=${{ matrix.config || 'Release' }} -DSANITIZER=$SANITIZER_ARG | |
- name: Configure TileDB CMake (Windows) | |
if: contains(matrix.os, 'windows') | |
env: | |
S3_ARG: ${{ matrix.s3 || 'ON' }} | |
run: | | |
# Free up some disk space | |
rm -r -fo "C:/Android/*.*" | |
rm -r -fo "C:/hostedtoolcache/windows/PyPy" | |
rm -r -fo "C:/msys64/*.*" | |
rm -r -fo "C:/hostedtoolcache/windows/Java_Temurin-Hotspot_jdk/" | |
rm -r -fo "C:/Program Files/LLVM" | |
# Disable S3 due to space constraints | |
cmake -B build -DTILEDB_WERROR=ON -DTILEDB_S3=$env:S3_ARG -DTILEDB_SERIALIZATION=ON -DCMAKE_BUILD_TYPE=${{ matrix.config || 'Release' }} | |
- name: Build TileDB | |
run: | | |
cmake --build build -j2 --config ${{ matrix.config || 'Release' }} | |
- name: Test TileDB | |
run: | | |
cmake --build build --target check --config ${{ matrix.config || 'Release' }} | |
# create_issue_on_fail: | |
# runs-on: ubuntu-latest | |
# needs: test | |
# if: failure() || cancelled() | |
# steps: | |
# - name: Checkout TileDB `dev` | |
# uses: actions/checkout@v3 | |
# - name: Create Issue if Build Fails | |
# uses: JasonEtco/create-an-issue@v2 | |
# env: | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# with: | |
# filename: .github/workflows/nightly-failure-issue-template.md |