Skip to content

App deploy and routes

  1. Secrets (if needed) — console PUT /fleet/api/v1alpha1/catalog-instance-secrets for x-secret-bind password fields.
  2. Instance createPOST /api/v1alpha1/catalog-item-instances with user_values (replicas, routing.mode, placement labels).
  3. Placement — DCM Rego policies match ManagedCluster labels; return targets and SPRM IDs.
  4. Materialization — Provider creates Deployment/Service, Helm release, or OLM Subscription.
  5. Route syncfleet-edge-route-sync creates/updates FleetAppRoute for routing.mode in hub | site | dual.
  6. Route reconcile — fleet-edge-controller merges hub Traefik config, applies spoke Ingress ManifestWorks, enqueues ACME when enabled.
  7. Traffic — For hub mode: app.<fleet_edge_domain> → hub Traefik → WireGuard → spoke Traefik → Service.

Fields gated by x-ui-depends-on (for example bootstrap admin password) render under the controlling checkbox in the Configure step.

DELETE /api/v1alpha1/catalog-item-instances/{id}?deletion_mode=strict|deferred|abandon

Mode Behavior
strict (default) Require provider uninstall; fail closed if unavailable
deferred Drop records; background cleanup
abandon Drop records even if provider missing

Route sync prunes synced FleetAppRoute; controller finalizer removes spoke Ingress MW and rebuilds Traefik fragments.

Rehydration (:rehydrate) recreates placement under current policy — not orphan cleanup.