This repository was archived by the owner on Jun 24, 2026. It is now read-only.
refactor: rename init function to load_rules and update related calls… #320
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CMake | |
| on: [push, pull_request] | |
| jobs: | |
| ubuntu-address-undefined-coverage: | |
| runs-on: ubuntu-latest | |
| services: | |
| mongo: | |
| image: mongo | |
| ports: | |
| - 27017:27017 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y lcov | |
| wget -O clips_core_source_642.zip https://sourceforge.net/projects/clipsrules/files/CLIPS/6.4.2/clips_core_source_642.zip/download | |
| unzip clips_core_source_642.zip | |
| curl -OL https://github.com/mongodb/mongo-cxx-driver/releases/download/r4.1.2/mongo-cxx-driver-r4.1.2.tar.gz | |
| tar -xzf mongo-cxx-driver-r4.1.2.tar.gz | |
| - name: Compile CLIPS | |
| working-directory: clips_core_source_642/core | |
| run: | | |
| make release_cpp | |
| sudo mkdir /usr/local/include/clips | |
| sudo cp *.h /usr/local/include/clips/ | |
| sudo cp libclips.a /usr/local/lib/ | |
| - name: Compile Mongo C++ driver | |
| working-directory: mongo-cxx-driver-r4.1.2/build | |
| run: | | |
| cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF | |
| cmake --build . | |
| sudo cmake --build . --target install | |
| - name: Update library cache | |
| run: | | |
| sudo ldconfig | |
| - name: Configure CMake | |
| run: cmake -B build -DCMAKE_BUILD_TYPE=Debug -DENABLE_ASAN=ON -DENABLE_UBSAN=ON -DENABLE_COV=ON -DBUILD_MONGODB=ON | |
| - name: Build | |
| run: cmake --build build --config Debug | |
| - name: Test with address sanitizer, undefined behavior sanitizer and coverage | |
| working-directory: build | |
| run: ctest -C Debug --rerun-failed --output-on-failure -T Test -T Coverage | |
| - name: Make coverage report | |
| run: | | |
| lcov --capture --directory build --output-file coverage.info | |
| lcov --remove coverage.info '/usr/*' --output-file coverage.info | |
| lcov --list coverage.info | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@v4.0.1 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| ubuntu-memcheck: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y valgrind | |
| wget -O clips_core_source_642.zip https://sourceforge.net/projects/clipsrules/files/CLIPS/6.4.2/clips_core_source_642.zip/download | |
| unzip clips_core_source_642.zip | |
| - name: Compile CLIPS | |
| working-directory: clips_core_source_642/core | |
| run: | | |
| make release_cpp | |
| sudo mkdir /usr/local/include/clips | |
| sudo cp *.h /usr/local/include/clips/ | |
| sudo cp libclips.a /usr/local/lib/ | |
| - name: Update library cache | |
| run: | | |
| sudo ldconfig | |
| - name: Configure CMake | |
| run: cmake -B build -DCMAKE_BUILD_TYPE=Debug | |
| - name: Build | |
| run: cmake --build build --config Debug | |
| - name: Test with memory checker | |
| working-directory: build | |
| run: ctest -C Debug --rerun-failed --output-on-failure -T Test -T MemCheck | |
| ubuntu-release: | |
| runs-on: ubuntu-latest | |
| services: | |
| mongo: | |
| image: mongo | |
| ports: | |
| - 27017:27017 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install dependencies | |
| run: | | |
| wget -O clips_core_source_642.zip https://sourceforge.net/projects/clipsrules/files/CLIPS/6.4.2/clips_core_source_642.zip/download | |
| unzip clips_core_source_642.zip | |
| curl -OL https://github.com/mongodb/mongo-cxx-driver/releases/download/r4.1.2/mongo-cxx-driver-r4.1.2.tar.gz | |
| tar -xzf mongo-cxx-driver-r4.1.2.tar.gz | |
| - name: Compile CLIPS | |
| working-directory: clips_core_source_642/core | |
| run: | | |
| make release_cpp | |
| sudo mkdir /usr/local/include/clips | |
| sudo cp *.h /usr/local/include/clips/ | |
| sudo cp libclips.a /usr/local/lib/ | |
| - name: Compile Mongo C++ driver | |
| working-directory: mongo-cxx-driver-r4.1.2/build | |
| run: | | |
| cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF | |
| cmake --build . | |
| sudo cmake --build . --target install | |
| - name: Update library cache | |
| run: | | |
| sudo ldconfig | |
| - name: Configure CMake | |
| run: cmake -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_MONGODB=ON | |
| - name: Build | |
| run: cmake --build build --config Release | |
| - name: Test | |
| working-directory: build | |
| run: ctest -C Release --rerun-failed --output-on-failure -T Test |