Skip to content

Add Podman machine/image/container lifecycle contract for local agents #19

@mdheller

Description

@mdheller

Context

Canonical spec: SourceOS-Linux/sourceos-spec specs/local-agent-runtime.md.

The node-commander repair showed that Podman machine state, socket reachability, local image provenance, authfile selection, and container lifecycle must be first-class platform concepts.

Deliverables

  • Add Podman machine preflight library.
  • Detect machine missing, stopped, or socket-refusing states.
  • Detect local image presence and image ID.
  • Enforce local runtime image tags such as localhost/sourceos/<agent>:<tag> or localhost/socioprophet/<agent>:<tag>.
  • Support explicit empty authfile runtime mode.
  • Detect stale host credential-helper risk.
  • Detect container states including Stopping, Removing, Exited, Created, and Running.
  • Emit machine-readable and human-readable diagnostics.

Acceptance criteria

  • node-commander style failure is diagnosed as Podman socket unavailable, not as generic launch failure.
  • Local image run can bypass ambient Google credential helpers using explicit authfile.
  • Runtime refuses direct remote registry image unless service auth is declared.
  • Stopping containers are detected and remediated or reported clearly.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions