Skip to content

Commit

Permalink
Add python CI build
Browse files Browse the repository at this point in the history
This is not the same as other workflows:
- core.yaml builds with python turned off
- wheels.yaml builds cpp core separately and then builds wheels
- docs uses python build system, but no tests
- big endian is the one also doing tests, but it is slow and runs on
some oldish dependencies

So additional workflow is the best option to test python build.
  • Loading branch information
achaikou committed Aug 7, 2024
1 parent f9d2773 commit 086fbbd
Showing 1 changed file with 66 additions and 0 deletions.
66 changes: 66 additions & 0 deletions .github/workflows/python.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Build and test python
#Perform the same build as is advised in our docs

on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:

jobs:
build_python:
runs-on: ${{ matrix.os }}

strategy:
matrix:
include:
- os: ubuntu-20.04

steps:
- uses: actions/checkout@v4

- name: Elevate privileges
run: |
echo "PRIVLEDGES=sudo" >> $GITHUB_ENV
- uses: './.github/actions/build_core_dependencies'
with:
privileges: $PRIVLEDGES

- uses: actions/setup-python@v5
with:
python-version: '3.11'

- name: Create python venv
shell: bash
run: |
python -m venv venv
. ./venv/bin/activate
python -m pip install --upgrade pip
python -m pip install --upgrade setuptools
python -m pip install -r python/requirements-dev.txt
which python
- name: Configure dlisio
shell: bash
run: |
. ./venv/bin/activate
cmake -S . -B build \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DBUILD_PYTHON=ON
- name: Build dlisio
shell: bash
run: |
$PRIVLEDGES cmake \
--build build \
--parallel \
--config Release
- name: Test dlisio
shell: bash
run: |
cd build
ctest -C Release --output-on-failure --verbose

0 comments on commit 086fbbd

Please sign in to comment.