Add Bazel tooling support #647
Workflow file for this run
This file contains 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 Cloe | |
on: | |
push: | |
branches: | |
- master | |
- develop | |
- "release/**" | |
paths-ignore: | |
- "*.md" | |
- ".gitignore" | |
- "LICENSE" | |
- "dist/**" | |
- "docs/**" | |
- "ui/**" | |
pull_request: | |
paths-ignore: | |
- "*.md" | |
- ".gitignore" | |
- "LICENSE" | |
- "dist/**" | |
- "docs/**" | |
- "ui/**" | |
jobs: | |
build-cloe: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- "ubuntu-20.04" | |
- "ubuntu-22.04" | |
conan_profile: | |
- "cloe-normal" | |
package_target: | |
# 1. Build each test configuration in Conan cache and run all tests | |
- "export-vendor export-all smoketest-deps smoketest" | |
# 2. Build cloe super-package in editable mode and run tests | |
- "export-vendor editable all smoketest TEST_CONANFILES=tests/conanfile_superbuild.py" | |
# 3. TODO: Build individual packages in editable mode and run tests | |
# This cannot be currently enabled because of a Conan deficiency in v1. | |
# Once all build tooling is based on Conan v2, we can re-enable this use-case. | |
# Until then, use the previous target for this use-case. | |
# - "export-vendor editable-select build-all smoketest TEST_CONANFILES=tests/conanfile_deployment.py" | |
env: | |
CONAN_NON_INTERACTIVE: "yes" | |
DEBIAN_FRONTEND: noninteractive | |
LC_ALL: C.UTF-8 | |
LANG: C.UTF-8 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- run: echo "$HOME/.local/bin" >> $GITHUB_PATH | |
- name: Install system dependencies | |
run: | | |
sudo apt-get update && | |
sudo apt-get install -y make locales && | |
sudo make -f Makefile.setup \ | |
DEBIAN_FRONTEND=noninteractive \ | |
APT_ARGS="--no-install-recommends -y" \ | |
install-system-deps \ | |
&& | |
sudo locale-gen | |
- name: Install Python dependencies | |
run: | | |
sudo pip3 install --upgrade pip && | |
make -f Makefile.setup PIP_INSTALL_ARGS="" install-python-deps | |
- name: Configure Conan | |
run: | | |
make setup-conan | |
conan config set general.default_profile=${{ matrix.conan_profile }} | |
conan config set general.default_build_profile=${{ matrix.conan_profile }} | |
make export-cli | |
- name: Build cloe | |
run: | | |
make ${{ matrix.package_target }} |