| # 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: CI - Linux x64 bazel |
| |
| on: |
| workflow_dispatch: |
| pull_request: |
| push: |
| branches: |
| - main |
| |
| concurrency: |
| # A PR number if a pull request and otherwise the commit hash. This cancels |
| # queued and in-progress runs for the same PR (presubmit) or commit |
| # (postsubmit). The workflow name is prepended to avoid conflicts between |
| # different workflows. |
| group: ${{ github.workflow }}-${{ github.event.number || github.sha }} |
| cancel-in-progress: true |
| |
| jobs: |
| setup: |
| uses: ./.github/workflows/setup.yml |
| |
| linux_x64_bazel: |
| needs: setup |
| if: contains(fromJson(needs.setup.outputs.enabled-jobs), 'linux_x64_bazel') |
| runs-on: azure-linux-scale |
| container: |
| image: ghcr.io/iree-org/cpubuilder_ubuntu_jammy@sha256:78a558b999b230f7e1da376639e14b44f095f30f1777d6a272ba48c0bbdd4ccb |
| # Mount a RAM disk and point the Bazel sandbox at it using our custom environment variable. |
| options: --mount type=tmpfs,destination=/dev/shm |
| env: |
| SANDBOX_BASE: /dev/shm |
| defaults: |
| run: |
| shell: bash |
| steps: |
| - name: "Checking out repository" |
| uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 |
| with: |
| submodules: true |
| - name: Install Python requirements |
| run: python3 -m pip install -r ./runtime/bindings/python/iree/runtime/build_requirements.txt |
| - name: Build and test with Bazel |
| env: |
| IREE_CUDA_DEPS_DIR: /usr/local/iree_cuda_deps |
| run: | |
| ./build_tools/bazel/install_bazelisk.sh 1.21.0 |
| cp ./build_tools/scripts/fetch_cuda_deps.sh /usr/local/bin |
| /usr/local/bin/fetch_cuda_deps.sh ${IREE_CUDA_DEPS_DIR} |
| ./build_tools/bazel/build_test_all.sh |