magogi/prod/: mgf-vm-firecracker-0.1.5 metadata and description

Simple index

Magogi Foundation Firecracker microVM adapter — implements mgf-vm-core's HypervisorBackend + StorageBackend against Firecracker / jailer.

author Bassam Alsanie, mgf-vm-firecracker contributors
classifiers
  • Development Status :: 1 - Planning
  • Intended Audience :: Developers
  • License :: OSI Approved :: Apache Software License
  • Operating System :: POSIX :: Linux
  • Programming Language :: Python :: 3
  • Programming Language :: Python :: 3.11
  • Programming Language :: Python :: 3.12
  • Programming Language :: Python :: 3.13
  • Topic :: System :: Emulators
description_content_type text/markdown
keywords firecracker, kvm, mgf, microvm, vm
license Apache-2.0
license_file
  • LICENSE
  • NOTICE
project_urls
  • Documentation, https://codeberg.org/magogi-admin/vm-vmanager-docs
  • Source, https://codeberg.org/magogi-admin/mgf-vm-firecracker
requires_dist
  • httpx<1,>=0.27
  • mgf-common<1.0,>=0.41
  • mgf-vm-core<0.2,>=0.1
  • hypothesis<7,>=6.100; extra == 'dev'
  • import-linter<3,>=2.0; extra == 'dev'
  • mgf-test-supervisor<0.2,>=0.1.2; extra == 'dev'
  • mypy<2,>=1.10; extra == 'dev'
  • pytest-cov<7,>=5.0; extra == 'dev'
  • pytest-timeout<3,>=2.3; extra == 'dev'
  • pytest<9,>=8.0; extra == 'dev'
  • ruff<0.16,>=0.4; extra == 'dev'
  • mgf-common[standards]<1.0,>=0.46; extra == 'standards'
requires_python >=3.11

Because this project isn't in the mirror_whitelist, no releases from root/pypi are included.

File Tox results History
mgf_vm_firecracker-0.1.5-py3-none-any.whl
Size
9 KB
Type
Python Wheel
Python
3
mgf_vm_firecracker-0.1.5.tar.gz
Size
105 KB
Type
Source

mgf-vm-firecracker

The Firecracker microVM adapter for the Magogi Foundation distributed vm-vmanager-app. Implements mgf-vm-core's HypervisorBackend and StorageBackend against Firecracker (the Amazon-developed microVM monitor). The canonical second adapter per D-F2 — validates that the wrap-don't-marry seam (contracts.md) is real.

Field Value
Status Phase 1 deliverable. Skeleton landed; implementation begins after mgf-vm-core contracts land.
Federation sibling. Depends on mgf-common>=0.38,<0.39 + mgf-vm-core>=0.1,<0.2 + httpx.
Conformance level. L2 — Standard. Per-rule ledger: docs/inprogress/MGF_STANDARDS_CONFORMANCE.md.
License. MIT.
Python. 3.11 / 3.12 / 3.13.
System dep. firecracker + jailer binaries (from the Firecracker release).

Why Firecracker

Per D-F2 in vm-vmanager-docs/DECISIONS.md: the architecture earns multi-platform support only if you exercise the seam. Firecracker is chosen as the second adapter because:


Where the docs live

vm-vmanager-docs~/PycharmProjects/vm-vmanager-docs/

What Where
The contracts this adapter implements vm-vmanager-docs/component-specs/contracts.md §3 (Hypervisor), §4 (Storage)
Why this exists (D-F2) vm-vmanager-docs/DECISIONS.md Category F
The playbook for how to build this vm-vmanager-docs/developer/adding-an-adapter.md
Roadmap (Phase 1 deliverable) vm-vmanager-docs/ROADMAP.md
Test strategy (esp. the conformance suite) vm-vmanager-docs/TESTING.md

If you're a contributor implementing the adapter, the playbook (developer/adding-an-adapter.md) is your step-by-step guide. The contracts spec (contracts.md) is the bar your code is measured against.


What this library will contain

Phase 1 — see vm-vmanager-docs/ROADMAP.md:

src/mgf/vm/firecracker/
├── __init__.py           # public re-exports (AP-01)
├── py.typed
├── adapter.py            # FirecrackerAdapter: HypervisorBackend + StorageBackend
├── api/                  # REST-over-UDS client for the Firecracker API
├── jailer.py             # jailer subprocess management (SC-02 argv discipline)
├── translate.py          # VmSpec ↔ Firecracker JSON config (no XML)
└── errors.py             # Firecracker error code → mgf.vm.core.exceptions

Capabilities Firecracker reports (per contracts.md §3.5)

The conformance suite (mgf-vm-core/tests/conformance/) will skip the capability-gated tests automatically.


What this library does NOT contain


Install

# System: Firecracker + jailer binaries from a release.
# https://github.com/firecracker-microvm/firecracker/releases
curl -L https://github.com/firecracker-microvm/firecracker/releases/...

pip install mgf-vm-firecracker

Develop

cd ~/PycharmProjects/mgf_vm_firecracker
uv venv --python 3.12
uv sync --extra dev
uv run pytest -q -m "not integration"   # unit + conformance with fakes
uv run pytest -q -m integration          # against real Firecracker
uv run mypy --strict src/
uv run ruff check src tests
uv run lint-imports

For the full system dev loop, see vm-vmanager-docs/DEV-LOOP.md (opt in to firecracker with FIRECRACKER=1).


Federation context

Per discipline: USERS.md (consumers), STANDARDS_NOTE.md (L2 argument), docs/inprogress/MGF_STANDARDS_CONFORMANCE.md (per-rule status). Same federation pattern as every other mgf-vm-* sibling.

Reporting issues