Skip to content

security: enforce repository auth invariants (#7) #199

security: enforce repository auth invariants (#7)

security: enforce repository auth invariants (#7) #199

name: QIHSE Heterogeneous Build & Test
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install Build Dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential gcc g++ libpthread-stubs0-dev libssl-dev liburing-dev libsqlite3-dev libluajit-5.1-dev libbpf-dev libxdp-dev clang ninja-build cmake python3-dev python3-pip python3-numpy libarchive-dev libzstd-dev nlohmann-json3-dev
- name: Build Shared Library & Binaries
run: |
make clean
make all -j$(nproc)
- name: Verify Library Exports
run: |
nm -D ./libqihse.so | grep qihse_search || true
- name: Run Core Test Suite
run: |
make test
- name: Run Auth Privilege Boundary Regression
run: |
gcc -std=c99 -Wall -Wextra -I. -I./include -I./core \
tests/test_auth_privilege_boundary.c -L. -lqihse \
-o tests/test_auth_privilege_boundary
LD_LIBRARY_PATH=$PWD ./tests/test_auth_privilege_boundary
- name: Run Python SDK Tests
run: |
export LD_LIBRARY_PATH=$PWD
PYTHONPATH=python python3 -m unittest discover -s python/tests