split-preprocessing: use new preprocessing dialect infrastructure #11534
This file contains hidden or 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: 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/ |