Skip to content

Implement Alignments #263

Implement Alignments

Implement Alignments #263

Workflow file for this run

name: Test on Linux (incl. all features, linting, formatting)
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
jobs:
Test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
- name: Install Graphviz
run: sudo apt-get update && sudo apt-get -y install graphviz p7zip-full
- name: Download DuckDB
run: wget -O libduckdb-linux-amd64.zip https://github.com/duckdb/duckdb/releases/download/$DUCKDB_VERSION/libduckdb-linux-amd64.zip
env:
DUCKDB_VERSION: v1.3.2
- name: Unpacking duckdb
run: 7z x ${{ github.workspace }}/libduckdb-linux-amd64.zip -o${{ github.workspace }}/libduckdb
- name: Download kuzudb
run: wget -O kuzu.zip https://github.com/kuzudb/kuzu/releases/download/$KUZU_VERSION/libkuzu-linux-x86_64.tar.gz
env:
KUZU_VERSION: v0.11.2
- name: Unpacking kuzudb
run: mkdir ${{ github.workspace }}/libkuzu && tar xzf ${{ github.workspace }}/kuzu.zip -C ${{ github.workspace }}/libkuzu
- name: Downloading test files
run: wget -O process_mining/test_data/out.zip https://rwth-aachen.sciebo.de/s/4cvtTU3lLOgtxt1/download
- name: Unpacking test files
run: 7z x process_mining/test_data/out.zip -oprocess_mining/test_data
- name: Build
run: source "$HOME/.cargo/env" && cargo build --verbose --all-features
working-directory: ./process_mining
env:
DUCKDB_LIB_DIR: ${{ github.workspace }}/libduckdb
DUCKDB_INCLUDE_DIR: ${{ github.workspace }}/libduckdb
LD_LIBRARY_PATH: ${{ github.workspace }}/libduckdb
KUZU_SHARED: 1
KUZU_LIBRARY_DIR: ${{ github.workspace }}/libkuzu
KUZU_INCLUDE_DIR: ${{ github.workspace }}/libkuzu
- name: Clippy
working-directory: ./process_mining
run: source "$HOME/.cargo/env" && cargo clippy --all-targets --all-features -- -D warnings
env:
DUCKDB_LIB_DIR: ${{ github.workspace }}/libduckdb
DUCKDB_INCLUDE_DIR: ${{ github.workspace }}/libduckdb
LD_LIBRARY_PATH: ${{ github.workspace }}/libduckdb
KUZU_SHARED: 1
KUZU_LIBRARY_DIR: ${{ github.workspace }}/libkuzu
KUZU_INCLUDE_DIR: ${{ github.workspace }}/libkuzu
- name: Check formatting
working-directory: ./process_mining
run: source "$HOME/.cargo/env" && cargo fmt --all --check
env:
DUCKDB_LIB_DIR: ${{ github.workspace }}/libduckdb
DUCKDB_INCLUDE_DIR: ${{ github.workspace }}/libduckdb
LD_LIBRARY_PATH: ${{ github.workspace }}/libduckdb
KUZU_SHARED: 1
KUZU_LIBRARY_DIR: ${{ github.workspace }}/libkuzu
KUZU_INCLUDE_DIR: ${{ github.workspace }}/libkuzu
- name: Check docs
working-directory: ./process_mining
run: source "$HOME/.cargo/env" && cargo doc --all-features --no-deps
env:
DUCKDB_LIB_DIR: ${{ github.workspace }}/libduckdb
DUCKDB_INCLUDE_DIR: ${{ github.workspace }}/libduckdb
LD_LIBRARY_PATH: ${{ github.workspace }}/libduckdb
KUZU_SHARED: 1
KUZU_LIBRARY_DIR: ${{ github.workspace }}/libkuzu
KUZU_INCLUDE_DIR: ${{ github.workspace }}/libkuzu
RUSTDOCFLAGS: -D warnings
- name: Run tests
run: source "$HOME/.cargo/env" && cargo test --verbose --all-features
working-directory: ./process_mining
env:
DUCKDB_LIB_DIR: ${{ github.workspace }}/libduckdb
DUCKDB_INCLUDE_DIR: ${{ github.workspace }}/libduckdb
LD_LIBRARY_PATH: $LD_LIBRARY_PATH:${{ github.workspace }}/libkuzu/:${{ github.workspace }}/libduckdb/
KUZU_SHARED: 1
KUZU_LIBRARY_DIR: ${{ github.workspace }}/libkuzu
KUZU_INCLUDE_DIR: ${{ github.workspace }}/libkuzu