Context
Initialize (internal/provider/provider.go) calls klog.Fatalf when OXIDE_PROJECT is missing or the Oxide client can't be built — but Initialize runs after winning leader election, so a misconfigured deployment crash-loops while holding/churning the lease.
Scope
Validate OXIDE_HOST, OXIDE_TOKEN, and OXIDE_PROJECT at process start in main.go, before the controller-manager command runs, and fail with a clear message listing what's missing.
Done when
A missing env var fails the process at startup, before leader election, with an actionable error.
Context
Initialize(internal/provider/provider.go) callsklog.FatalfwhenOXIDE_PROJECTis missing or the Oxide client can't be built — butInitializeruns after winning leader election, so a misconfigured deployment crash-loops while holding/churning the lease.Scope
Validate
OXIDE_HOST,OXIDE_TOKEN, andOXIDE_PROJECTat process start inmain.go, before the controller-manager command runs, and fail with a clear message listing what's missing.Done when
A missing env var fails the process at startup, before leader election, with an actionable error.