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.1.tar.gz (58.6 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.1-py3-none-any.whl (18.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for manuheart-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c4e25250b2680edb78f20c5a3e2013f2fc12c55ffc0324b0ddd9b21cc3db402e
MD5 70ea31701aa3ce271e083f617fccaab7
BLAKE2b-256 9de55510c3ff42cd971add6dc5e853e2c8c403f538d4621e71157d8c1bf49ac3

See more details on using hashes here.

Provenance

The following attestation bundles were made for manuheart-0.1.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: manuheart-0.1.1-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.12

File hashes

Hashes for manuheart-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a18046ef660211de2231ca152d1fc56c5d2944adafe290a781b4e1b948a7ed0a
MD5 7e616ca3b6deb7180c8e0a26723c5f80
BLAKE2b-256 65cb2cd2ff2a02a0450a701a239874863305a783d82a9e1f48ec27afe563d228

See more details on using hashes here.

Provenance

The following attestation bundles were made for manuheart-0.1.1-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