Skip to content

Implement HEARTBEAT logic #8

Implement HEARTBEAT logic

Implement HEARTBEAT logic #8

Workflow file for this run

name: lustre-hsm-action-stream tests
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
test:
runs-on: ubuntu-latest
# This 'services' block starts a Redis container that is accessible
# to the steps in this job at localhost:6379. This is our test database.
services:
redis:
image: redis:6
# Options to wait for Redis to be healthy before starting the test steps.
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 6379:6379
steps:
- name: Checkout repository code
uses: actions/checkout@v4
- name: Set up Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install Redis client tool
run: |
sudo apt-get update
sudo apt-get install -y redis-tools
- name: Install dependencies and project
run: |
python -m pip install --upgrade pip
# 'pip install -e .' installs the project in "editable" mode.
# This runs the setup logic from pyproject.toml and setup.cfg,
# installs dependencies, and makes the scripts available on the PATH.
pip install -e .
- name: Run all end-to-end tests
run: |
# Run each test script in sequence. If any one of them fails,
# the entire job will fail.
echo "--- Running Shipper/Reconciler Test ---"
./tests/run_shipper_test.sh
echo "--- Running Viewer Smoke Test ---"
./tests/run_viewer_test.sh
echo "--- Running Janitor Self-Healing Test ---"
./tests/run_janitor_test.sh