You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 085e666
Browse filesBrowse the repository at this point in the historyBrowse files
fix(supervisor): report isolation backend Attach refusals to the gateway
When an isolation backend refused at Attach, the supervisor exited without
telling the gateway. The configuration it had reported Accepted before Attach
stayed accepted, so the sandbox showed ConfigurationReady: True, and the
revision it wrote at startup stayed Pending with no error.
ReportSandboxConfigurationRequest gains refused_before_start. On a Denied or
Attach refusal the supervisor reports the generation it accepted as Rejected
with the flag set, and the gateway records the configuration as rejected with
gateway-authored text. Unflagged reports keep today's behavior, so a runtime
that fails to apply the generation it is running stays accepted. The
supervisor also marks the revision this start wrote as Failed with the
backend's message. A revision the user wrote and transient errors are left
alone.
Closes#4739
Signed-off-by: Shiju <shiju@nvidia.com>
// A rejected desired update does not invalidate an accepted runtime.
5115
-
let error = admission.error;
5116
-
admission = current.clone();
5117
-
admission.error = error;
5140
+
if refused_before_start && same_generation(current, &admission) {
5141
+
// The runtime refused what it accepted, so the workload never
5142
+
// started on it. Runtime text stays out of public status.
5143
+
admission.error = "The isolation backend refused this configuration before the workload started; create the sandbox again with a policy the backend accepts".to_string();
5144
+
} else {
5145
+
// A rejected desired update does not invalidate an accepted runtime.
0 commit comments