Source code for gyoza.resources

"""Cooperative resource reservation updates from inside an operation."""

import json
import logging

from gyoza.models.resources import validate_reservation


[docs] class GyozaResources: """Emit reservation updates through the existing Gyoza event stream."""
[docs] def set_reservation( self, *, ram_mb: int | None = None, vram_mb: int | None = None ) -> None: """Declare remaining reservations after physically freeing memory. Omitted fields are unchanged. The master currently rejects increases. This emits an asynchronous event; returning does not confirm acceptance. """ reservation = { name: value for name, value in (("ram_mb", ram_mb), ("vram_mb", vram_mb)) if value is not None } validate_reservation(reservation) logging.getLogger("gyoza").info("[RESERVATION] %s", json.dumps(reservation))
gyoza_resources = GyozaResources()