mgpy should behave predictably on local machines, in CI and on customer environments across platforms. Hardcoded paths and OS assumptions break that promise first.
Key points
- CLI: On Windows the examples use the recommended
py -3.12 -m <module> ...form (for examplepy -3.12 -m manifestguard ...). On Linux/macOS this usually maps topython3.12 -m .... - Use
pathliband configurable base directories instead of wired-in Windows or Unix paths. - CLI calls should run through the Python interpreter rather than accidental file associations.
- Temporary data, reports and license home directories must be intentionally placeable.
Recommended mgpy workflow
- Inventory platform-specific path manipulation and replace it with central helpers.
- Run smoke checks on at least two platform classes with the same CLI commands.
- If a local override is required, feed the path through a flag or config instead of a code edit.
Quick start
py -3.12 -m manifestguard --version
py -3.12 -m manifestguard license --home /tmp/mg_home status
py -3.12 -m manifestguard check