Skip to main content

Python rewrite of the Manuheart health checker

Project description

Manuheart Python

Quick start

Install for local development:

python -m venv .venv
.venv/bin/python -m pip install -e '.[dev,yaml]'

Validate the example config:

.venv/bin/python -m manuheart validate-config --config examples/localhost/manuheart.json

Run one check cycle:

.venv/bin/python -m manuheart check --config examples/localhost/manuheart.json

Run the public deployment smoke config:

.venv/bin/python -m manuheart check --config examples/deployment-test/public-smoke.json

Run daemon mode:

.venv/bin/python -m manuheart daemon --config examples/localhost/manuheart.json

Use the library API:

from manuheart.api import CheckerMap, load_config, run_check, write_reports

config = load_config("examples/localhost/manuheart.json")
result = run_check(config)
write_reports(result)

Typed extension points such as CheckerMap, ClockSource, SleepFunction, and DaemonEventCallback are exported from manuheart.api for callers that inject custom checkers, clocks, daemon sleepers, or daemon event hooks.

Library callers can also pass previous_state= to run_check() for in-memory state continuity, or load_previous=False when they want a single cycle that deliberately avoids reading previous report files.

Run the local verification gate:

.venv/bin/python -m ruff check src tests scripts
.venv/bin/python -m mypy src/manuheart
.venv/bin/python -m pytest -q
.venv/bin/python scripts/check_localhost_compatibility.py
.venv/bin/python scripts/check_dependency_security.py
.venv/bin/python scripts/check_clean_install.py

Docs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

manuheart-0.1.3.tar.gz (66.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

manuheart-0.1.3-py3-none-any.whl (18.0 kB view details)

Uploaded Python 3

File details

Details for the file manuheart-0.1.3.tar.gz.

File metadata

  • Download URL: manuheart-0.1.3.tar.gz
  • Upload date:
  • Size: 66.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for manuheart-0.1.3.tar.gz
Algorithm Hash digest
SHA256 8d0757365b13ad2b2ac979040c504dc439079124ea4b14e57ca05dd55703d359
MD5 909b3b977878886e93d10d5da1cbf83b
BLAKE2b-256 2112c4fbd7d751ded2ec6e210a2f6461bec64799974ed3dee26f395443f7bf0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for manuheart-0.1.3.tar.gz:

Publisher: publish.yml on RusDavies/manuheart-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file manuheart-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: manuheart-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 18.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for manuheart-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d3d6316cdb2e991bfb3610c3a97b2d520685bf5451985e0e6ba90dfdab7997af
MD5 ce169a4a91f56fcbb0fa3c6a0cf79a10
BLAKE2b-256 8b6aef7f5f594cd24e8316614de0626d3b0a69f08b5ee0cc03c4a45b64ce8cdc

See more details on using hashes here.

Provenance

The following attestation bundles were made for manuheart-0.1.3-py3-none-any.whl:

Publisher: publish.yml on RusDavies/manuheart-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page