Skip to content

Test

Test #131

Workflow file for this run

name: All tests on Kafka MQ
#on:
# pull_request:
# branches: [ "dev", "main" ]
# types: [opened, synchronize, reopened]
on:
push:
jobs:
build:
runs-on: ubuntu-latest
env:
MONGO_ENABLED: true
LMDB_ENABLED: false
timeout-minutes: 40
if: "!contains(github.event.head_commit.message, 'CI Bot')"
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
cache: "pip"
- name: Install package and dependencies
run: |
python -m pip install --upgrade pip
python -m pip install .[all]
python -m pip install .[ml_dev]
- name: Run docker compose
run: docker compose -f deployment/compose-kafka.yml up -d
- name: Wait for one minute
run: sleep 60
- name: Check liveness
run: |
export MQ_TYPE=kafka
export MQ_PORT=9092
python -c 'from flowcept.configs import MQ_TYPE, MQ_PORT; print(f"MQ_TYPE={MQ_TYPE}"); print(f"MQ_PORT={MQ_PORT}")'
python -c 'from flowcept import Flowcept; assert Flowcept.services_alive()'
- name: Run tests with kafka
run: |
export MQ_TYPE=kafka
export MQ_PORT=9092
make tests
- name: Test notebooks
run: pytest --ignore=notebooks/zambeze.ipynb --nbmake "notebooks/" --nbmake-timeout=600 --ignore=notebooks/dask_from_CLI.ipynb
- name: Stop services
run: docker compose -f deployment/compose-kafka.yml down
- name: Clean up
run: |
make clean
find /home/runner/runners/ -type f -name "*.log" -exec sh -c 'echo {}; >"{}"' \; || true
docker image prune -a -f