diff --git a/.github/workflows/conan.yml b/.github/workflows/conan.yml index 827b19033..dd37a985d 100644 --- a/.github/workflows/conan.yml +++ b/.github/workflows/conan.yml @@ -47,7 +47,7 @@ jobs: brew install python ninja buf python -m pip install conan - - name: Build + - name: Create package run: | # `buf` tries to read a CLI config file that we don't actually use located at # ~/.config/buf/config.yaml. We don't always have permission to access this @@ -56,7 +56,7 @@ jobs: # more details. export BUF_CONFIG_DIR=$(mktemp -d) conan profile detect - conan create . --build=missing + conan create . --build=missing -s compiler.cppstd=17 build_linux_ubuntu_jammy: if: github.repository_owner == 'viamrobotics' @@ -114,7 +114,7 @@ jobs: shell: bash run: | conan profile detect - conan create . --build=missing + conan create . --build=missing -s compiler.cppstd=14 build_linux_debian: if: github.repository_owner == 'viamrobotics' @@ -164,12 +164,11 @@ jobs: ninja-build \ python3 \ python3-pip \ + python3-venv \ software-properties-common \ sudo \ wget - pip install conan - - name: Update CMake for bullseye if: ${{ matrix.image == 'debian:bullseye' }} run: | @@ -180,8 +179,15 @@ jobs: apt-get -y --no-install-recommends install -t bullseye-backports cmake - - name: Create package + # Note bullseye can use regular pip + conan no problem, but + # bookworm is a managed environment, so we use a venv in both because it is more + # trouble to bifurcate them. + - name: Install conan in venv and create package shell: bash run: | + python3 -m venv ./conan_venv + source ./conan_venv/bin/activate + + pip install conan conan profile detect - conan create . --build=missing + conan create . --build=missing -s compiler.cppstd=14