Skip to content

CICD: Add non-vendored wheels to Github releases #91

CICD: Add non-vendored wheels to Github releases

CICD: Add non-vendored wheels to Github releases #91

Workflow file for this run

name: Valgrind
on:
pull_request:
branches:
- stable
- unstable
workflow_dispatch:
defaults:
run:
shell: bash
jobs:
pre_job:
# continue-on-error: true # Uncomment once integration is finished
runs-on: ubuntu-latest
# Map a step output to a job output
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@master
with:
# All of these options are optional, so you can remove them if you are happy with the defaults
cancel_others: 'true'
do_not_skip: '["pull_request", "workflow_dispatch", "schedule"]'
build:
name: Valgrind
needs: pre_job
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
runs-on: ubuntu-latest
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
with:
submodules: false
- uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install dependencies on ubuntu
run: |
sudo apt-get update
sudo apt-get install -y valgrind
- name: Install python packages
run: |
python -m pip install --upgrade pip wheel
python -m pip install --upgrade pybind11 cmake ninja pytest
- name: Install python package
run: |
SKBUILD_CMAKE_ARGS="-DDIPTEST_ENABLE_EXT_TESTS=ON" python -m pip install -e . -v
- name: Configure
run: |
cmake -S . -G Ninja -B build \
-DSKBUILD_PROJECT_NAME="diptest" \
-DSKBUILD_PROJECT_VERSION="0.0.0" \
-DCMAKE_BUILD_TYPE=Debug \
-DDIPTEST_MBUILD=ON \
-DDIPTEST_ENABLE_DEBUG=OFF \
-DDIPTEST_ENABLE_OPENMP=OFF \
-Dpybind11_DIR=$(python3 -c 'import pybind11; print(pybind11.get_cmake_dir())') \
-DCMAKE_C_COMPILER=gcc-10 \
-DCMAKE_CXX_COMPILER=g++-10
- name: Build
run: |
cmake --build build \
--target install \
--config Debug
- name: Test
run: |
PYTHONMALLOC=malloc valgrind --leak-check=yes --track-origins=yes --log-file=valgrind-log.txt python -m pytest tests/test_diptest.py