Skip to content

Add high-level scalar function registration API #17

Add high-level scalar function registration API

Add high-level scalar function registration API #17

Workflow file for this run

name: Test DuckDB JWT Extension
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:
jobs:
test:
name: Test on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
include:
- os: ubuntu-latest
rid: linux-x64
- os: windows-latest
rid: win-x64
- os: macos-latest
rid: osx-arm64
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Initialize submodules
run: |
git submodule update --init --recursive
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
global-json-file: global.json
- name: Install Python (for extension metadata)
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Restore dependencies
run: dotnet restore
- name: Build extension with Native AOT
run: dotnet publish DuckDB.JWT/DuckDB.JWT.csproj -c Release -r ${{ matrix.rid }}
- name: Debug - List publish directory contents
shell: bash
run: |
echo "=== Publish Directory Contents ==="
PUBLISH_DIR="DuckDB.JWT/bin/Release/net10.0/${{ matrix.rid }}/publish"
if [ -d "$PUBLISH_DIR" ]; then
ls -lah "$PUBLISH_DIR"
echo ""
echo "=== File details ==="
find "$PUBLISH_DIR" -type f -exec file {} \;
else
echo "ERROR: Publish directory not found: $PUBLISH_DIR"
exit 1
fi
- name: Build test project
run: dotnet build DuckDB.JWT.Tests/DuckDB.JWT.Tests.csproj -c Debug
- name: Run tests
run: dotnet test --project DuckDB.JWT.Tests/DuckDB.JWT.Tests.csproj --no-build --verbosity normal
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.os }}
path: DuckDB.JWT.Tests/TestResults/**/*
if-no-files-found: ignore
- name: Upload extension artifact
if: success()
uses: actions/upload-artifact@v4
with:
name: jwt-extension-${{ matrix.rid }}
path: DuckDB.JWT/bin/Release/net10.0/${{ matrix.rid }}/publish/jwt.duckdb_extension
if-no-files-found: error