Problem: Today Sandbox always creates a headless Service for internal discovery. Users who want external access must manually create Ingress/Gateway resources or additional Services. There’s no first-class way to expose ports from Sandbox.
Goal: Add an optional, minimal, unopinionated networking surface that lets users declare Service type and ports without binding to a specific ingress/gateway stack.
Scope
Follow-ups
Route status (Gateway/Ingress) and richer networking status fields.
Problem: Today Sandbox always creates a headless Service for internal discovery. Users who want external access must manually create Ingress/Gateway resources or additional Services. There’s no first-class way to expose ports from Sandbox.
Goal: Add an optional, minimal, unopinionated networking surface that lets users declare Service type and ports without binding to a specific ingress/gateway stack.
Scope
Add
spec.networking.servicewith:type:
ClusterIP|NodePort|LoadBalancerports[]: name, port, targetPort (int or name), protocol (default TCP)
Behavior:
If
spec.networking.serviceis set: create a single Service based on the spec.If not set: create the default headless Service for internal discovery.
Headless and external Services are mutually exclusive (we reconcile one or the other).
Non-goals in this issue:
Follow-ups
Route status (Gateway/Ingress) and richer networking status fields.