nix-builder-autoscaler/agent/nix_builder_autoscaler/runtime/ec2.py

33 lines
972 B
Python
Raw Normal View History

2026-02-27 11:59:16 +01:00
"""EC2 runtime adapter — stub for Plan 02."""
from __future__ import annotations
from .base import RuntimeAdapter
class EC2Runtime(RuntimeAdapter):
"""EC2 Spot instance runtime adapter.
Full implementation in Plan 02.
"""
def __init__(self, region: str, launch_template_id: str, **kwargs: object) -> None:
self._region = region
self._launch_template_id = launch_template_id
def launch_spot(self, slot_id: str, user_data: str) -> str:
"""Launch a spot instance for slot_id."""
raise NotImplementedError
def describe_instance(self, instance_id: str) -> dict:
"""Return normalized instance info."""
raise NotImplementedError
def terminate_instance(self, instance_id: str) -> None:
"""Terminate the instance."""
raise NotImplementedError
def list_managed_instances(self) -> list[dict]:
"""Return list of managed instances."""
raise NotImplementedError