Skip to content

split-preprocessing: use new preprocessing dialect infrastructure #11534

split-preprocessing: use new preprocessing dialect infrastructure

split-preprocessing: use new preprocessing dialect infrastructure #11534

name: Build and Test (Linux)
permissions: read-all
on:
push:
branches:
- main
pull_request:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
build-and-test:
runs-on:
labels: ubuntu-24.04-64core
env:
BUILDBUDDY_API_KEY: ${{ (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && secrets.BUILDBUDDY_API_KEY || '7eYz4UY70YSrT55wmjWV' }}
BAZEL_CONFIG_FLAG: ${{ (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && '--config=ci --config=remote' || '--config=ci' }}
steps:
- name: Check out repository code
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
# needed to build OpenFHE and for the frontend tests
- name: Install dependencies
run: |
./.github/install_clang_version.sh 19
- name: Cache OpenFHE
uses: actions/cache@8b402f58fbc84540c8b491a91e594a4576fec3d7 # v5.0.2
with:
path: |
openfhe-install
key: ${{ runner.os }}-openfhe-clang19-${{ hashFiles('.github/build_openfhe.sh') }}
# Bazel tests
- name: "Run `bazel build`"
run: |
read -r -a BAZEL_CONFIGS <<< "$BAZEL_CONFIG_FLAG"
bazel build -c opt "${BAZEL_CONFIGS[@]}" \
--remote_header=x-buildbuddy-api-key="$BUILDBUDDY_API_KEY" \
//...
- name: "Run `bazel test`"
run: |
read -r -a BAZEL_CONFIGS <<< "$BAZEL_CONFIG_FLAG"
bazel test -c opt "${BAZEL_CONFIGS[@]}" \
--remote_header=x-buildbuddy-api-key="$BUILDBUDDY_API_KEY" \
//...
# Frontend tests
- name: Build OpenFHE
run: |
./.github/build_openfhe.sh
- name: Install Python 3.12
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.12"
cache: 'pip'
cache-dependency-path: 'pyproject.toml'
- name: Install python package in editable mode
run: |
python -m pip install --upgrade pip
# This should reuse the pre-built binaries from `bazel build` above.
pip install -e ".[dev,python,openfhe]"
- name: Run Python frontend tests
run: |
pytest -n auto frontend/