Skip to content

Many fixes and improvements + workflows pass again -> version 0.5.0 #159

Many fixes and improvements + workflows pass again -> version 0.5.0

Many fixes and improvements + workflows pass again -> version 0.5.0 #159

name: End-to-end test on MacOS
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
merge_group:
jobs:
end-to-end-test-macos:
runs-on: ${{matrix.os}}
strategy:
fail-fast: true
matrix:
os: [macos-12]
steps:
- name: Checkout the QLever script
uses: actions/checkout@v3
with:
path: qlever-control
- name: Install locally + install dependencies needed for testing
working-directory: ${{github.workspace}}/qlever-control
run: |
python3 -m pip install --upgrade pip setuptools wheel
python3 --version
pip3 --version
pip3 show setuptools wheel
pip3 install -e .
brew install llvm@16
brew install conan@2
brew install unzip expect
pip3 install flake8
- name: Cache for Qlever code and dependencies
uses: actions/cache@v3
env:
cache-name: conan-modules
with:
path: ~/.conan2
key: ${{matrix.os}}-${{env.cache-name}}
- name: Cache for QLever code and binaries
uses: actions/cache@v3
env:
cache-name: qlever-code
with:
path: ${{github.workspace}}/qlever-code
key: ${{matrix.os}}-${{env.cache-name}}
- name: Compile QLever using Conan
run: |
# Fetch or update QLever.
if [ ! -d qlever-code ]; then
git clone https://github.com/ad-freiburg/qlever.git qlever-code; fi
cd qlever-code
git pull
# Install dependencies using Conan.
mkdir -p build && cd $_
conan install .. -pr:b=../conanprofiles/clang-16-macos -pr:h=../conanprofiles/clang-16-macos -of=. --build=missing;
cd ..
cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE="$(pwd)/build/conan_toolchain.cmake" -DUSE_PARALLEL=true -DRUN_EXPENSIVE_TESTS=false -DENABLE_EXPENSIVE_CHECKS=true -DCMAKE_CXX_COMPILER=clang++ -DADDITIONAL_COMPILER_FLAGS="-fexperimental-library" -DADDITIONAL_LINKER_FLAGS="-L$(brew --prefix llvm)/lib/c++"
# Compile QLever.
source build/conanrun.sh
make -C build ServerMain IndexBuilderMain
- name: Check that everything is found and runs
run: |
export PATH="$PATH:$(pwd)/qlever-code/build"
source qlever-code/build/conanrun.sh
ServerMain --help > /dev/null
IndexBuilderMain --help > /dev/null
qlever
qlever help
- name: Test actions for olympics dataset, without Docker
timeout-minutes: 1
run: |
export PATH="$PATH:$(pwd)/qlever-code/build"
export QLEVER_ARGCOMPLETE_ENABLED=1
mkdir -p ${{github.workspace}}/qlever-indices/olympics.1 && cd $_
qlever setup-config olympics
qlever get-data
qlever index --system native
qlever start --system native
qlever status
qlever stop
ls -lh