Skip to content

Latest commit

 

History

History
114 lines (80 loc) · 2.79 KB

File metadata and controls

114 lines (80 loc) · 2.79 KB

Project Logo

The Lupaxa Developers Toolbox
Part of The Lupaxa Project


lupaxa-sysinfo

Cross-platform system inventory library and CLI: modular collectors, granular redaction, and JSON / YAML / XML / HTML reports.

Built for automation and support workflows used by The Lupaxa Project.

Features

  • Lightweight defaults: basic host info as pretty-printed JSON
  • Opt-in collectors: CPU, memory, disks, network, listening ports, processes, firewall, runtimes, GPU, packages
  • Granular redaction for hosts, users, IPs, secrets, domains, and custom regexes
  • Profiles for common workflows: minimal, ci, support
  • Output formats (CLI): JSON, YAML, XML, human summary, and compact HTML
  • Library API returns plain dictionaries with schema_version and tool_version
  • Fully typed, linted, formatted, and tested
  • MkDocs documentation included

Installation

From PyPI

pip install lupaxa-sysinfo

From source (development mode)

pip install -e ".[dev]"

Library quick start

from lupaxa.sysinfo import collect_report

report = collect_report(cpu=True, memory=True)

For CollectOptions, RedactOptions, and profiles, see the documentation.

CLI quick start

sysinfo --help
sysinfo --version
sysinfo --profile ci --json report.json
sysinfo --all --yaml report.yaml
sysinfo --all --output xml
sysinfo --profile support --xml report.xml

You can also run the CLI as a module:

python -m lupaxa.sysinfo --help
python -m lupaxa.sysinfo --profile ci --json out.json

Requirements

  • Python 3.10+
  • Runtime dependencies: psutil, PyYAML, tldextract (plus distro on Linux)

Documentation

Online documentation:

Documentation

Source repository:

GitHub

Serve docs locally

From a clone of the repository:

make mkdocs-serve

Then open the local URL printed by MkDocs in your browser.

Development

Clone the repository and install with Make:

make init                # first-time makefile-skills checkout
make python-install-dev  # editable install with [dev]
make python-check        # lint, type-check, and test
The Lupaxa Project Footer