| # Copyright 2019 Google LLC |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # https://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| name: Continuous Integration |
| |
| on: |
| push: |
| branches: |
| - master |
| - ci-test # A branch specifically for testing CI |
| |
| jobs: |
| build: |
| runs-on: ubuntu-latest |
| env: |
| CXX: clang++ |
| CC: clang |
| PYTHON_BIN: /usr/bin/python3 |
| steps: |
| - name: Installing bazel |
| run: | |
| echo "deb [arch=amd64] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list |
| sudo apt install curl |
| curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add - |
| sudo apt update && sudo apt install bazel |
| - name: Installing dependencies |
| run: | |
| sudo apt install clang python3 python3-pip |
| sudo pip install numpy |
| - name: Checking out latest version and all submodules |
| run: | |
| git config --global remote.origin.fetch '+refs/pull/*:refs/remotes/origin/pull/*' |
| git clone https://github.com/$GITHUB_REPOSITORY $GITHUB_WORKSPACE --no-checkout --no-tags |
| git checkout $GITHUB_SHA |
| git submodule update --init --depth 1000 --jobs 8 |
| - name: Building with bazel |
| run: bazel build //... |
| - name: Testing with bazel |
| # TODO(gcmn) Enable all tests once they're passing |
| run: bazel test -- //... -//integrations/... -//bindings/... -//iree/hal/vulkan:dynamic_symbols_test -//iree/samples/rt:bytecode_module_api_test |