Skip to content

Commit

Permalink
Update C/Python github action (#35)
Browse files Browse the repository at this point in the history
* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml

* Update cuda_linux_build.yml
  • Loading branch information
gschramm authored Dec 3, 2023
1 parent a9ff50d commit 6c0d666
Showing 1 changed file with 31 additions and 10 deletions.
41 changes: 31 additions & 10 deletions .github/workflows/cuda_linux_build.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Workflow to build the parallelproj C/CUDA libs (incl. installation of CUDA)
name: CMake on a single platform
name: Build C/python ubuntu-latest

on:
push:
Expand All @@ -21,24 +21,45 @@ jobs:
steps:
- uses: actions/checkout@v3

- uses: Jimver/[email protected]
id: cuda-toolkit
with:
cuda: '12.1.0'
method: 'network'

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}

- name: Build
- name: Build C/CUDA libs with CMake
# Build your program with the given configuration
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
run: sudo cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target install

- name: Test
- name: Test_C
working-directory: ${{github.workspace}}/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
# we have to skip the CUDA tests since there are now CUDA devices available
run: ctest -C ${{env.BUILD_TYPE}} -VV -E cuda

- name: Set up Python 3.11
uses: actions/setup-python@v3
with:
python-version: 3.11

- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest
pip install .
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
## exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
#flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: find installed libparallelproj_c
run: |
find /usr/local/lib -name "libparallelproj_c.so"
- name: Test with pytest
run: |
export PARALLELPROJ_C_LIB=/usr/local/lib/libparallelproj_c.so
pytest -v

0 comments on commit 6c0d666

Please sign in to comment.