| # Copyright 2024 The IREE Authors | |
| # | |
| # Licensed under the Apache License v2.0 with LLVM Exceptions. | |
| # See https://llvm.org/LICENSE.txt for license information. | |
| # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | |
| name: PkgCI Unit Test | |
| on: | |
| workflow_call: | |
| inputs: | |
| artifact_run_id: | |
| type: string | |
| default: "" | |
| workflow_dispatch: | |
| inputs: | |
| artifact_run_id: | |
| type: string | |
| default: "" | |
| jobs: | |
| linux_x86_64: | |
| name: Linux (x86_64) | |
| runs-on: ubuntu-20.04 | |
| env: | |
| PACKAGE_DOWNLOAD_DIR: ${{ github.workspace }}/.packages | |
| VENV_DIR: ${{ github.workspace }}/.venv | |
| steps: | |
| - name: Checking out repository | |
| uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
| with: | |
| submodules: false | |
| - uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.1.0 | |
| with: | |
| # Must match the subset of versions built in pkgci_build_packages. | |
| python-version: "3.11" | |
| - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 | |
| with: | |
| name: linux_x86_64_release_packages | |
| path: ${{ env.PACKAGE_DOWNLOAD_DIR }} | |
| - name: Setup base venv | |
| run: | | |
| ./build_tools/pkgci/setup_venv.py ${VENV_DIR} \ | |
| --artifact-path=${PACKAGE_DOWNLOAD_DIR} \ | |
| --fetch-gh-workflow=${{ inputs.artifact_run_id }} | |
| source ${VENV_DIR}/bin/activate | |
| pip install -r runtime/bindings/python/iree/runtime/build_requirements.txt | |
| - name: Validate runtime wheel | |
| run: | | |
| source ${VENV_DIR}/bin/activate | |
| echo "Testing default runtime package:" | |
| python -m iree.runtime._package_test | |
| echo "Testing tracy runtime package:" | |
| # GH runners don't expose the TSC but we want to make sure the basic packaging | |
| # works, so override the check with TRACY_NO_INVARIANT_CHECK=1 (per instructions | |
| # if this is left off). | |
| TRACY_NO_INVARIANT_CHECK=1 IREE_PY_RUNTIME=tracy \ | |
| python -m iree.runtime._package_test | |
| - name: Validate compiler wheel | |
| run: | | |
| source ${VENV_DIR}/bin/activate | |
| echo "Testing compiler package:" | |
| python -m iree.compiler._package_test | |
| # Test tools and importers that require additional deps. | |
| - name: Test ONNX importer | |
| run: | | |
| source ${VENV_DIR}/bin/activate | |
| python -m pip install onnx>=1.16.0 | |
| python compiler/bindings/python/test/tools/import_onnx_test.py | |
| python compiler/bindings/python/test/extras/onnx_importer_test.py | |
| - name: Test FX (PyTorch) importer | |
| run: | | |
| source ${VENV_DIR}/bin/activate | |
| python -m pip install torch>=2.3.0 | |
| python compiler/bindings/python/test/extras/fx_importer_test.py | |
| - name: Test TensorFlow importer | |
| run: | | |
| source ${VENV_DIR}/bin/activate | |
| bash ./build_tools/scripts/setup_tf_python.sh | |
| python compiler/bindings/python/test/tools/compiler_tflite_test.py | |
| python compiler/bindings/python/test/tools/compiler_tf_test.py |