Skip to content

Inventory data view in datumctl #211

Description

@ecv

Sub-issue of datum-cloud/tmp_datum-cloud_enhancements_713_Physical-inventory-f_2138d0c1#1 — Physical inventory for Milo, follow-on to datum-cloud/infra#2675.

Goal

A datumctl data view over the inventory service so operators can read the fleet from the CLI — providers, regions, sites, clusters, nodes (and later networkdevices) — against the inventory.miloapis.com/v1alpha1 CRDs now populated on prod.

Today the only way to view loaded inventory is raw datumctl get sites -L topology.inventory.miloapis.com/region (works, but bare). This issue is the first purpose-built read experience.

Context

Real data is loaded on prod (#2675): 4 providers, 18 regions, 19 sites (#2677), 18 clusters, 90 nodes from Omni (#2680). This view consumes that.

Scope

  • Commands to list/get inventory kinds with sensible default columns (e.g. site → region, provider, ISO_ID; cluster → site, node count).
  • Surface topology.inventory.miloapis.com/* topology labels and key cross-refs (providerRef/regionRef/siteRef) in output.
  • Filtering by region/provider/site; -o json|yaml|wide parity with existing datumctl get.
  • Read-only.

Open questions

  • Dedicated datumctl inventory ... subtree vs. relying on generic datumctl get <kind> with improved column printers.
  • Rollup views (e.g. nodes-per-site, sites-per-region) in-CLI vs. deferred to the portal.

Exit criteria

  • Operator can list providers/regions/sites/clusters/nodes from datumctl with readable default columns.
  • Topology labels + cross-refs visible without -o yaml spelunking.
  • Filter by region/provider/site.

Relates

  • Sibling: staff-portal inventory view (separate issue).
  • Data loaded by datum-cloud/infra#2675.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions