Skip to content

Ubuntu-python-bindings-venv #270

Ubuntu-python-bindings-venv

Ubuntu-python-bindings-venv #270

Workflow file for this run

name: Ubuntu-python-bindings-venv
# https://www.jeffgeerling.com/blog/2020/running-github-actions-workflow-on-schedule-and-other-events
on:
pull_request:
types: [opened, reopened, synchronize]
schedule:
- cron: '0 2 * * SUN'
# https://stackoverflow.com/questions/66335225/how-to-cancel-previous-runs-in-the-pr-when-you-push-new-commitsupdate-the-curre#comment133398800_72408109
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: true
jobs:
build-ubuntu-dep-apt:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Print system information
run: lscpu
- name: Print OS information
run: lsb_release -a
- name: Print compiler information
run: dpkg --list | grep compiler
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libx11-dev libdc1394-dev libv4l-dev liblapack-dev libopenblas-dev libeigen3-dev
sudo apt-get install libopencv-dev nlohmann-json3-dev
sudo apt-get install python3
- name: Upgrade pip3
run: |
python3 -m pip install --upgrade pip
- name: pip3 version
run: |
pip3 --version
- name: Install virtualenv
run: |
pip3 install virtualenv
- name: Setup PATH
run: |
echo "PATH=$PATH:$HOME/.local/bin" >> $GITHUB_ENV
echo ${PATH}
- name: Create build folder
run: |
mkdir build
cd build
- name: Build Python bindings
working-directory: build
run: |
echo "Create virtual env"
virtualenv venv
echo "Activate virtual env"
. venv/bin/activate
echo "Install pybind11"
pip install pybind11[global]
echo "Configure"
cmake .. -DBUILD_DEPRECATED_FUNCTIONS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TUTORIALS=OFF -DBUILD_TESTS=OFF -DBUILD_APPS=OFF -DBUILD_DEMOS=OFF
echo "Build python bindings"
make -j$(nproc) visp_python_bindings
echo "Build python tests"
make -j$(nproc) visp_python_bindings_test
echo "Build python doc"
make -j$(nproc) visp_python_bindings_doc