mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-27 02:31:09 +00:00
CI workflow with BUILD_CONVERT=Off
This commit is contained in:
@@ -0,0 +1,95 @@
|
|||||||
|
name: ci
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- 'src/**'
|
||||||
|
- 'test/**'
|
||||||
|
- 'conda/**'
|
||||||
|
- 'cmake/**'
|
||||||
|
- '.github/workflows/ci.yml'
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
activate:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: |
|
||||||
|
github.repository == 'IfcOpenShell/IfcOpenShell' &&
|
||||||
|
!contains(github.event.head_commit.message, 'skip ci')
|
||||||
|
steps:
|
||||||
|
- run: echo ok go
|
||||||
|
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
needs: activate
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
submodules: recursive
|
||||||
|
- name: Install C++ dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt update
|
||||||
|
sudo apt-get install --no-install-recommends \
|
||||||
|
git cmake gcc g++ \
|
||||||
|
libboost-date-time-dev \
|
||||||
|
libboost-filesystem-dev \
|
||||||
|
libboost-iostreams-dev \
|
||||||
|
libboost-program-options-dev \
|
||||||
|
libboost-regex-dev \
|
||||||
|
libboost-system-dev \
|
||||||
|
libboost-thread-dev \
|
||||||
|
python3-all-dev python3-pip \
|
||||||
|
swig libpcre3-dev libxml2-dev \
|
||||||
|
libtbb-dev nlohmann-json3-dev \
|
||||||
|
libocct-foundation-dev libocct-modeling-algorithms-dev libocct-modeling-data-dev libocct-ocaf-dev libocct-visualization-dev libocct-data-exchange-dev \
|
||||||
|
libhdf5-dev libcgal-dev
|
||||||
|
|
||||||
|
- name: ccache
|
||||||
|
uses: hendrikmuhs/ccache-action@v1
|
||||||
|
|
||||||
|
- name: Build ifcopenshell
|
||||||
|
run: |
|
||||||
|
mkdir build && cd build
|
||||||
|
cmake \
|
||||||
|
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
|
||||||
|
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_PREFIX_PATH=/usr \
|
||||||
|
-DCMAKE_SYSTEM_PREFIX_PATH=/usr \
|
||||||
|
-DOCC_INCLUDE_DIR=/usr/include/opencascade \
|
||||||
|
-DOCC_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \
|
||||||
|
-DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 \
|
||||||
|
-DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.8 \
|
||||||
|
-DPYTHON_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libpython3.8.so \
|
||||||
|
-DCOLLADA_SUPPORT=Off \
|
||||||
|
"-DSCHEMA_VERSIONS=2x3;4" \
|
||||||
|
-DBUILD_CONVERT=Off \
|
||||||
|
-DGLTF_SUPPORT=On \
|
||||||
|
-DJSON_INCLUDE_DIR=/usr/include \
|
||||||
|
-DCGAL_INCLUDE_DIR=/usr/include \
|
||||||
|
-DGMP_INCLUDE_DIR=/usr/include \
|
||||||
|
-DMPFR_INCLUDE_DIR=/usr/include \
|
||||||
|
-DGMP_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \
|
||||||
|
-DMPFR_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \
|
||||||
|
-DHDF5_INCLUDE_DIR=/usr/include/hdf5/serial \
|
||||||
|
../cmake
|
||||||
|
sudo make -j $(nproc)
|
||||||
|
sudo make install
|
||||||
|
|
||||||
|
- name: Install Python dependencies
|
||||||
|
run: |
|
||||||
|
sudo /usr/bin/python -m pip install -U pip
|
||||||
|
sudo /usr/bin/python -m pip install xmlschema numpy lxml
|
||||||
|
sudo /usr/bin/python -m pip install src/bcf
|
||||||
|
sudo /usr/bin/python -m pip install pytest
|
||||||
|
sudo /usr/bin/python -m pip install isodate
|
||||||
|
sudo /usr/bin/python -m pip install lark
|
||||||
|
sudo /usr/bin/python -m pip install networkx
|
||||||
|
|
||||||
|
- name: Test
|
||||||
|
run: |
|
||||||
|
cd test
|
||||||
|
sudo /usr/bin/python tests.py
|
||||||
|
cd ../src/ifcopenshell-python
|
||||||
|
mv ifcopenshell ifcopenshell-local # Force testing on installed module
|
||||||
|
make test
|
||||||
Reference in New Issue
Block a user