From 19945343d949e856773162cd2d60803bf411fe30 Mon Sep 17 00:00:00 2001 From: Eliza Weisman Date: Tue, 3 Dec 2024 09:50:21 -0800 Subject: [PATCH 1/8] [WIP] update to oxidecomputer/dropshot#1180 --- Cargo.lock | 12 +- Cargo.toml | 5 + clickhouse-admin/src/clickhouse_cli.rs | 3 +- clickhouse-admin/src/clickward.rs | 3 +- cockroach-admin/src/cockroach_cli.rs | 3 +- cockroach-admin/src/context.rs | 2 +- common/src/api/external/error.rs | 19 +- dns-server/src/http_server.rs | 4 +- dns-server/src/lib.rs | 2 +- dns-server/tests/basic_test.rs | 2 +- gateway/src/error.rs | 18 +- gateway/src/http_entrypoints.rs | 2 +- gateway/src/lib.rs | 2 +- illumos-utils/src/lib.rs | 2 +- installinator-api/src/lib.rs | 8 +- internal-dns/resolver/src/resolver.rs | 2 +- openapi/bootstrap-agent.json | 166 +- openapi/clickhouse-admin-keeper.json | 142 +- openapi/clickhouse-admin-server.json | 90 +- openapi/clickhouse-admin-single.json | 62 +- openapi/cockroach-admin.json | 90 +- openapi/dns-server.json | 62 +- openapi/gateway.json | 792 +++- openapi/installinator.json | 62 +- openapi/nexus-internal.json | 1090 +++-- openapi/nexus.json | 5360 ++++++++++++++++++------ openapi/oximeter.json | 88 +- openapi/repo-depot.json | 38 +- openapi/sled-agent.json | 1462 +++++-- openapi/wicketd.json | 644 ++- oximeter/instruments/src/http.rs | 7 +- oximeter/producer/src/lib.rs | 4 +- sled-agent/src/sim/storage.rs | 6 +- wicketd/src/http_entrypoints.rs | 20 +- wicketd/src/lib.rs | 2 +- 35 files changed, 7810 insertions(+), 2466 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d8a1d33a6b..cd1788c04c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2601,8 +2601,7 @@ dependencies = [ [[package]] name = "dropshot" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50976b6bac0894e689bb8ce0e2e5892dfeedb0876408bc806f0582d81824a3b5" +source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#c86d36881310d5c005972fdb83f77e0e4853278d" dependencies = [ "async-stream", "async-trait", @@ -2666,8 +2665,7 @@ dependencies = [ [[package]] name = "dropshot_endpoint" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8371ca3d0ecdd13df8a00acb66312633fc66a5e412076ccbc414238536f8290" +source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#c86d36881310d5c005972fdb83f77e0e4853278d" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -10374,9 +10372,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.132" +version = "1.0.133" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" +checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" dependencies = [ "itoa", "memchr", @@ -11006,7 +11004,7 @@ version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03c3c6b7927ffe7ecaa769ee0e3994da3b8cafc8f444578982c83ecb161af917" dependencies = [ - "heck 0.5.0", + "heck 0.4.1", "proc-macro2", "quote", "syn 2.0.87", diff --git a/Cargo.toml b/Cargo.toml index c0f4be8bae..6bcb94c5cf 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -886,3 +886,8 @@ path = "workspace-hack" [patch."https://github.com/oxidecomputer/omicron"] omicron-uuid-kinds = { path = "uuid-kinds" } omicron-common = { path = "common" } + +# /!\ REMOVE BEFORE FLIGHT: Temporary patch to test dropshot breaking changes +[patch.crates-io.dropshot] +git = 'https://github.com/oxidecomputer/dropshot' +branch = 'eliza/custom-error-httpresponse-result' diff --git a/clickhouse-admin/src/clickhouse_cli.rs b/clickhouse-admin/src/clickhouse_cli.rs index 588ebe4290..a6f5cc0e0d 100644 --- a/clickhouse-admin/src/clickhouse_cli.rs +++ b/clickhouse-admin/src/clickhouse_cli.rs @@ -55,7 +55,8 @@ impl From for HttpError { | ClickhouseCliError::ExecutionError(_) => { let message = InlineErrorChain::new(&err).to_string(); HttpError { - status_code: http::StatusCode::INTERNAL_SERVER_ERROR, + status_code: + dropshot::ErrorStatusCode::INTERNAL_SERVER_ERROR, error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, diff --git a/clickhouse-admin/src/clickward.rs b/clickhouse-admin/src/clickward.rs index ca5d3df3de..9703dfa73b 100644 --- a/clickhouse-admin/src/clickward.rs +++ b/clickhouse-admin/src/clickward.rs @@ -23,7 +23,8 @@ impl From for HttpError { ClickwardError::Failure { .. } => { let message = InlineErrorChain::new(&err).to_string(); HttpError { - status_code: http::StatusCode::INTERNAL_SERVER_ERROR, + status_code: + dropshot::ErrorStatusCode::INTERNAL_SERVER_ERROR, error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, diff --git a/cockroach-admin/src/cockroach_cli.rs b/cockroach-admin/src/cockroach_cli.rs index ab1d470fe0..d0121904b0 100644 --- a/cockroach-admin/src/cockroach_cli.rs +++ b/cockroach-admin/src/cockroach_cli.rs @@ -45,7 +45,8 @@ impl From for HttpError { | CockroachCliError::ParseOutput { .. } => { let message = InlineErrorChain::new(&err).to_string(); HttpError { - status_code: http::StatusCode::INTERNAL_SERVER_ERROR, + status_code: + dropshot::ErrorStatusCode::INTERNAL_SERVER_ERROR, error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, diff --git a/cockroach-admin/src/context.rs b/cockroach-admin/src/context.rs index 4ba387bb6b..98cf514352 100644 --- a/cockroach-admin/src/context.rs +++ b/cockroach-admin/src/context.rs @@ -53,7 +53,7 @@ impl ServerContext { {err:#}", ); Err(HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, diff --git a/common/src/api/external/error.rs b/common/src/api/external/error.rs index 7e5f773b5d..ec888a302d 100644 --- a/common/src/api/external/error.rs +++ b/common/src/api/external/error.rs @@ -413,7 +413,7 @@ impl From for HttpError { }; HttpError::for_client_error( Some(String::from("ObjectNotFound")), - http::StatusCode::NOT_FOUND, + dropshot::ClientErrorStatusCode::NOT_FOUND, format!("not found: {}", message), ) } @@ -427,7 +427,7 @@ impl From for HttpError { } Error::Unauthenticated { internal_message } => HttpError { - status_code: http::StatusCode::UNAUTHORIZED, + status_code: dropshot::ErrorStatusCode::UNAUTHORIZED, // TODO-polish We may want to rethink this error code. This is // what HTTP calls it, but it's confusing. error_code: Some(String::from("Unauthorized")), @@ -441,7 +441,7 @@ impl From for HttpError { let (internal_message, external_message) = message.into_internal_external(); HttpError { - status_code: http::StatusCode::BAD_REQUEST, + status_code: dropshot::ErrorStatusCode::BAD_REQUEST, error_code: Some(String::from("InvalidRequest")), external_message, internal_message, @@ -452,7 +452,7 @@ impl From for HttpError { let (internal_message, external_message) = message.into_internal_external(); HttpError { - status_code: http::StatusCode::BAD_REQUEST, + status_code: dropshot::ErrorStatusCode::BAD_REQUEST, error_code: Some(String::from("InvalidValue")), external_message: format!( "unsupported value for \"{}\": {}", @@ -464,7 +464,7 @@ impl From for HttpError { Error::Forbidden => HttpError::for_client_error( Some(String::from("Forbidden")), - http::StatusCode::FORBIDDEN, + dropshot::ClientErrorStatusCode::FORBIDDEN, String::from("Forbidden"), ), @@ -485,7 +485,8 @@ impl From for HttpError { // Need to construct an `HttpError` explicitly to present both // an internal and an external message. HttpError { - status_code: http::StatusCode::INSUFFICIENT_STORAGE, + status_code: + dropshot::ErrorStatusCode::INSUFFICIENT_STORAGE, error_code: Some(String::from("InsufficientCapacity")), external_message: format!( "Insufficient capacity: {}", @@ -503,7 +504,7 @@ impl From for HttpError { let (internal_message, external_message) = message.into_internal_external(); HttpError { - status_code: http::StatusCode::CONFLICT, + status_code: dropshot::ErrorStatusCode::CONFLICT, error_code: Some(String::from("Conflict")), external_message, internal_message, @@ -514,7 +515,7 @@ impl From for HttpError { let (internal_message, external_message) = message.into_internal_external(); HttpError { - status_code: http::StatusCode::NOT_FOUND, + status_code: dropshot::ErrorStatusCode::NOT_FOUND, error_code: Some(String::from("Not Found")), external_message, internal_message, @@ -523,7 +524,7 @@ impl From for HttpError { Error::Gone => HttpError::for_client_error( Some(String::from("Gone")), - http::StatusCode::GONE, + dropshot::ClientErrorStatusCode::GONE, String::from("Gone"), ), } diff --git a/dns-server/src/http_server.rs b/dns-server/src/http_server.rs index 87d576258f..edd10d0db6 100644 --- a/dns-server/src/http_server.rs +++ b/dns-server/src/http_server.rs @@ -64,7 +64,7 @@ impl From for dropshot::HttpError { let message = format!("{:#}", error); match &error { UpdateError::BadUpdateGeneration { .. } => dropshot::HttpError { - status_code: http::StatusCode::CONFLICT, + status_code: dropshot::ErrorStatusCode::CONFLICT, error_code: Some(String::from( ERROR_CODE_BAD_UPDATE_GENERATION, )), @@ -73,7 +73,7 @@ impl From for dropshot::HttpError { }, UpdateError::UpdateInProgress { .. } => dropshot::HttpError { - status_code: http::StatusCode::CONFLICT, + status_code: dropshot::ErrorStatusCode::CONFLICT, error_code: Some(String::from(ERROR_CODE_UPDATE_IN_PROGRESS)), external_message: message.clone(), internal_message: message, diff --git a/dns-server/src/lib.rs b/dns-server/src/lib.rs index b851e35541..d509524ee2 100644 --- a/dns-server/src/lib.rs +++ b/dns-server/src/lib.rs @@ -137,7 +137,7 @@ impl TransientServer { &dns_server::Config { bind_address: dns_bind_address }, &dropshot::ConfigDropshot { bind_address: "[::1]:0".parse().unwrap(), - request_body_max_bytes: 4 * 1024 * 1024, + default_request_body_max_bytes: 4 * 1024 * 1024, default_handler_task_mode: dropshot::HandlerTaskMode::Detached, log_headers: vec![], }, diff --git a/dns-server/tests/basic_test.rs b/dns-server/tests/basic_test.rs index 30026dc08c..06df402bca 100644 --- a/dns-server/tests/basic_test.rs +++ b/dns-server/tests/basic_test.rs @@ -508,7 +508,7 @@ fn test_config( dns_server::storage::Config { storage_path, keep_old_generations: 3 }; let config_dropshot = dropshot::ConfigDropshot { bind_address: "[::1]:0".to_string().parse().unwrap(), - request_body_max_bytes: 1024, + default_request_body_max_bytes: 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }; diff --git a/gateway/src/error.rs b/gateway/src/error.rs index ee148e0c98..7546a01c88 100644 --- a/gateway/src/error.rs +++ b/gateway/src/error.rs @@ -114,7 +114,7 @@ impl From for HttpError { )), .. } => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "UpdateSlotBusy", InlineErrorChain::new(&error).to_string(), ), @@ -125,29 +125,29 @@ impl From for HttpError { )), .. } => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "UpdateInProgress", InlineErrorChain::new(&error).to_string(), ), SpCommsError::SpAddressUnknown(_) => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "SpAddressUnknown", InlineErrorChain::new(&error).to_string(), ), SpCommsError::Timeout { .. } => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "Timeout ", InlineErrorChain::new(&error).to_string(), ), SpCommsError::SpCommunicationFailed { .. } => { http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "SpCommunicationFailed", InlineErrorChain::new(&error).to_string(), ) } SpCommsError::UpdateFailed { .. } => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "UpdateFailed", InlineErrorChain::new(&error).to_string(), ), @@ -163,12 +163,12 @@ impl From for HttpError { InlineErrorChain::new(&error).to_string(), ), SpLookupError::DiscoveryNotYetComplete => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "DiscoveryNotYetComplete", InlineErrorChain::new(&error).to_string(), ), SpLookupError::DiscoveryFailed { .. } => http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "DiscoveryFailed ", InlineErrorChain::new(&error).to_string(), ), @@ -181,7 +181,7 @@ impl From for HttpError { // status code, we want to give our caller some information about what is going // wrong (e.g., we timed out waiting for an SP). pub(crate) fn http_err_with_message( - status_code: http::StatusCode, + status_code: dropshot::ErrorStatusCode, error_code: &str, message: String, ) -> HttpError { diff --git a/gateway/src/http_entrypoints.rs b/gateway/src/http_entrypoints.rs index 5746fbbf2e..7a90bdb43f 100644 --- a/gateway/src/http_entrypoints.rs +++ b/gateway/src/http_entrypoints.rs @@ -236,7 +236,7 @@ impl GatewayApi for GatewayImpl { let key = str::from_utf8(key).unwrap(); String::from_utf8(bytes).map_err(|_| { http_err_with_message( - http::StatusCode::SERVICE_UNAVAILABLE, + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, "InvalidCaboose", format!("non-utf8 data returned for caboose key {key}"), ) diff --git a/gateway/src/lib.rs b/gateway/src/lib.rs index 35eb3dbc79..5450c4fb40 100644 --- a/gateway/src/lib.rs +++ b/gateway/src/lib.rs @@ -91,7 +91,7 @@ fn start_dropshot_server( Entry::Vacant(slot) => { let dropshot = ConfigDropshot { bind_address: SocketAddr::V6(addr), - request_body_max_bytes, + default_request_body_max_bytes: request_body_max_bytes, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }; diff --git a/illumos-utils/src/lib.rs b/illumos-utils/src/lib.rs index e719b64776..6eef2f619a 100644 --- a/illumos-utils/src/lib.rs +++ b/illumos-utils/src/lib.rs @@ -78,7 +78,7 @@ impl From for HttpError { fn from(err: ExecutionError) -> Self { let message = InlineErrorChain::new(&err).to_string(); HttpError { - status_code: http::StatusCode::INTERNAL_SERVER_ERROR, + status_code: dropshot::ErrorStatusCode::INTERNAL_SERVER_ERROR, error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, diff --git a/installinator-api/src/lib.rs b/installinator-api/src/lib.rs index 487e5d786c..1b1c24c972 100644 --- a/installinator-api/src/lib.rs +++ b/installinator-api/src/lib.rs @@ -14,7 +14,7 @@ use dropshot::{ HttpResponseHeaders, HttpResponseOk, HttpResponseUpdatedNoContent, Path, RequestContext, TypedBody, }; -use hyper::{header, StatusCode}; +use hyper::header; use installinator_common::EventReport; use omicron_common::update::ArtifactHashId; use schemars::JsonSchema; @@ -99,7 +99,7 @@ impl EventReportStatus { EventReportStatus::UnrecognizedUpdateId => { Err(HttpError::for_client_error( None, - StatusCode::UNPROCESSABLE_ENTITY, + dropshot::ClientErrorStatusCode::UNPROCESSABLE_ENTITY, format!( "update ID {update_id} unrecognized by this server" ), @@ -108,7 +108,7 @@ impl EventReportStatus { EventReportStatus::ReceiverClosed => { Err(HttpError::for_client_error( None, - StatusCode::GONE, + dropshot::ClientErrorStatusCode::GONE, format!("update ID {update_id}: receiver closed"), )) } @@ -129,7 +129,7 @@ pub fn default_config(bind_address: std::net::SocketAddr) -> ConfigDropshot { // TODO: replace with an endpoint-specific option once // https://github.com/oxidecomputer/dropshot/pull/618 lands and is // available in omicron. - request_body_max_bytes: 4 * 1024 * 1024, + default_request_body_max_bytes: 4 * 1024 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], } diff --git a/internal-dns/resolver/src/resolver.rs b/internal-dns/resolver/src/resolver.rs index af47bb23ad..fa97a1d89e 100644 --- a/internal-dns/resolver/src/resolver.rs +++ b/internal-dns/resolver/src/resolver.rs @@ -466,7 +466,7 @@ mod test { }, &dropshot::ConfigDropshot { bind_address: "[::1]:0".parse().unwrap(), - request_body_max_bytes: 8 * 1024, + default_request_body_max_bytes: 8 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }, diff --git a/openapi/bootstrap-agent.json b/openapi/bootstrap-agent.json index 32fe2f0d8e..05b9dc4962 100644 --- a/openapi/bootstrap-agent.json +++ b/openapi/bootstrap-agent.json @@ -15,6 +15,26 @@ "summary": "Return the baseboard identity of this sled.", "operationId": "baseboard_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -24,12 +44,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -40,6 +54,26 @@ "description": "This API is intended to allow early boot services (such as Wicket) to query the underlying component versions installed on a sled.", "operationId": "components_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -53,12 +87,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -68,6 +96,26 @@ "summary": "Get the current status of rack initialization or reset.", "operationId": "rack_initialization_status", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -77,12 +125,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -100,6 +142,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -109,12 +171,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -122,6 +178,26 @@ "summary": "Reset the rack to an unconfigured state.", "operationId": "rack_reset", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -131,12 +207,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -146,14 +216,28 @@ "summary": "Reset this particular sled to an unconfigured state.", "operationId": "sled_reset", "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1616,18 +1700,6 @@ "minLength": 1, "maxLength": 63 } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/clickhouse-admin-keeper.json b/openapi/clickhouse-admin-keeper.json index a9539f4c16..2291748c51 100644 --- a/openapi/clickhouse-admin-keeper.json +++ b/openapi/clickhouse-admin-keeper.json @@ -15,6 +15,26 @@ "summary": "Retrieve configuration information from a keeper node.", "operationId": "keeper_conf", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -24,12 +44,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -40,6 +54,26 @@ "description": "This information is used internally by ZooKeeper to manage snapshots and logs for consistency and recovery.", "operationId": "lgif", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -49,12 +83,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -64,6 +92,26 @@ "summary": "Retrieve cluster membership information from a keeper node.", "operationId": "keeper_cluster_membership", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -73,12 +121,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -99,6 +141,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -108,12 +170,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -124,6 +180,26 @@ "description": "contains last committed cluster configuration.", "operationId": "raft_config", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -133,12 +209,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -881,18 +951,6 @@ "servers" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/clickhouse-admin-server.json b/openapi/clickhouse-admin-server.json index c82c7c0d8e..31b5222416 100644 --- a/openapi/clickhouse-admin-server.json +++ b/openapi/clickhouse-admin-server.json @@ -26,6 +26,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -35,12 +55,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -51,6 +65,26 @@ "description": "that were executed on a cluster.", "operationId": "distributed_ddl_queue", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -64,12 +98,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -128,6 +156,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -141,12 +189,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -655,18 +697,6 @@ "unix_epoch" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/clickhouse-admin-single.json b/openapi/clickhouse-admin-single.json index b00bf56314..06d4fd04d8 100644 --- a/openapi/clickhouse-admin-single.json +++ b/openapi/clickhouse-admin-single.json @@ -15,14 +15,28 @@ "summary": "Idempotently initialize a single-node ClickHouse database.", "operationId": "init_db", "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -81,6 +95,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -94,12 +128,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -170,18 +198,6 @@ "unix_epoch" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/cockroach-admin.json b/openapi/cockroach-admin.json index 76c0bea09b..90c9e7df4a 100644 --- a/openapi/cockroach-admin.json +++ b/openapi/cockroach-admin.json @@ -25,6 +25,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -34,12 +54,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -49,6 +63,26 @@ "summary": "Get the CockroachDB node ID of the local cockroach instance.", "operationId": "local_node_id", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -58,12 +92,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -73,6 +101,26 @@ "summary": "Get the status of all nodes in the CRDB cluster.", "operationId": "node_status", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -82,12 +130,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -312,18 +354,6 @@ "type": "string", "format": "uuid" } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/dns-server.json b/openapi/dns-server.json index 30bf9acf9e..91ad62ffbd 100644 --- a/openapi/dns-server.json +++ b/openapi/dns-server.json @@ -14,6 +14,26 @@ "get": { "operationId": "dns_config_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -23,12 +43,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -45,14 +59,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -246,18 +274,6 @@ "weight" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/gateway.json b/openapi/gateway.json index b1a7adc96e..1e935b5547 100644 --- a/openapi/gateway.json +++ b/openapi/gateway.json @@ -16,6 +16,26 @@ "description": "Retreive information for all SPs via the Ignition controller. This is lower latency and has fewer possible failure modes than querying the SP over the management network.", "operationId": "ignition_list", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -29,12 +49,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -65,6 +79,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -74,12 +108,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -119,14 +147,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -137,6 +179,26 @@ "description": "find and communicate with.\n\nNote that unlike most MGS endpoints, this endpoint does not send any communication on the management network.", "operationId": "sp_all_ids", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -150,12 +212,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -166,6 +222,26 @@ "description": "Note that most MGS endpoints behave identically regardless of which scrimlet the MGS instance is running on; this one, however, is intentionally different. This endpoint is _probably_ only useful for clients communicating with MGS over localhost (i.e., other services in the switch zone) who need to know which sidecar they are connected to.", "operationId": "sp_local_switch_id", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -175,12 +251,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -202,6 +272,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -211,12 +301,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -246,6 +330,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -255,12 +359,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -291,6 +389,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -300,12 +418,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -345,6 +457,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -358,12 +490,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -403,6 +529,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -412,12 +558,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -474,14 +614,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -532,6 +686,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -541,12 +715,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -596,6 +764,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -605,12 +793,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -650,14 +832,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -697,6 +893,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -706,12 +922,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -750,14 +960,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -807,6 +1031,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -816,12 +1060,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -864,8 +1102,28 @@ "default": { "description": "", "content": { - "*/*": { - "schema": {} + "*/*": { + "schema": {} + } + } + }, + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } } } } @@ -908,14 +1166,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -987,14 +1259,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1044,14 +1330,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1091,6 +1391,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1100,12 +1420,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1136,6 +1450,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1145,12 +1479,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1178,14 +1506,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1226,14 +1568,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } }, @@ -1261,14 +1617,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1299,6 +1669,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1308,12 +1698,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1352,14 +1736,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1401,6 +1799,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1410,12 +1828,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1446,6 +1858,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1455,12 +1887,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1499,14 +1925,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -3460,18 +3900,6 @@ "power_reset" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/installinator.json b/openapi/installinator.json index 6419760fbd..981f5e98d0 100644 --- a/openapi/installinator.json +++ b/openapi/installinator.json @@ -36,6 +36,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -43,12 +63,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -81,14 +95,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -2311,18 +2339,6 @@ "slots_written" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/nexus-internal.json b/openapi/nexus-internal.json index 5c39652aa3..70a8b96f08 100644 --- a/openapi/nexus-internal.json +++ b/openapi/nexus-internal.json @@ -44,6 +44,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -51,12 +71,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -67,6 +81,26 @@ "description": "This is a list of discrete background activities that Nexus carries out. This is exposed for support and debugging.", "operationId": "bgtask_list", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -80,12 +114,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -106,14 +134,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -134,6 +176,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -143,12 +205,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -158,6 +214,26 @@ "summary": "Get the current clickhouse policy", "operationId": "clickhouse_policy_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -167,12 +243,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -190,14 +260,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -236,14 +320,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -282,14 +380,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -327,14 +439,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -364,14 +490,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -401,14 +541,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -419,6 +573,26 @@ "description": "This saga is used for demo and testing. The saga just waits until you complete using the `saga_demo_complete` API.", "operationId": "saga_demo_create", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -428,12 +602,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -454,14 +622,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -500,6 +682,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -509,12 +711,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -539,6 +735,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -548,12 +764,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -573,14 +783,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -598,17 +822,31 @@ } } }, - "required": true - }, - "responses": { + "required": true + }, + "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "204": { "description": "resource updated" - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -619,6 +857,26 @@ "description": "that's changed since the last one was generated", "operationId": "blueprint_regenerate", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -628,12 +886,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -643,6 +895,26 @@ "summary": "Fetches the current target blueprint, if any", "operationId": "blueprint_target_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -652,12 +924,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -675,6 +941,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -684,12 +970,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -709,6 +989,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -718,12 +1018,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -745,14 +1039,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -783,14 +1091,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -820,6 +1142,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -829,12 +1171,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -854,14 +1190,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -910,6 +1260,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -919,12 +1289,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -947,6 +1311,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -956,12 +1340,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -994,6 +1372,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1007,12 +1405,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1033,14 +1425,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1079,15 +1485,35 @@ "type": "string" } }, - { - "in": "query", - "name": "sort_by", - "schema": { - "$ref": "#/components/schemas/IdSortMode" + { + "in": "query", + "name": "sort_by", + "schema": { + "$ref": "#/components/schemas/IdSortMode" + } + } + ], + "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } } - } - ], - "responses": { + }, "200": { "description": "successful operation", "content": { @@ -1101,12 +1527,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1141,14 +1561,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1187,6 +1621,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1196,12 +1650,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1225,6 +1673,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1234,12 +1702,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1259,6 +1721,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1268,12 +1750,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1301,14 +1777,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1329,14 +1819,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1356,6 +1860,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -1365,12 +1889,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1391,6 +1909,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1400,12 +1938,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1415,6 +1947,26 @@ "summary": "List uninitialized sleds", "operationId": "sled_list_uninitialized", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1424,12 +1976,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1459,6 +2005,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1468,12 +2034,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1503,14 +2063,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1532,14 +2106,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -6097,18 +6685,6 @@ "type": "string", "format": "uuid" } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/nexus.json b/openapi/nexus.json index 79186e379a..d0f6a4e52a 100644 --- a/openapi/nexus.json +++ b/openapi/nexus.json @@ -36,6 +36,26 @@ "schema": {} } } + }, + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } } } } @@ -59,14 +79,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -97,6 +131,26 @@ "schema": {} } } + }, + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } } } } @@ -146,6 +200,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -155,12 +229,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -197,6 +265,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -206,12 +294,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -244,6 +326,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -253,12 +355,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -289,14 +385,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -338,6 +448,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "303": { "description": "redirect (see other)", "headers": { @@ -350,12 +480,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -398,6 +522,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -407,12 +551,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -437,6 +575,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -446,12 +604,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -476,6 +628,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -485,12 +657,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -513,14 +679,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -570,6 +750,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -579,12 +779,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -621,25 +815,39 @@ "required": true }, "responses": { - "201": { - "description": "successful creation", + "4XX": { + "description": "client error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Disk" + "$ref": "#/components/schemas/Error" } } } }, - "4XX": { - "$ref": "#/components/responses/Error" - }, "5XX": { - "$ref": "#/components/responses/Error" - } - } - } - }, + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "201": { + "description": "successful creation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Disk" + } + } + } + } + } + } + }, "/v1/disks/{disk}": { "get": { "tags": [ @@ -667,6 +875,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -676,12 +904,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -711,14 +933,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -760,14 +996,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -800,14 +1050,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -840,14 +1104,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -889,14 +1167,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -981,6 +1273,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -990,12 +1302,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1051,6 +1357,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1060,12 +1386,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1102,6 +1422,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -1111,12 +1451,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1148,6 +1482,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1157,12 +1511,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1202,6 +1550,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1211,12 +1579,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1246,14 +1608,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -1296,23 +1672,37 @@ "required": true }, "responses": { - "202": { - "description": "successfully enqueued operation", + "4XX": { + "description": "client error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/FloatingIp" + "$ref": "#/components/schemas/Error" } } } }, - "4XX": { - "$ref": "#/components/responses/Error" - }, "5XX": { - "$ref": "#/components/responses/Error" - } - } + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "202": { + "description": "successfully enqueued operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FloatingIp" + } + } + } + } + } } }, "/v1/floating-ips/{floating_ip}/detach": { @@ -1342,6 +1732,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -1351,12 +1761,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1398,6 +1802,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1407,12 +1831,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1440,6 +1858,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1449,12 +1887,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1505,6 +1937,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1514,12 +1966,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1554,6 +2000,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -1563,12 +2029,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1601,6 +2061,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1610,12 +2090,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1646,14 +2120,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -1687,6 +2175,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -1696,12 +2204,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1734,6 +2236,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -1743,12 +2265,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1798,6 +2314,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1807,12 +2343,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1849,6 +2379,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -1858,12 +2408,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1895,6 +2439,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1904,12 +2468,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1949,6 +2507,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1958,12 +2536,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1993,14 +2565,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -2059,6 +2645,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -2068,12 +2674,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -2118,6 +2718,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -2127,12 +2747,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2174,6 +2788,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -2183,12 +2817,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2220,6 +2848,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -2229,12 +2877,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2276,6 +2918,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -2285,12 +2947,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -2320,14 +2976,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -2359,6 +3029,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -2368,12 +3058,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2438,6 +3122,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -2447,12 +3151,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2502,6 +3200,26 @@ "schema": {} } } + }, + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } } }, "x-dropshot-websocket": {} @@ -2562,6 +3280,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -2571,12 +3309,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -2611,6 +3343,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -2620,12 +3372,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2657,21 +3403,35 @@ } ], "responses": { - "202": { - "description": "successfully enqueued operation", + "4XX": { + "description": "client error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Instance" + "$ref": "#/components/schemas/Error" } } } }, - "4XX": { - "$ref": "#/components/responses/Error" - }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "202": { + "description": "successfully enqueued operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Instance" + } + } + } } } } @@ -2737,6 +3497,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -2746,12 +3526,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -2804,6 +3578,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -2813,12 +3607,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -2874,14 +3662,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -2947,6 +3749,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -2956,12 +3778,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3014,6 +3830,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -3023,12 +3859,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -3084,14 +3914,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -3149,6 +3993,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3158,12 +4022,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3208,6 +4066,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -3217,12 +4095,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -3262,6 +4134,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3271,12 +4163,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -3322,14 +4208,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -3371,6 +4271,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3380,12 +4300,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3412,6 +4326,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3421,12 +4355,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -3459,14 +4387,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" - }, + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -3479,14 +4421,28 @@ "summary": "Log user out of web console by deleting session on client and server", "operationId": "logout", "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -3499,6 +4455,26 @@ "summary": "Fetch user for current session", "operationId": "current_user_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3508,12 +4484,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -3555,6 +4525,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3564,12 +4554,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3615,6 +4599,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3624,12 +4628,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3654,6 +4652,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -3663,12 +4681,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -3693,6 +4705,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3702,12 +4734,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -3730,14 +4756,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -3815,6 +4855,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3824,12 +4884,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3893,6 +4947,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -3902,12 +4976,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3952,6 +5020,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -3961,12 +5049,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4006,6 +5088,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4015,12 +5117,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -4068,6 +5164,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4077,12 +5193,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -4121,14 +5231,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" - }, + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -4142,6 +5266,26 @@ "description": "Always responds with Ok if it responds at all.", "operationId": "ping", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4151,12 +5295,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4169,6 +5307,26 @@ "summary": "Fetch current silo's IAM policy", "operationId": "policy_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4178,12 +5336,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -4204,6 +5356,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4213,12 +5385,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4260,6 +5426,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4269,12 +5455,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4298,6 +5478,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -4307,12 +5507,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4336,6 +5530,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4345,12 +5559,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -4382,6 +5590,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4391,12 +5619,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -4418,14 +5640,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -4449,6 +5685,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4458,12 +5714,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -4495,6 +5745,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4504,12 +5774,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4559,6 +5823,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4568,12 +5852,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4611,6 +5889,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -4620,12 +5918,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4657,21 +5949,35 @@ } ], "responses": { - "200": { - "description": "successful operation", + "4XX": { + "description": "client error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Snapshot" + "$ref": "#/components/schemas/Error" } } } }, - "4XX": { - "$ref": "#/components/responses/Error" - }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Snapshot" + } + } + } } } }, @@ -4701,14 +6007,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -4750,6 +6070,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4759,12 +6099,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4792,6 +6126,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4801,12 +6155,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4848,6 +6196,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4857,12 +6225,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4890,6 +6252,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4899,12 +6281,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -4946,6 +6322,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -4955,12 +6351,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4984,6 +6374,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -4993,12 +6403,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5023,6 +6427,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5032,12 +6456,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5089,6 +6507,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5098,12 +6536,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5158,6 +6590,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5167,12 +6619,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5210,6 +6656,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5219,12 +6685,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5259,6 +6719,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5268,12 +6748,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5328,6 +6802,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5337,12 +6831,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5398,14 +6886,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } }, @@ -5446,14 +6948,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -5496,6 +7012,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5505,12 +7041,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5552,6 +7082,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5561,12 +7111,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5594,6 +7138,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5603,12 +7167,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5658,6 +7216,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5667,12 +7245,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5712,6 +7284,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -5721,12 +7313,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5760,14 +7346,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -5812,14 +7412,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -5853,6 +7467,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -5862,12 +7496,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5900,6 +7528,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5909,12 +7557,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -5956,6 +7598,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -5965,12 +7627,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5991,9 +7647,29 @@ } } }, - "required": true - }, - "responses": { + "required": true + }, + "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -6003,12 +7679,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6032,6 +7702,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6041,12 +7731,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -6078,6 +7762,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6087,12 +7791,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -6114,14 +7812,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -6166,6 +7878,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6175,12 +7907,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6218,6 +7944,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -6227,12 +7973,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6266,14 +8006,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -6324,6 +8078,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6333,12 +8107,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6374,6 +8142,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -6383,12 +8171,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6430,6 +8212,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6439,12 +8241,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -6474,14 +8270,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -6505,6 +8315,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6514,12 +8344,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6532,6 +8356,26 @@ "summary": "Fetch Oxide service IP pool", "operationId": "ip_pool_service_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6541,12 +8385,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6582,6 +8420,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6591,12 +8449,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6623,6 +8475,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -6632,12 +8504,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6660,14 +8526,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -6745,6 +8625,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6754,12 +8654,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6807,6 +8701,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6816,12 +8730,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6845,6 +8753,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -6854,12 +8782,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6883,14 +8805,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -6941,6 +8877,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6950,12 +8906,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6971,6 +8921,26 @@ "summary": "Get user-facing services IP allowlist", "operationId": "networking_allow_list_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -6980,12 +8950,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -7006,6 +8970,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7015,12 +8999,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7043,14 +9021,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -7073,14 +9065,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -7093,6 +9099,26 @@ "summary": "Get BFD status", "operationId": "networking_bfd_status", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7106,12 +9132,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7153,21 +9173,35 @@ } ], "responses": { - "200": { - "description": "successful operation", + "4XX": { + "description": "client error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/BgpConfigResultsPage" + "$ref": "#/components/schemas/Error" } } } }, - "4XX": { - "$ref": "#/components/responses/Error" - }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BgpConfigResultsPage" + } + } + } } }, "x-dropshot-pagination": { @@ -7191,6 +9225,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -7200,12 +9254,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -7227,14 +9275,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -7276,6 +9338,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7289,12 +9371,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7319,6 +9395,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -7328,12 +9424,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7357,14 +9447,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -7388,6 +9492,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7401,12 +9525,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7419,6 +9537,26 @@ "summary": "Get BGP exported routes", "operationId": "networking_bgp_exported", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7428,12 +9566,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7459,6 +9591,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7468,12 +9620,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7499,6 +9645,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7512,12 +9678,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7530,6 +9690,26 @@ "summary": "Get BGP peer status", "operationId": "networking_bgp_status", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7543,12 +9723,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7590,6 +9764,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7599,12 +9793,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7628,6 +9816,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -7637,12 +9845,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7697,14 +9899,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -7754,6 +9970,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7763,12 +9999,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7792,6 +10022,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -7801,12 +10051,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -7827,14 +10071,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -7858,6 +10116,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7867,12 +10145,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7885,6 +10157,26 @@ "summary": "Fetch top-level IAM policy", "operationId": "system_policy_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7894,12 +10186,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -7920,6 +10206,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7929,12 +10235,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -7969,6 +10269,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -7978,12 +10298,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8010,6 +10324,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8019,12 +10353,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8066,6 +10394,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8075,12 +10423,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8126,6 +10468,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8135,12 +10497,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8164,6 +10520,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -8173,12 +10549,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8203,6 +10573,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8212,12 +10602,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -8240,14 +10624,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, - "5XX": { - "$ref": "#/components/responses/Error" + "204": { + "description": "successful deletion" } } } @@ -8299,6 +10697,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8308,12 +10726,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8340,6 +10752,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8349,12 +10781,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -8386,6 +10812,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8395,12 +10841,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8424,6 +10864,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8433,12 +10893,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -8471,6 +10925,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8480,12 +10954,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8509,6 +10977,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8518,12 +11006,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8558,6 +11040,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8567,12 +11069,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8625,6 +11121,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8634,12 +11150,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8678,6 +11188,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8687,12 +11217,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8734,6 +11258,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8743,12 +11287,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8774,6 +11312,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8783,12 +11341,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8830,6 +11382,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8839,12 +11411,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8871,6 +11437,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8880,12 +11466,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -8936,6 +11516,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8945,12 +11545,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8966,6 +11560,26 @@ "summary": "Fetch resource utilization for user's current silo", "operationId": "utilization_view", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -8975,12 +11589,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -9012,6 +11620,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9021,12 +11649,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9067,6 +11689,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9076,12 +11718,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -9148,6 +11784,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9157,12 +11813,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -9215,6 +11865,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -9224,12 +11894,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -9278,6 +11942,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9287,12 +11971,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9348,6 +12026,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9357,12 +12055,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9408,14 +12100,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -9473,6 +12179,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9482,12 +12208,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -9532,6 +12252,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -9541,12 +12281,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -9586,6 +12320,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9595,12 +12349,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9645,9 +12393,29 @@ } } }, - "required": true - }, - "responses": { + "required": true + }, + "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9657,12 +12425,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9700,14 +12462,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -9765,6 +12541,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9774,12 +12570,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -9824,6 +12614,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -9833,12 +12643,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -9878,6 +12682,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9887,12 +12711,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9940,6 +12758,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -9949,12 +12787,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -9992,14 +12824,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -10066,6 +12912,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -10075,12 +12941,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10133,6 +12993,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -10142,12 +13022,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10184,6 +13058,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -10193,12 +13087,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -10230,6 +13118,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -10239,12 +13147,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -10284,6 +13186,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -10293,12 +13215,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -10328,14 +13244,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -22511,18 +25441,6 @@ } ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } }, "tags": [ diff --git a/openapi/oximeter.json b/openapi/oximeter.json index dea3418b8d..4f401aa91e 100644 --- a/openapi/oximeter.json +++ b/openapi/oximeter.json @@ -15,6 +15,26 @@ "summary": "Return identifying information about this collector.", "operationId": "collector_info", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -24,12 +44,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -61,6 +75,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -70,12 +104,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -99,14 +127,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -262,18 +304,6 @@ } ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/repo-depot.json b/openapi/repo-depot.json index 0c0019cf8d..21eedb1ef4 100644 --- a/openapi/repo-depot.json +++ b/openapi/repo-depot.json @@ -26,6 +26,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -33,12 +53,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -65,18 +79,6 @@ "request_id" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/sled-agent.json b/openapi/sled-agent.json index 14a4c92692..0647ed2193 100644 --- a/openapi/sled-agent.json +++ b/openapi/sled-agent.json @@ -14,6 +14,26 @@ "get": { "operationId": "artifact_list", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -29,12 +49,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -65,6 +79,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -74,12 +108,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -97,14 +125,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -134,6 +176,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "202": { "description": "successfully enqueued operation", "content": { @@ -143,12 +205,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -197,14 +253,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -223,6 +293,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -232,12 +322,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -266,14 +350,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -283,6 +381,26 @@ "summary": "Get the internal state of the local bootstore node", "operationId": "bootstore_status", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -292,12 +410,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -307,14 +419,28 @@ "summary": "Initializes a CockroachDB cluster", "operationId": "cockroachdb_init", "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -324,6 +450,26 @@ "summary": "Lists the datasets that this sled is configured to use", "operationId": "datasets_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -333,12 +479,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -356,6 +496,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -365,12 +525,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -400,6 +554,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -409,12 +583,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -434,14 +602,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -451,21 +633,35 @@ "summary": "Fetch basic information about this sled", "operationId": "inventory", "responses": { - "200": { - "description": "successful operation", + "4XX": { + "description": "client error", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Inventory" + "$ref": "#/components/schemas/Error" } } } }, - "4XX": { - "$ref": "#/components/responses/Error" - }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Inventory" + } + } + } } } } @@ -476,6 +672,26 @@ "description": "bootstore. The boostore is a distributed data store that is eventually consistent. Reads from individual nodes may not represent the latest state.", "operationId": "read_network_bootstore_config_cache", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -485,12 +701,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -507,14 +717,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -523,6 +747,26 @@ "get": { "operationId": "omicron_physical_disks_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -532,12 +776,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -554,6 +792,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -563,12 +821,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -587,14 +839,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -604,6 +870,26 @@ "summary": "Fetch sled identifiers", "operationId": "sled_identifiers", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -613,12 +899,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -627,6 +907,26 @@ "get": { "operationId": "sled_role_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -636,12 +936,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -661,14 +955,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -677,6 +985,26 @@ "get": { "operationId": "support_dladm_info", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -684,12 +1012,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -698,6 +1020,26 @@ "get": { "operationId": "support_ipadm_info", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -705,12 +1047,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -719,6 +1055,26 @@ "get": { "operationId": "support_zoneadm_info", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -726,12 +1082,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -761,6 +1111,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -774,12 +1144,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -835,6 +1199,26 @@ "schema": {} } } + }, + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } } } }, @@ -891,6 +1275,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -900,12 +1304,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -942,14 +1340,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } }, @@ -1003,6 +1415,26 @@ "schema": {} } } + }, + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } } } } @@ -1021,14 +1453,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1037,6 +1483,26 @@ "get": { "operationId": "timesync_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1046,12 +1512,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1070,14 +1530,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1087,6 +1561,26 @@ "summary": "List v2p mappings present on sled", "operationId": "list_v2p", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1100,12 +1594,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1123,14 +1611,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } }, @@ -1148,14 +1650,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1184,6 +1700,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1193,12 +1729,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1215,6 +1745,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1224,12 +1774,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1268,6 +1812,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1277,12 +1841,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1311,14 +1869,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } }, @@ -1345,14 +1917,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1371,6 +1957,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1380,12 +1986,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1412,6 +2012,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1421,12 +2041,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1456,23 +2070,57 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "204": { "description": "resource updated" - }, + } + } + } + }, + "/vpc-routes": { + "get": { + "summary": "Get the current versions of VPC routing rules.", + "operationId": "list_vpc_routes", + "responses": { "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, - "5XX": { - "$ref": "#/components/responses/Error" - } - } - } - }, - "/vpc-routes": { - "get": { - "summary": "Get the current versions of VPC routing rules.", - "operationId": "list_vpc_routes", - "responses": { "200": { "description": "successful operation", "content": { @@ -1486,12 +2134,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1513,14 +2155,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1530,6 +2186,26 @@ "summary": "List the zones that are currently managed by the sled agent.", "operationId": "zones_list", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1543,12 +2219,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1558,6 +2228,26 @@ "summary": "Trigger a zone bundle cleanup.", "operationId": "zone_bundle_cleanup", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1571,12 +2261,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1586,6 +2270,26 @@ "summary": "Return context used by the zone-bundle cleanup task.", "operationId": "zone_bundle_cleanup_context", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1595,12 +2299,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1618,14 +2316,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -1635,6 +2347,26 @@ "summary": "Return utilization information about all zone bundles.", "operationId": "zone_bundle_utilization", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1648,12 +2380,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1674,6 +2400,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1687,12 +2433,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1713,6 +2453,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1726,12 +2486,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1750,6 +2504,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "201": { "description": "successful creation", "content": { @@ -1759,12 +2533,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -1795,6 +2563,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "", "content": { @@ -1802,12 +2590,6 @@ "schema": {} } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -1836,14 +2618,28 @@ } ], "responses": { - "204": { - "description": "successful deletion" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "successful deletion" } } } @@ -1852,6 +2648,26 @@ "get": { "operationId": "zpools_get", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -1865,12 +2681,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6477,18 +7287,6 @@ "type": "string", "format": "uuid" } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/openapi/wicketd.json b/openapi/wicketd.json index 0b3c4d7c9e..621f529ab3 100644 --- a/openapi/wicketd.json +++ b/openapi/wicketd.json @@ -46,14 +46,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -64,6 +78,26 @@ "description": "The order of the returned artifacts is unspecified, and may change between calls even if the total set of artifacts has not.", "operationId": "get_artifacts_and_event_reports", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -73,12 +107,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -88,6 +116,26 @@ "summary": "Report the configured baseboard details.", "operationId": "get_baseboard", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -97,12 +145,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -112,6 +154,26 @@ "summary": "Get wicketd's current view of all sleds visible on the bootstrap network.", "operationId": "get_bootstrap_sleds", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -121,12 +183,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -147,6 +203,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -156,12 +232,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -200,14 +270,28 @@ } ], "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -228,6 +312,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -237,12 +341,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -253,6 +351,26 @@ "description": "connected to.", "operationId": "get_location", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -262,12 +380,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -278,6 +390,26 @@ "description": "check.", "operationId": "get_preflight_uplink_report", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -287,12 +419,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -310,14 +436,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -327,6 +467,26 @@ "summary": "Query current state of rack setup.", "operationId": "get_rack_setup_state", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -336,12 +496,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -350,6 +504,26 @@ "description": "Will return an error if not all of the rack setup configuration has been populated.", "operationId": "post_run_rack_setup", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -359,12 +533,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -372,6 +540,26 @@ "summary": "Run rack reset.", "operationId": "post_run_rack_reset", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -381,12 +569,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -397,6 +579,26 @@ "description": "some cases) RSS configuration.", "operationId": "get_rss_config", "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -406,12 +608,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } }, @@ -430,14 +626,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } }, @@ -445,14 +655,28 @@ "summary": "Reset all RSS configuration to their default values.", "operationId": "delete_rss_config", "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -473,6 +697,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -482,12 +726,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -517,6 +755,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -526,12 +784,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -553,6 +805,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -562,12 +834,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -589,6 +855,26 @@ "required": true }, "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -598,12 +884,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -623,14 +903,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -641,14 +935,28 @@ "description": "The only expected client of this endpoint is `curl` from wicketd's SMF `refresh` method, but other clients hitting it is harmless.", "operationId": "post_reload_config", "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -670,14 +978,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -697,14 +1019,28 @@ "required": true }, "responses": { - "204": { - "description": "resource updated" - }, "4XX": { - "$ref": "#/components/responses/Error" + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } }, "5XX": { - "$ref": "#/components/responses/Error" + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "204": { + "description": "resource updated" } } } @@ -735,6 +1071,26 @@ } ], "responses": { + "4XX": { + "description": "client error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "5XX": { + "description": "server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, "200": { "description": "successful operation", "content": { @@ -744,12 +1100,6 @@ } } } - }, - "4XX": { - "$ref": "#/components/responses/Error" - }, - "5XX": { - "$ref": "#/components/responses/Error" } } } @@ -6744,18 +7094,6 @@ "power_reset" ] } - }, - "responses": { - "Error": { - "description": "Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - } } } } diff --git a/oximeter/instruments/src/http.rs b/oximeter/instruments/src/http.rs index efd053ad66..de5f71f96d 100644 --- a/oximeter/instruments/src/http.rs +++ b/oximeter/instruments/src/http.rs @@ -171,16 +171,17 @@ impl LatencyTracker { let latency = start.elapsed(); let status_code = match &result { Ok(response) => response.status_code(), - Err(ref e) => e.status_code, + Err(ref e) => e.status_code.as_status(), }; - if let Err(e) = self.update(&context.operation_id, status_code, latency) + if let Err(e) = + self.update(&context.endpoint.operation_id, status_code, latency) { slog::error!( &context.log, "error instrumenting dropshot handler"; "error" => ?e, "status_code" => status_code.as_u16(), - "operation_id" => &context.operation_id, + "operation_id" => &context.endpoint.operation_id, "remote_addr" => context.request.remote_addr(), "latency" => ?latency, ); diff --git a/oximeter/producer/src/lib.rs b/oximeter/producer/src/lib.rs index 42d2b03808..e28ab86ac8 100644 --- a/oximeter/producer/src/lib.rs +++ b/oximeter/producer/src/lib.rs @@ -216,7 +216,7 @@ impl Server { let log = Self::build_logger(log)?; let dropshot = ConfigDropshot { bind_address: server_info.address, - request_body_max_bytes, + default_request_body_max_bytes: request_body_max_bytes, default_handler_task_mode: dropshot::HandlerTaskMode::Detached, log_headers: vec![], }; @@ -509,7 +509,7 @@ mod tests { ServerBuilder::new(api, Arc::new(AtomicU32::new(0)), log.clone()) .config(ConfigDropshot { bind_address: "[::1]:0".parse().unwrap(), - request_body_max_bytes: 2048, + default_request_body_max_bytes: 2048, ..Default::default() }) .start() diff --git a/sled-agent/src/sim/storage.rs b/sled-agent/src/sim/storage.rs index dc8cf63fe4..8756d640e1 100644 --- a/sled-agent/src/sim/storage.rs +++ b/sled-agent/src/sim/storage.rs @@ -981,7 +981,7 @@ impl Storage { if stored_config.generation > config.generation { return Err(HttpError::for_client_error( None, - http::StatusCode::BAD_REQUEST, + dropshot::ClientErrorStatusCode::BAD_REQUEST, "Generation number too old".to_string(), )); } else if stored_config.generation == config.generation @@ -989,7 +989,7 @@ impl Storage { { return Err(HttpError::for_client_error( None, - http::StatusCode::BAD_REQUEST, + dropshot::ClientErrorStatusCode::BAD_REQUEST, "Generation number unchanged but data is different" .to_string(), )); @@ -1672,7 +1672,7 @@ impl PantryServer { bind_address: SocketAddr::new(ip, 0), // This has to be large enough to support: // - bulk writes into disks - request_body_max_bytes: 8192 * 1024, + default_request_body_max_bytes: 8192 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }) diff --git a/wicketd/src/http_entrypoints.rs b/wicketd/src/http_entrypoints.rs index ada8422de4..da0dc6dbf7 100644 --- a/wicketd/src/http_entrypoints.rs +++ b/wicketd/src/http_entrypoints.rs @@ -220,7 +220,8 @@ impl WicketdApi for WicketdApiImpl { let message = format!("Failed to send rack setup request: {err}"); HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, @@ -274,7 +275,8 @@ impl WicketdApi for WicketdApiImpl { let message = format!("Failed to send rack setup request: {err}"); HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, @@ -320,7 +322,8 @@ impl WicketdApi for WicketdApiImpl { let message = format!("Failed to send rack reset request: {err}"); HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: + dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, @@ -484,7 +487,7 @@ impl WicketdApi for WicketdApiImpl { "Rack inventory not yet available (is MGS alive?)" .to_owned(); return Err(HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, @@ -779,7 +782,7 @@ impl WicketdApi for WicketdApiImpl { Ok(()) => Ok(HttpResponseUpdatedNoContent {}), Err(err) => Err(HttpError::for_client_error( None, - StatusCode::TOO_MANY_REQUESTS, + dropshot::ClientErrorStatusCode::TOO_MANY_REQUESTS, err.to_string(), )), } @@ -864,7 +867,12 @@ fn http_error_from_client_error( ) -> HttpError { // Most errors have a status code; the only one that definitely doesn't is // `Error::InvalidRequest`, for which we'll use `BAD_REQUEST`. - let status_code = err.status().unwrap_or(StatusCode::BAD_REQUEST); + let status_code = err + .status() + .map(|status| { + status.try_into().expect("status code must be a client error") + }) + .unwrap_or(dropshot::ErrorStatusCode::BAD_REQUEST); let message = format!("request to MGS failed: {err}"); diff --git a/wicketd/src/lib.rs b/wicketd/src/lib.rs index 4292f2e0d7..66db255f1f 100644 --- a/wicketd/src/lib.rs +++ b/wicketd/src/lib.rs @@ -133,7 +133,7 @@ impl Server { // The maximum request size is set to 4 GB -- artifacts can be large // and there's currently no way to set a larger request size for // some endpoints. - request_body_max_bytes: 4 << 30, + default_request_body_max_bytes: 4 << 30, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }; From b1392f75e7b96b91e64ba28b9671c737e6064398 Mon Sep 17 00:00:00 2001 From: Eliza Weisman Date: Tue, 3 Dec 2024 12:11:22 -0800 Subject: [PATCH 2/8] update to pickup progenitor compat fixes As of oxidecomputer/dropshot@f0e6a46acbcb21774cc50ba24ee2faa0b9e060a3, the OpenAPI documents for APIs that don't use custom user-defined error types should be unchanged from the previous Dropshot release. This commit updates that and undoes the diff to the OpenAPI docs that broke progenitor. --- Cargo.lock | 8 +- openapi/bootstrap-agent.json | 166 +- openapi/clickhouse-admin-keeper.json | 142 +- openapi/clickhouse-admin-server.json | 90 +- openapi/clickhouse-admin-single.json | 62 +- openapi/cockroach-admin.json | 90 +- openapi/dns-server.json | 62 +- openapi/gateway.json | 792 +--- openapi/installinator.json | 62 +- openapi/nexus-internal.json | 1090 ++---- openapi/nexus.json | 5386 ++++++-------------------- openapi/oximeter.json | 88 +- openapi/repo-depot.json | 38 +- openapi/sled-agent.json | 1468 ++----- openapi/wicketd.json | 644 +-- 15 files changed, 2430 insertions(+), 7758 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cd1788c04c..02414810b9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -718,7 +718,7 @@ dependencies = [ "bitflags 2.6.0", "cexpr", "clang-sys", - "itertools 0.12.1", + "itertools 0.10.5", "lazy_static", "lazycell", "log", @@ -2601,7 +2601,7 @@ dependencies = [ [[package]] name = "dropshot" version = "0.13.0" -source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#c86d36881310d5c005972fdb83f77e0e4853278d" +source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#f0e6a46acbcb21774cc50ba24ee2faa0b9e060a3" dependencies = [ "async-stream", "async-trait", @@ -2665,7 +2665,7 @@ dependencies = [ [[package]] name = "dropshot_endpoint" version = "0.13.0" -source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#c86d36881310d5c005972fdb83f77e0e4853278d" +source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#f0e6a46acbcb21774cc50ba24ee2faa0b9e060a3" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -5101,7 +5101,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" dependencies = [ "cfg-if", - "windows-targets 0.52.6", + "windows-targets 0.48.5", ] [[package]] diff --git a/openapi/bootstrap-agent.json b/openapi/bootstrap-agent.json index 05b9dc4962..32fe2f0d8e 100644 --- a/openapi/bootstrap-agent.json +++ b/openapi/bootstrap-agent.json @@ -15,26 +15,6 @@ "summary": "Return the baseboard identity of this sled.", "operationId": "baseboard_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -44,6 +24,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -54,26 +40,6 @@ "description": "This API is intended to allow early boot services (such as Wicket) to query the underlying component versions installed on a sled.", "operationId": "components_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -87,6 +53,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -96,26 +68,6 @@ "summary": "Get the current status of rack initialization or reset.", "operationId": "rack_initialization_status", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -125,6 +77,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -142,26 +100,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -171,6 +109,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -178,26 +122,6 @@ "summary": "Reset the rack to an unconfigured state.", "operationId": "rack_reset", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -207,6 +131,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -216,28 +146,14 @@ "summary": "Reset this particular sled to an unconfigured state.", "operationId": "sled_reset", "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1700,6 +1616,18 @@ "minLength": 1, "maxLength": 63 } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/clickhouse-admin-keeper.json b/openapi/clickhouse-admin-keeper.json index 2291748c51..a9539f4c16 100644 --- a/openapi/clickhouse-admin-keeper.json +++ b/openapi/clickhouse-admin-keeper.json @@ -15,26 +15,6 @@ "summary": "Retrieve configuration information from a keeper node.", "operationId": "keeper_conf", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -44,6 +24,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -54,26 +40,6 @@ "description": "This information is used internally by ZooKeeper to manage snapshots and logs for consistency and recovery.", "operationId": "lgif", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -83,6 +49,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -92,26 +64,6 @@ "summary": "Retrieve cluster membership information from a keeper node.", "operationId": "keeper_cluster_membership", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -121,6 +73,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -141,26 +99,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -170,6 +108,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -180,26 +124,6 @@ "description": "contains last committed cluster configuration.", "operationId": "raft_config", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -209,6 +133,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -951,6 +881,18 @@ "servers" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/clickhouse-admin-server.json b/openapi/clickhouse-admin-server.json index 31b5222416..c82c7c0d8e 100644 --- a/openapi/clickhouse-admin-server.json +++ b/openapi/clickhouse-admin-server.json @@ -26,26 +26,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -55,6 +35,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -65,26 +51,6 @@ "description": "that were executed on a cluster.", "operationId": "distributed_ddl_queue", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -98,6 +64,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -156,26 +128,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -189,6 +141,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -697,6 +655,18 @@ "unix_epoch" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/clickhouse-admin-single.json b/openapi/clickhouse-admin-single.json index 06d4fd04d8..b00bf56314 100644 --- a/openapi/clickhouse-admin-single.json +++ b/openapi/clickhouse-admin-single.json @@ -15,28 +15,14 @@ "summary": "Idempotently initialize a single-node ClickHouse database.", "operationId": "init_db", "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -95,26 +81,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -128,6 +94,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -198,6 +170,18 @@ "unix_epoch" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/cockroach-admin.json b/openapi/cockroach-admin.json index 90c9e7df4a..76c0bea09b 100644 --- a/openapi/cockroach-admin.json +++ b/openapi/cockroach-admin.json @@ -25,26 +25,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -54,6 +34,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -63,26 +49,6 @@ "summary": "Get the CockroachDB node ID of the local cockroach instance.", "operationId": "local_node_id", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -92,6 +58,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -101,26 +73,6 @@ "summary": "Get the status of all nodes in the CRDB cluster.", "operationId": "node_status", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -130,6 +82,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -354,6 +312,18 @@ "type": "string", "format": "uuid" } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/dns-server.json b/openapi/dns-server.json index 91ad62ffbd..30bf9acf9e 100644 --- a/openapi/dns-server.json +++ b/openapi/dns-server.json @@ -14,26 +14,6 @@ "get": { "operationId": "dns_config_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -43,6 +23,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -59,28 +45,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -274,6 +246,18 @@ "weight" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/gateway.json b/openapi/gateway.json index 1e935b5547..b1a7adc96e 100644 --- a/openapi/gateway.json +++ b/openapi/gateway.json @@ -16,26 +16,6 @@ "description": "Retreive information for all SPs via the Ignition controller. This is lower latency and has fewer possible failure modes than querying the SP over the management network.", "operationId": "ignition_list", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -49,6 +29,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -79,26 +65,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -108,6 +74,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -147,28 +119,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -179,26 +137,6 @@ "description": "find and communicate with.\n\nNote that unlike most MGS endpoints, this endpoint does not send any communication on the management network.", "operationId": "sp_all_ids", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -212,6 +150,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -222,26 +166,6 @@ "description": "Note that most MGS endpoints behave identically regardless of which scrimlet the MGS instance is running on; this one, however, is intentionally different. This endpoint is _probably_ only useful for clients communicating with MGS over localhost (i.e., other services in the switch zone) who need to know which sidecar they are connected to.", "operationId": "sp_local_switch_id", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -251,6 +175,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -272,26 +202,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -301,6 +211,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -330,26 +246,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -359,6 +255,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -389,26 +291,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -418,6 +300,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -457,26 +345,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -490,6 +358,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -529,26 +403,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -558,6 +412,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -614,28 +474,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -686,26 +532,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -715,6 +541,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -764,26 +596,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -793,6 +605,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -832,28 +650,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -893,26 +697,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -922,6 +706,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -960,28 +750,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1031,26 +807,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1060,6 +816,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1102,28 +864,8 @@ "default": { "description": "", "content": { - "*/*": { - "schema": {} - } - } - }, - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } + "*/*": { + "schema": {} } } } @@ -1166,28 +908,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1259,28 +987,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1330,28 +1044,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1391,26 +1091,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1420,6 +1100,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1450,26 +1136,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1479,6 +1145,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1506,28 +1178,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1568,28 +1226,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } }, @@ -1617,28 +1261,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1669,26 +1299,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1698,6 +1308,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1736,28 +1352,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1799,26 +1401,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1828,6 +1410,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1858,26 +1446,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1887,6 +1455,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1925,28 +1499,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -3900,6 +3460,18 @@ "power_reset" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/installinator.json b/openapi/installinator.json index 981f5e98d0..6419760fbd 100644 --- a/openapi/installinator.json +++ b/openapi/installinator.json @@ -36,26 +36,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -63,6 +43,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -95,28 +81,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -2339,6 +2311,18 @@ "slots_written" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/nexus-internal.json b/openapi/nexus-internal.json index 70a8b96f08..5c39652aa3 100644 --- a/openapi/nexus-internal.json +++ b/openapi/nexus-internal.json @@ -44,26 +44,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -71,6 +51,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -81,26 +67,6 @@ "description": "This is a list of discrete background activities that Nexus carries out. This is exposed for support and debugging.", "operationId": "bgtask_list", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -114,6 +80,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -134,28 +106,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -176,26 +134,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -205,6 +143,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -214,26 +158,6 @@ "summary": "Get the current clickhouse policy", "operationId": "clickhouse_policy_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -243,6 +167,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -260,28 +190,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -320,28 +236,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -380,28 +282,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -439,28 +327,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -490,28 +364,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -541,28 +401,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -573,26 +419,6 @@ "description": "This saga is used for demo and testing. The saga just waits until you complete using the `saga_demo_complete` API.", "operationId": "saga_demo_create", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -602,6 +428,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -622,28 +454,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -682,26 +500,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -711,6 +509,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -735,26 +539,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -764,6 +548,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -783,28 +573,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -822,31 +598,17 @@ } } }, - "required": true - }, - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, + "required": true + }, + "responses": { "204": { "description": "resource updated" + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -857,26 +619,6 @@ "description": "that's changed since the last one was generated", "operationId": "blueprint_regenerate", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -886,6 +628,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -895,26 +643,6 @@ "summary": "Fetches the current target blueprint, if any", "operationId": "blueprint_target_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -924,6 +652,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -941,26 +675,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -970,6 +684,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -989,26 +709,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1018,6 +718,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1039,28 +745,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1091,28 +783,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1142,26 +820,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1171,6 +829,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1190,28 +854,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1260,26 +910,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1289,6 +919,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1311,26 +947,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -1340,6 +956,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1372,26 +994,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1405,6 +1007,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1425,28 +1033,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1485,35 +1079,15 @@ "type": "string" } }, - { - "in": "query", - "name": "sort_by", - "schema": { - "$ref": "#/components/schemas/IdSortMode" - } - } - ], - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } + { + "in": "query", + "name": "sort_by", + "schema": { + "$ref": "#/components/schemas/IdSortMode" } - }, + } + ], + "responses": { "200": { "description": "successful operation", "content": { @@ -1527,6 +1101,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1561,28 +1141,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1621,26 +1187,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1650,6 +1196,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1673,26 +1225,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1702,6 +1234,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1721,26 +1259,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1750,6 +1268,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1777,28 +1301,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1819,28 +1329,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1860,26 +1356,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -1889,6 +1365,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1909,26 +1391,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1938,6 +1400,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1947,26 +1415,6 @@ "summary": "List uninitialized sleds", "operationId": "sled_list_uninitialized", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1976,6 +1424,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2005,26 +1459,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2034,6 +1468,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2063,28 +1503,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -2106,28 +1532,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -6685,6 +6097,18 @@ "type": "string", "format": "uuid" } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/nexus.json b/openapi/nexus.json index d0f6a4e52a..79186e379a 100644 --- a/openapi/nexus.json +++ b/openapi/nexus.json @@ -36,26 +36,6 @@ "schema": {} } } - }, - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } } } } @@ -79,28 +59,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -131,26 +97,6 @@ "schema": {} } } - }, - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } } } } @@ -200,26 +146,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -229,6 +155,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -265,26 +197,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -294,6 +206,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -326,26 +244,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -355,6 +253,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -385,28 +289,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -448,26 +338,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "303": { "description": "redirect (see other)", "headers": { @@ -480,6 +350,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -522,26 +398,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -551,6 +407,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -575,26 +437,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -604,6 +446,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -628,26 +476,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -657,6 +485,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -679,28 +513,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -750,26 +570,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -779,6 +579,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -815,35 +621,21 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", + "201": { + "description": "successful creation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/Disk" } } } }, + "4XX": { + "$ref": "#/components/responses/Error" + }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "201": { - "description": "successful creation", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Disk" - } - } - } + "$ref": "#/components/responses/Error" } } } @@ -875,26 +667,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -904,6 +676,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -933,28 +711,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -996,28 +760,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1050,28 +800,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1104,28 +840,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1167,28 +889,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1273,26 +981,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1302,6 +990,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1357,26 +1051,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1386,6 +1060,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1422,26 +1102,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -1451,6 +1111,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1482,26 +1148,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1511,6 +1157,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1550,26 +1202,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1579,6 +1211,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1608,28 +1246,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -1672,26 +1296,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -1701,6 +1305,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1732,26 +1342,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -1761,6 +1351,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1802,26 +1398,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1831,6 +1407,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -1858,26 +1440,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1887,6 +1449,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1937,26 +1505,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1966,6 +1514,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -2000,26 +1554,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -2029,6 +1563,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2061,26 +1601,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2090,6 +1610,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2120,28 +1646,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -2175,26 +1687,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -2204,6 +1696,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2236,26 +1734,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -2265,6 +1743,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2314,26 +1798,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2343,6 +1807,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -2379,26 +1849,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -2408,6 +1858,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2439,26 +1895,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2468,6 +1904,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2507,35 +1949,21 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", + "200": { + "description": "successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/Instance" } } } }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "4XX": { + "$ref": "#/components/responses/Error" }, - "200": { - "description": "successful operation", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Instance" - } - } - } + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2565,28 +1993,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -2645,26 +2059,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2674,6 +2068,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -2718,26 +2118,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -2747,6 +2127,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2788,26 +2174,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -2817,6 +2183,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2848,26 +2220,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2877,6 +2229,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2918,26 +2276,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -2947,6 +2285,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2976,28 +2320,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -3029,26 +2359,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -3058,6 +2368,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -3122,26 +2438,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -3151,6 +2447,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -3200,26 +2502,6 @@ "schema": {} } } - }, - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } } }, "x-dropshot-websocket": {} @@ -3280,26 +2562,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -3309,6 +2571,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3343,26 +2611,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -3372,6 +2620,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -3403,26 +2657,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -3432,6 +2666,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -3497,26 +2737,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -3526,6 +2746,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3578,26 +2804,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -3607,6 +2813,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -3662,28 +2874,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -3749,26 +2947,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -3778,6 +2956,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -3830,26 +3014,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -3859,6 +3023,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -3914,28 +3084,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -3993,26 +3149,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4022,6 +3158,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4066,26 +3208,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -4095,6 +3217,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -4134,26 +3262,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4163,6 +3271,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -4208,28 +3322,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -4271,26 +3371,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4300,6 +3380,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4326,26 +3412,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4355,6 +3421,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -4387,28 +3459,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -4421,28 +3479,14 @@ "summary": "Log user out of web console by deleting session on client and server", "operationId": "logout", "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -4455,26 +3499,6 @@ "summary": "Fetch user for current session", "operationId": "current_user_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4484,6 +3508,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -4525,26 +3555,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4554,6 +3564,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4599,26 +3615,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4628,6 +3624,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4652,26 +3654,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -4681,6 +3663,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -4705,26 +3693,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4734,6 +3702,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -4756,28 +3730,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -4855,26 +3815,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4884,6 +3824,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -4947,26 +3893,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -4976,6 +3902,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5020,26 +3952,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -5049,6 +3961,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -5088,26 +4006,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5117,6 +4015,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -5164,26 +4068,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5193,6 +4077,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -5231,28 +4121,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -5266,26 +4142,6 @@ "description": "Always responds with Ok if it responds at all.", "operationId": "ping", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5295,6 +4151,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -5307,26 +4169,6 @@ "summary": "Fetch current silo's IAM policy", "operationId": "policy_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5336,6 +4178,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -5356,26 +4204,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5385,6 +4213,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -5426,26 +4260,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5455,6 +4269,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5478,26 +4298,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -5507,6 +4307,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -5530,26 +4336,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5559,6 +4345,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -5590,26 +4382,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5619,6 +4391,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -5640,28 +4418,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -5685,26 +4449,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5714,6 +4458,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -5745,26 +4495,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5774,6 +4504,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -5823,26 +4559,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5852,6 +4568,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -5889,26 +4611,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -5918,6 +4620,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -5949,26 +4657,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -5978,6 +4666,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -6007,28 +4701,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -6070,26 +4750,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6099,6 +4759,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6126,26 +4792,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6155,6 +4801,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -6196,26 +4848,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6225,6 +4857,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6252,26 +4890,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6281,6 +4899,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -6322,26 +4946,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6351,6 +4955,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6374,26 +4984,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -6403,6 +4993,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -6427,26 +5023,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6456,6 +5032,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -6507,26 +5089,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6536,6 +5098,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6590,26 +5158,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6619,6 +5167,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6656,26 +5210,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6685,6 +5219,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -6719,26 +5259,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6748,6 +5268,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -6802,26 +5328,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -6831,8 +5337,14 @@ } } } - } - }, + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" + } + }, "x-dropshot-pagination": { "required": [] } @@ -6886,28 +5398,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } }, @@ -6948,28 +5446,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -7012,26 +5496,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7041,6 +5505,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7082,26 +5552,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7111,6 +5561,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7138,26 +5594,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7167,6 +5603,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7216,26 +5658,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7245,6 +5667,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7284,26 +5712,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -7313,6 +5721,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7346,28 +5760,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -7412,28 +5812,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -7467,26 +5853,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -7496,6 +5862,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7528,26 +5900,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7557,6 +5909,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7598,26 +5956,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7627,6 +5965,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7650,26 +5994,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -7679,8 +6003,14 @@ } } } - } - } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" + } + } } }, "/v1/system/ip-pools/{pool}": { @@ -7702,26 +6032,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7731,6 +6041,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -7762,26 +6078,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7791,6 +6087,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -7812,28 +6114,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -7878,26 +6166,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -7907,6 +6175,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -7944,26 +6218,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -7973,6 +6227,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -8006,28 +6266,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -8078,26 +6324,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8107,6 +6333,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8142,26 +6374,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -8171,6 +6383,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -8212,26 +6430,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8241,6 +6439,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -8270,28 +6474,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -8315,26 +6505,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8344,6 +6514,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -8356,26 +6532,6 @@ "summary": "Fetch Oxide service IP pool", "operationId": "ip_pool_service_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8385,6 +6541,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -8420,26 +6582,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8449,6 +6591,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8475,26 +6623,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -8504,6 +6632,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -8526,28 +6660,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -8625,26 +6745,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8654,6 +6754,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8701,26 +6807,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8730,6 +6816,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8753,26 +6845,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -8782,6 +6854,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -8805,28 +6883,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -8877,26 +6941,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8906,6 +6950,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -8921,26 +6971,6 @@ "summary": "Get user-facing services IP allowlist", "operationId": "networking_allow_list_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8950,6 +6980,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -8970,26 +7006,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -8999,6 +7015,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9021,28 +7043,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -9065,28 +7073,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -9099,26 +7093,6 @@ "summary": "Get BFD status", "operationId": "networking_bfd_status", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9132,6 +7106,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9173,26 +7153,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9202,6 +7162,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -9225,26 +7191,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -9254,6 +7200,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -9275,28 +7227,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -9338,26 +7276,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9371,6 +7289,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -9395,26 +7319,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -9424,6 +7328,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9447,28 +7357,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -9492,26 +7388,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9525,6 +7401,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9537,26 +7419,6 @@ "summary": "Get BGP exported routes", "operationId": "networking_bgp_exported", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9566,6 +7428,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9591,26 +7459,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9620,6 +7468,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9645,26 +7499,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9678,6 +7512,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9690,26 +7530,6 @@ "summary": "Get BGP peer status", "operationId": "networking_bgp_status", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9723,6 +7543,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9764,26 +7590,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9793,6 +7599,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -9816,26 +7628,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -9845,6 +7637,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -9899,28 +7697,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -9970,26 +7754,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -9999,6 +7763,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10022,26 +7792,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -10051,6 +7801,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -10071,28 +7827,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -10116,26 +7858,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10145,6 +7867,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -10157,26 +7885,6 @@ "summary": "Fetch top-level IAM policy", "operationId": "system_policy_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10186,6 +7894,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -10206,26 +7920,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10235,6 +7929,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -10269,26 +7969,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10298,6 +7978,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10324,26 +8010,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10353,6 +8019,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -10394,26 +8066,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10423,6 +8075,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10468,26 +8126,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10497,6 +8135,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10520,26 +8164,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -10549,6 +8173,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -10573,26 +8203,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10602,6 +8212,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -10624,28 +8240,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -10697,26 +8299,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10726,6 +8308,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -10741,37 +8329,17 @@ "summary": "Fetch silo IAM policy", "operationId": "silo_policy_view", "parameters": [ - { - "in": "path", - "name": "silo", - "description": "Name or ID of the silo", - "required": true, - "schema": { - "$ref": "#/components/schemas/NameOrId" - } - } - ], - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } + { + "in": "path", + "name": "silo", + "description": "Name or ID of the silo", + "required": true, + "schema": { + "$ref": "#/components/schemas/NameOrId" } - }, + } + ], + "responses": { "200": { "description": "successful operation", "content": { @@ -10781,6 +8349,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -10812,26 +8386,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10841,6 +8395,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -10864,26 +8424,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10893,6 +8433,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -10925,26 +8471,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -10954,6 +8480,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -10977,26 +8509,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11006,6 +8518,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11040,26 +8558,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11069,6 +8567,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -11121,26 +8625,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11150,6 +8634,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -11188,26 +8678,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11217,6 +8687,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11258,26 +8734,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11287,6 +8743,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -11312,26 +8774,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11341,6 +8783,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11382,26 +8830,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11411,6 +8839,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -11437,26 +8871,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11466,6 +8880,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11509,33 +8929,13 @@ }, { "in": "query", - "name": "sort_by", - "schema": { - "$ref": "#/components/schemas/IdSortMode" - } - } - ], - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } + "name": "sort_by", + "schema": { + "$ref": "#/components/schemas/IdSortMode" } - }, + } + ], + "responses": { "200": { "description": "successful operation", "content": { @@ -11545,6 +8945,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -11560,26 +8966,6 @@ "summary": "Fetch resource utilization for user's current silo", "operationId": "utilization_view", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11589,6 +8975,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11620,26 +9012,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11649,6 +9021,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -11689,26 +9067,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11718,6 +9076,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11784,26 +9148,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11813,6 +9157,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -11865,26 +9215,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -11894,6 +9224,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -11942,26 +9278,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -11971,6 +9287,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -12026,26 +9348,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12055,6 +9357,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -12100,28 +9408,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -12179,26 +9473,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12208,6 +9482,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -12252,26 +9532,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -12281,6 +9541,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -12320,26 +9586,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12349,6 +9595,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -12382,40 +9634,20 @@ "description": "Name or ID of the VPC", "schema": { "$ref": "#/components/schemas/NameOrId" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/VpcRouterUpdate" - } - } - }, - "required": true - }, - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VpcRouterUpdate" } } }, + "required": true + }, + "responses": { "200": { "description": "successful operation", "content": { @@ -12425,6 +9657,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -12462,28 +9700,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -12541,26 +9765,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12570,6 +9774,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -12614,26 +9824,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -12643,6 +9833,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -12682,26 +9878,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12711,6 +9887,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -12758,26 +9940,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12787,6 +9949,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -12824,28 +9992,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -12912,26 +10066,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -12941,6 +10075,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -12993,26 +10133,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -13022,6 +10142,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -13058,26 +10184,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -13087,6 +10193,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -13118,26 +10230,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -13147,6 +10239,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -13186,26 +10284,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -13215,6 +10293,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -13244,28 +10328,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -25441,6 +22511,18 @@ } ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } }, "tags": [ diff --git a/openapi/oximeter.json b/openapi/oximeter.json index 4f401aa91e..dea3418b8d 100644 --- a/openapi/oximeter.json +++ b/openapi/oximeter.json @@ -15,26 +15,6 @@ "summary": "Return identifying information about this collector.", "operationId": "collector_info", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -44,6 +24,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -75,26 +61,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -104,6 +70,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } }, "x-dropshot-pagination": { @@ -127,28 +99,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -304,6 +262,18 @@ } ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/repo-depot.json b/openapi/repo-depot.json index 21eedb1ef4..0c0019cf8d 100644 --- a/openapi/repo-depot.json +++ b/openapi/repo-depot.json @@ -26,26 +26,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -53,6 +33,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -79,6 +65,18 @@ "request_id" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/sled-agent.json b/openapi/sled-agent.json index 0647ed2193..14a4c92692 100644 --- a/openapi/sled-agent.json +++ b/openapi/sled-agent.json @@ -14,26 +14,6 @@ "get": { "operationId": "artifact_list", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -49,6 +29,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -79,26 +65,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -108,6 +74,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -125,28 +97,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -176,26 +134,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "202": { "description": "successfully enqueued operation", "content": { @@ -205,6 +143,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -253,28 +197,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -293,26 +223,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -322,6 +232,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -350,28 +266,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -381,26 +283,6 @@ "summary": "Get the internal state of the local bootstore node", "operationId": "bootstore_status", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -410,6 +292,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -419,28 +307,14 @@ "summary": "Initializes a CockroachDB cluster", "operationId": "cockroachdb_init", "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -450,26 +324,6 @@ "summary": "Lists the datasets that this sled is configured to use", "operationId": "datasets_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -479,6 +333,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -496,26 +356,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -525,6 +365,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -554,26 +400,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -583,6 +409,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -602,28 +434,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -633,35 +451,21 @@ "summary": "Fetch basic information about this sled", "operationId": "inventory", "responses": { - "4XX": { - "description": "client error", + "200": { + "description": "successful operation", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/Inventory" } } } }, + "4XX": { + "$ref": "#/components/responses/Error" + }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "200": { - "description": "successful operation", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Inventory" - } - } - } + "$ref": "#/components/responses/Error" } } } @@ -672,26 +476,6 @@ "description": "bootstore. The boostore is a distributed data store that is eventually consistent. Reads from individual nodes may not represent the latest state.", "operationId": "read_network_bootstore_config_cache", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -701,6 +485,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -717,28 +507,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -747,26 +523,6 @@ "get": { "operationId": "omicron_physical_disks_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -776,6 +532,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -792,26 +554,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -821,6 +563,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -839,28 +587,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -870,26 +604,6 @@ "summary": "Fetch sled identifiers", "operationId": "sled_identifiers", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -899,6 +613,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -907,26 +627,6 @@ "get": { "operationId": "sled_role_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -936,6 +636,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -955,28 +661,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -985,26 +677,6 @@ "get": { "operationId": "support_dladm_info", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -1012,6 +684,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1020,26 +698,6 @@ "get": { "operationId": "support_ipadm_info", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -1047,6 +705,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1055,26 +719,6 @@ "get": { "operationId": "support_zoneadm_info", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -1082,6 +726,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1111,26 +761,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1144,6 +774,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1199,26 +835,6 @@ "schema": {} } } - }, - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } } } }, @@ -1275,26 +891,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -1304,6 +900,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1340,28 +942,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } }, @@ -1415,26 +1003,6 @@ "schema": {} } } - }, - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } } } } @@ -1453,56 +1021,22 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } }, "/timesync": { - "get": { - "operationId": "timesync_get", - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, + "get": { + "operationId": "timesync_get", + "responses": { "200": { "description": "successful operation", "content": { @@ -1512,6 +1046,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1530,28 +1070,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1561,26 +1087,6 @@ "summary": "List v2p mappings present on sled", "operationId": "list_v2p", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1594,6 +1100,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1611,28 +1123,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } }, @@ -1650,28 +1148,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1700,26 +1184,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1729,6 +1193,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -1745,26 +1215,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1774,6 +1224,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1812,26 +1268,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1841,6 +1277,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -1869,28 +1311,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } }, @@ -1917,28 +1345,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1957,26 +1371,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1986,6 +1380,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2012,26 +1412,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2041,6 +1421,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2070,57 +1456,23 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "204": { "description": "resource updated" - } - } - } - }, - "/vpc-routes": { - "get": { - "summary": "Get the current versions of VPC routing rules.", - "operationId": "list_vpc_routes", - "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "4XX": { + "$ref": "#/components/responses/Error" }, + "5XX": { + "$ref": "#/components/responses/Error" + } + } + } + }, + "/vpc-routes": { + "get": { + "summary": "Get the current versions of VPC routing rules.", + "operationId": "list_vpc_routes", + "responses": { "200": { "description": "successful operation", "content": { @@ -2134,6 +1486,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2155,28 +1513,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -2186,26 +1530,6 @@ "summary": "List the zones that are currently managed by the sled agent.", "operationId": "zones_list", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2219,6 +1543,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2228,26 +1558,6 @@ "summary": "Trigger a zone bundle cleanup.", "operationId": "zone_bundle_cleanup", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2261,6 +1571,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2270,26 +1586,6 @@ "summary": "Return context used by the zone-bundle cleanup task.", "operationId": "zone_bundle_cleanup_context", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2299,6 +1595,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2316,28 +1618,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -2347,26 +1635,6 @@ "summary": "Return utilization information about all zone bundles.", "operationId": "zone_bundle_utilization", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2380,6 +1648,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2400,26 +1674,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2433,6 +1687,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2453,26 +1713,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2486,6 +1726,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2504,26 +1750,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "201": { "description": "successful creation", "content": { @@ -2533,6 +1759,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -2563,26 +1795,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "", "content": { @@ -2590,6 +1802,12 @@ "schema": {} } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -2618,28 +1836,14 @@ } ], "responses": { + "204": { + "description": "successful deletion" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "successful deletion" + "$ref": "#/components/responses/Error" } } } @@ -2648,26 +1852,6 @@ "get": { "operationId": "zpools_get", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -2681,6 +1865,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7287,6 +6477,18 @@ "type": "string", "format": "uuid" } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } diff --git a/openapi/wicketd.json b/openapi/wicketd.json index 621f529ab3..0b3c4d7c9e 100644 --- a/openapi/wicketd.json +++ b/openapi/wicketd.json @@ -46,28 +46,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -78,26 +64,6 @@ "description": "The order of the returned artifacts is unspecified, and may change between calls even if the total set of artifacts has not.", "operationId": "get_artifacts_and_event_reports", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -107,6 +73,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -116,26 +88,6 @@ "summary": "Report the configured baseboard details.", "operationId": "get_baseboard", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -145,6 +97,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -154,26 +112,6 @@ "summary": "Get wicketd's current view of all sleds visible on the bootstrap network.", "operationId": "get_bootstrap_sleds", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -183,6 +121,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -203,26 +147,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -232,6 +156,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -270,28 +200,14 @@ } ], "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -312,26 +228,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -341,6 +237,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -351,26 +253,6 @@ "description": "connected to.", "operationId": "get_location", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -380,6 +262,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -390,26 +278,6 @@ "description": "check.", "operationId": "get_preflight_uplink_report", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -419,6 +287,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -436,28 +310,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -467,26 +327,6 @@ "summary": "Query current state of rack setup.", "operationId": "get_rack_setup_state", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -496,6 +336,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -504,26 +350,6 @@ "description": "Will return an error if not all of the rack setup configuration has been populated.", "operationId": "post_run_rack_setup", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -533,6 +359,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -540,26 +372,6 @@ "summary": "Run rack reset.", "operationId": "post_run_rack_reset", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -569,6 +381,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -579,26 +397,6 @@ "description": "some cases) RSS configuration.", "operationId": "get_rss_config", "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -608,6 +406,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } }, @@ -626,28 +430,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } }, @@ -655,28 +445,14 @@ "summary": "Reset all RSS configuration to their default values.", "operationId": "delete_rss_config", "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -697,26 +473,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -726,6 +482,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -755,26 +517,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -784,6 +526,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -805,26 +553,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -834,6 +562,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -855,26 +589,6 @@ "required": true }, "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -884,6 +598,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -903,28 +623,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -935,28 +641,14 @@ "description": "The only expected client of this endpoint is `curl` from wicketd's SMF `refresh` method, but other clients hitting it is harmless.", "operationId": "post_reload_config", "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -978,28 +670,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1019,28 +697,14 @@ "required": true }, "responses": { + "204": { + "description": "resource updated" + }, "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } + "$ref": "#/components/responses/Error" }, "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "204": { - "description": "resource updated" + "$ref": "#/components/responses/Error" } } } @@ -1071,26 +735,6 @@ } ], "responses": { - "4XX": { - "description": "client error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, - "5XX": { - "description": "server error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Error" - } - } - } - }, "200": { "description": "successful operation", "content": { @@ -1100,6 +744,12 @@ } } } + }, + "4XX": { + "$ref": "#/components/responses/Error" + }, + "5XX": { + "$ref": "#/components/responses/Error" } } } @@ -7094,6 +6744,18 @@ "power_reset" ] } + }, + "responses": { + "Error": { + "description": "Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + } } } } From b08747af88b7e421dd57225739d0263fe0a4e634 Mon Sep 17 00:00:00 2001 From: Eliza Weisman Date: Tue, 3 Dec 2024 14:40:05 -0800 Subject: [PATCH 3/8] draw the rest of the owl --- nexus/src/app/instance.rs | 5 +- nexus/test-utils/src/lib.rs | 2 +- sled-agent/src/artifact_store.rs | 3 +- sled-agent/src/boot_disk_os_writer.rs | 2 +- sled-agent/src/bootstrap/http_entrypoints.rs | 5 +- sled-agent/src/bootstrap/server.rs | 2 +- sled-agent/src/http_entrypoints.rs | 14 +++--- sled-agent/src/services.rs | 4 +- sled-agent/src/sim/config.rs | 2 +- sled-agent/src/sim/http_entrypoints.rs | 3 +- sled-agent/src/sim/storage.rs | 4 +- sled-agent/src/sled_agent.rs | 48 ++++++++++++-------- wicketd/src/http_entrypoints.rs | 1 - 13 files changed, 52 insertions(+), 43 deletions(-) diff --git a/nexus/src/app/instance.rs b/nexus/src/app/instance.rs index e916974332..c3957cfd91 100644 --- a/nexus/src/app/instance.rs +++ b/nexus/src/app/instance.rs @@ -101,6 +101,7 @@ impl From for omicron_common::api::external::Error { impl From for dropshot::HttpError { fn from(value: SledAgentInstanceError) -> Self { + use dropshot::ErrorStatusCode; use dropshot::HttpError; use progenitor_client::Error as ClientError; // See RFD 486 §6.3: @@ -118,9 +119,9 @@ impl From for dropshot::HttpError { // See https://github.com/oxidecomputer/dropshot/issues/693 let mut error = HttpError::for_internal_error(e.to_string()); error.status_code = if e.is_timeout() { - http::StatusCode::GATEWAY_TIMEOUT + ErrorStatusCode::GATEWAY_TIMEOUT } else { - http::StatusCode::BAD_GATEWAY + ErrorStatusCode::BAD_GATEWAY }; error } diff --git a/nexus/test-utils/src/lib.rs b/nexus/test-utils/src/lib.rs index 92b4b14ffe..1702cacf2e 100644 --- a/nexus/test-utils/src/lib.rs +++ b/nexus/test-utils/src/lib.rs @@ -1694,7 +1694,7 @@ pub async fn start_dns_server( }, &dropshot::ConfigDropshot { bind_address: "[::1]:0".parse().unwrap(), - request_body_max_bytes: 8 * 1024, + default_request_body_max_bytes: 8 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }, diff --git a/sled-agent/src/artifact_store.rs b/sled-agent/src/artifact_store.rs index 5b78c0099d..ec63d9a711 100644 --- a/sled-agent/src/artifact_store.rs +++ b/sled-agent/src/artifact_store.rs @@ -27,7 +27,6 @@ use dropshot::{ RequestContext, ServerBuilder, StreamingBody, }; use futures::{Stream, TryStreamExt}; -use http::StatusCode; use omicron_common::address::REPO_DEPOT_PORT; use omicron_common::disk::{DatasetKind, DatasetsConfig}; use omicron_common::update::ArtifactHash; @@ -689,7 +688,7 @@ impl From for HttpError { match err { Error::AlreadyInProgress { .. } => HttpError::for_client_error( None, - StatusCode::CONFLICT, + dropshot::ClientErrorStatusCode::CONFLICT, err.to_string(), ), Error::Body(inner) => inner, diff --git a/sled-agent/src/boot_disk_os_writer.rs b/sled-agent/src/boot_disk_os_writer.rs index 59e79c418f..bc3affef2d 100644 --- a/sled-agent/src/boot_disk_os_writer.rs +++ b/sled-agent/src/boot_disk_os_writer.rs @@ -136,7 +136,7 @@ impl From<&BootDiskOsWriteError> for HttpError { | BootDiskOsWriteError::FailedReadingDisk { .. } | BootDiskOsWriteError::WrittenImageHashMismatch { .. } => { HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: dropshot::ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, diff --git a/sled-agent/src/bootstrap/http_entrypoints.rs b/sled-agent/src/bootstrap/http_entrypoints.rs index 1af8ea738e..a29eaed376 100644 --- a/sled-agent/src/bootstrap/http_entrypoints.rs +++ b/sled-agent/src/bootstrap/http_entrypoints.rs @@ -20,7 +20,6 @@ use dropshot::{ ApiDescription, HttpError, HttpResponseOk, HttpResponseUpdatedNoContent, RequestContext, TypedBody, }; -use http::StatusCode; use omicron_common::api::external::Error; use omicron_uuid_kinds::RackInitUuid; use omicron_uuid_kinds::RackResetUuid; @@ -143,9 +142,9 @@ impl BootstrapAgentApi for BootstrapAgentImpl { match ctx.sled_reset_tx.try_send(response_tx) { Ok(()) => (), Err(TrySendError::Full(_)) => { - return Err(HttpError::for_status( + return Err(HttpError::for_client_error_with_status( Some("ResetPending".to_string()), - StatusCode::TOO_MANY_REQUESTS, + dropshot::ClientErrorStatusCode::TOO_MANY_REQUESTS, )); } Err(TrySendError::Closed(_)) => { diff --git a/sled-agent/src/bootstrap/server.rs b/sled-agent/src/bootstrap/server.rs index cdd09fbbe8..d5b8fd208c 100644 --- a/sled-agent/src/bootstrap/server.rs +++ b/sled-agent/src/bootstrap/server.rs @@ -450,7 +450,7 @@ fn start_dropshot_server( context: BootstrapServerContext, ) -> Result, StartError> { let mut dropshot_config = dropshot::ConfigDropshot::default(); - dropshot_config.request_body_max_bytes = 1024 * 1024; + dropshot_config.default_request_body_max_bytes = 1024 * 1024; dropshot_config.bind_address = SocketAddr::V6(SocketAddrV6::new( context.global_zone_bootstrap_ip, BOOTSTRAP_AGENT_HTTP_PORT, diff --git a/sled-agent/src/http_entrypoints.rs b/sled-agent/src/http_entrypoints.rs index 844e13151a..b7b114473c 100644 --- a/sled-agent/src/http_entrypoints.rs +++ b/sled-agent/src/http_entrypoints.rs @@ -12,10 +12,10 @@ use bootstore::schemes::v0::NetworkConfig; use camino::Utf8PathBuf; use display_error_chain::DisplayErrorChain; use dropshot::{ - ApiDescription, Body, FreeformBody, HttpError, HttpResponseAccepted, - HttpResponseCreated, HttpResponseDeleted, HttpResponseHeaders, - HttpResponseOk, HttpResponseUpdatedNoContent, Path, Query, RequestContext, - StreamingBody, TypedBody, + ApiDescription, Body, ErrorStatusCode, FreeformBody, HttpError, + HttpResponseAccepted, HttpResponseCreated, HttpResponseDeleted, + HttpResponseHeaders, HttpResponseOk, HttpResponseUpdatedNoContent, Path, + Query, RequestContext, StreamingBody, TypedBody, }; use nexus_sled_agent_shared::inventory::{ Inventory, OmicronZonesConfig, SledRole, @@ -704,7 +704,7 @@ impl SledAgentApi for SledAgentImpl { .map_err(|e| { let message = format!("Failed to add sled to rack cluster: {e}"); HttpError { - status_code: http::StatusCode::INTERNAL_SERVER_ERROR, + status_code: ErrorStatusCode::INTERNAL_SERVER_ERROR, error_code: None, external_message: message.clone(), internal_message: message, @@ -755,7 +755,7 @@ impl SledAgentApi for SledAgentImpl { DisplayErrorChain::new(&err) ); return Err(HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, @@ -764,7 +764,7 @@ impl SledAgentApi for SledAgentImpl { None => { let message = format!("no disk found for slot {boot_disk:?}",); return Err(HttpError { - status_code: http::StatusCode::SERVICE_UNAVAILABLE, + status_code: ErrorStatusCode::SERVICE_UNAVAILABLE, error_code: None, external_message: message.clone(), internal_message: message, diff --git a/sled-agent/src/services.rs b/sled-agent/src/services.rs index db250eb914..9ce11bafa8 100644 --- a/sled-agent/src/services.rs +++ b/sled-agent/src/services.rs @@ -2359,7 +2359,7 @@ impl ServiceManager { bind_address: SocketAddr::new(*opte_ip, nexus_port), // This has to be large enough to support: // - bulk writes to disks - request_body_max_bytes: 8192 * 1024, + default_request_body_max_bytes: 8192 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], @@ -2371,7 +2371,7 @@ impl ServiceManager { // other things, the initial list of TLS // certificates provided by the customer during // rack setup. - request_body_max_bytes: 10 * 1024 * 1024, + default_request_body_max_bytes: 10 * 1024 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }, diff --git a/sled-agent/src/sim/config.rs b/sled-agent/src/sim/config.rs index a250c62d34..edbe1b9cb7 100644 --- a/sled-agent/src/sim/config.rs +++ b/sled-agent/src/sim/config.rs @@ -105,7 +105,7 @@ impl Config { nexus_address, dropshot: ConfigDropshot { bind_address: SocketAddr::new(Ipv6Addr::LOCALHOST.into(), 0), - request_body_max_bytes: 1024 * 1024, + default_request_body_max_bytes: 1024 * 1024, ..Default::default() }, storage: ConfigStorage { diff --git a/sled-agent/src/sim/http_entrypoints.rs b/sled-agent/src/sim/http_entrypoints.rs index 2d23f9150b..cdbf958562 100644 --- a/sled-agent/src/sim/http_entrypoints.rs +++ b/sled-agent/src/sim/http_entrypoints.rs @@ -8,6 +8,7 @@ use super::collection::PokeMode; use camino::Utf8PathBuf; use dropshot::endpoint; use dropshot::ApiDescription; +use dropshot::ErrorStatusCode; use dropshot::FreeformBody; use dropshot::HttpError; use dropshot::HttpResponseAccepted; @@ -660,7 +661,7 @@ fn method_unimplemented() -> Result { // Use a client error here (405 Method Not Allowed vs 501 Not // Implemented) even though it isn't strictly accurate here, so tests // get to see the error message. - status_code: http::StatusCode::METHOD_NOT_ALLOWED, + status_code: ErrorStatusCode::METHOD_NOT_ALLOWED, error_code: None, external_message: "Method not implemented in sled-agent-sim" .to_string(), diff --git a/sled-agent/src/sim/storage.rs b/sled-agent/src/sim/storage.rs index 8756d640e1..6980400a4a 100644 --- a/sled-agent/src/sim/storage.rs +++ b/sled-agent/src/sim/storage.rs @@ -1029,7 +1029,7 @@ impl Storage { if stored_config.generation > config.generation { return Err(HttpError::for_client_error( None, - http::StatusCode::BAD_REQUEST, + dropshot::ClientErrorStatusCode::BAD_REQUEST, "Generation number too old".to_string(), )); } else if stored_config.generation == config.generation @@ -1037,7 +1037,7 @@ impl Storage { { return Err(HttpError::for_client_error( None, - http::StatusCode::BAD_REQUEST, + dropshot::ClientErrorStatusCode::BAD_REQUEST, "Generation number unchanged but data is different" .to_string(), )); diff --git a/sled-agent/src/sled_agent.rs b/sled-agent/src/sled_agent.rs index 80dbe72ea3..cc007e8c1d 100644 --- a/sled-agent/src/sled_agent.rs +++ b/sled-agent/src/sled_agent.rs @@ -196,6 +196,9 @@ impl From for omicron_common::api::external::Error { // Provide a more specific HTTP error for some sled agent errors. impl From for dropshot::HttpError { fn from(err: Error) -> Self { + use dropshot::ClientErrorStatusCode; + use dropshot::ErrorStatusCode; + const NO_SUCH_INSTANCE: &str = "NO_SUCH_INSTANCE"; const INSTANCE_CHANNEL_FULL: &str = "INSTANCE_CHANNEL_FULL"; match err { @@ -213,25 +216,32 @@ impl From for dropshot::HttpError { ) } crate::instance::Error::Propolis(propolis_error) => { - // Work around dropshot#693: HttpError::for_status - // only accepts client errors and asserts on server - // errors, so convert server errors by hand. - match propolis_error.status() { - None => HttpError::for_internal_error( + if let Some(status_code) = + propolis_error.status().and_then(|status| { + ErrorStatusCode::try_from(status).ok() + }) + { + if let Ok(status_code) = + status_code.as_client_error() + { + return HttpError::for_client_error_with_status( + None, + status_code, + ); + } + + if status_code + == ErrorStatusCode::SERVICE_UNAVAILABLE + { + return HttpError::for_unavail( + None, propolis_error.to_string(), - ), - - Some(status_code) if status_code.is_client_error() => { - HttpError::for_status(None, status_code) - }, - - Some(status_code) => match status_code { - http::status::StatusCode::SERVICE_UNAVAILABLE => - HttpError::for_unavail(None, propolis_error.to_string()), - _ => - HttpError::for_internal_error(propolis_error.to_string()), - } + ); } + } + HttpError::for_internal_error( + propolis_error.to_string(), + ) } crate::instance::Error::Transition(omicron_error) => { // Preserve the status associated with the wrapped @@ -242,7 +252,7 @@ impl From for dropshot::HttpError { crate::instance::Error::Terminating => { HttpError::for_client_error( Some(NO_SUCH_INSTANCE.to_string()), - http::StatusCode::GONE, + ClientErrorStatusCode::GONE, instance_error.to_string(), ) } @@ -270,7 +280,7 @@ impl From for dropshot::HttpError { BundleError::InstanceTerminating => { HttpError::for_client_error( Some(NO_SUCH_INSTANCE.to_string()), - http::StatusCode::GONE, + ClientErrorStatusCode::GONE, inner.to_string(), ) } diff --git a/wicketd/src/http_entrypoints.rs b/wicketd/src/http_entrypoints.rs index da0dc6dbf7..d180f036e6 100644 --- a/wicketd/src/http_entrypoints.rs +++ b/wicketd/src/http_entrypoints.rs @@ -19,7 +19,6 @@ use dropshot::Path; use dropshot::RequestContext; use dropshot::StreamingBody; use dropshot::TypedBody; -use http::StatusCode; use internal_dns_resolver::Resolver; use omicron_common::api::internal::shared::SwitchLocation; use omicron_uuid_kinds::RackInitUuid; From f7cfe6d2d1bdd380e8a3133a21c75308fb9b11c2 Mon Sep 17 00:00:00 2001 From: iliana etaoin Date: Thu, 5 Dec 2024 18:24:49 +0000 Subject: [PATCH 4/8] update to dropshot 0.15.0 --- Cargo.lock | 348 ++++++++++--------- Cargo.toml | 7 +- clickhouse-admin/src/clickhouse_cli.rs | 1 + clickhouse-admin/src/clickward.rs | 1 + cockroach-admin/src/cockroach_cli.rs | 1 + cockroach-admin/src/context.rs | 1 + common/src/api/external/error.rs | 6 + dns-server/examples/config.toml | 2 +- dns-server/src/http_server.rs | 2 + gateway/examples/config.toml | 2 +- gateway/src/error.rs | 1 + illumos-utils/src/lib.rs | 1 + nexus-config/src/nexus_config.rs | 16 +- nexus/examples/config-second.toml | 4 +- nexus/examples/config.toml | 4 +- nexus/src/app/background/init.rs | 2 +- nexus/test-utils/src/http_testing.rs | 10 +- nexus/tests/config.test.toml | 4 +- sled-agent/src/boot_disk_os_writer.rs | 1 + sled-agent/src/http_entrypoints.rs | 3 + sled-agent/src/sim/http_entrypoints.rs | 1 + smf/clickhouse-admin-keeper/config.toml | 2 +- smf/clickhouse-admin-server/config.toml | 2 +- smf/clickhouse-admin-single/config.toml | 2 +- smf/cockroach-admin/config.toml | 2 +- smf/external-dns/config.toml | 2 +- smf/internal-dns/config.toml | 2 +- smf/sled-agent/gimlet-standalone/config.toml | 2 +- smf/sled-agent/gimlet/config.toml | 2 +- smf/sled-agent/non-gimlet/config.toml | 2 +- update-common/src/errors.rs | 1 + wicketd/src/http_entrypoints.rs | 5 + workspace-hack/Cargo.toml | 24 +- 33 files changed, 248 insertions(+), 218 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8bb081cc2a..ab1ab40e52 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -166,7 +166,7 @@ dependencies = [ "omicron-workspace-hack", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -408,7 +408,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -476,7 +476,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -493,7 +493,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -561,7 +561,7 @@ dependencies = [ "quote", "serde", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -718,7 +718,7 @@ dependencies = [ "bitflags 2.6.0", "cexpr", "clang-sys", - "itertools 0.10.5", + "itertools 0.12.1", "lazy_static", "lazycell", "log", @@ -728,7 +728,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.87", + "syn 2.0.90", "which", ] @@ -761,7 +761,7 @@ checksum = "adc0846593a56638b74e136a45610f9934c052e14761bebca6b092d5522599e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -906,7 +906,7 @@ dependencies = [ name = "bootstrap-agent-api" version = "0.1.0" dependencies = [ - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-common", "omicron-uuid-kinds", "omicron-workspace-hack", @@ -1170,7 +1170,7 @@ version = "0.1.0" dependencies = [ "anyhow", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "libc", "omicron-common", @@ -1323,7 +1323,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -1337,7 +1337,7 @@ name = "clickhouse-admin-api" version = "0.1.0" dependencies = [ "clickhouse-admin-types", - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-common", "omicron-uuid-kinds", "omicron-workspace-hack", @@ -1397,7 +1397,7 @@ dependencies = [ "camino", "clickhouse-admin-types", "clickward", - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-workspace-hack", ] @@ -1482,7 +1482,7 @@ name = "cockroach-admin-api" version = "0.1.0" dependencies = [ "cockroach-admin-types", - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-common", "omicron-uuid-kinds", "omicron-workspace-hack", @@ -1707,7 +1707,7 @@ name = "crdb-seed" version = "0.1.0" dependencies = [ "anyhow", - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-test-utils", "omicron-workspace-hack", "slog", @@ -2007,7 +2007,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2031,7 +2031,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2042,7 +2042,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2097,7 +2097,7 @@ dependencies = [ "quote", "serde", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2141,7 +2141,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2174,7 +2174,7 @@ checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2195,7 +2195,7 @@ checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2206,7 +2206,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2227,7 +2227,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2237,7 +2237,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2250,7 +2250,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.1", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2342,7 +2342,7 @@ dependencies = [ "dsl_auto_type", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2351,7 +2351,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "209c735641a413bc68c4923a9d6ad4bcb3ca306b794edaa7eb0b3228a99ffb25" dependencies = [ - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2413,7 +2413,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2440,7 +2440,7 @@ dependencies = [ "clap", "dns-server-api", "dns-service-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "hickory-client", "hickory-proto", @@ -2475,7 +2475,7 @@ name = "dns-server-api" version = "0.1.0" dependencies = [ "chrono", - "dropshot 0.13.0", + "dropshot 0.15.0", "internal-dns-types", "omicron-workspace-hack", "schemars", @@ -2570,7 +2570,7 @@ dependencies = [ "http-body-util", "hyper", "hyper-util", - "indexmap 2.6.0", + "indexmap 2.7.0", "multer", "openapiv3", "paste", @@ -2600,8 +2600,9 @@ dependencies = [ [[package]] name = "dropshot" -version = "0.13.0" -source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#f0e6a46acbcb21774cc50ba24ee2faa0b9e060a3" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd4d216de78db95befa6c071bd36c9ef493806c06f3f267a0ca2582ff860b36b" dependencies = [ "async-stream", "async-trait", @@ -2610,7 +2611,7 @@ dependencies = [ "camino", "chrono", "debug-ignore", - "dropshot_endpoint 0.13.0", + "dropshot_endpoint 0.15.0", "form_urlencoded", "futures", "hostname 0.4.0", @@ -2618,7 +2619,7 @@ dependencies = [ "http-body-util", "hyper", "hyper-util", - "indexmap 2.6.0", + "indexmap 2.7.0", "multer", "openapiv3", "paste", @@ -2638,7 +2639,7 @@ dependencies = [ "slog-bunyan", "slog-json", "slog-term", - "thiserror 1.0.69", + "thiserror 2.0.3", "tokio", "tokio-rustls 0.25.0", "toml 0.8.19", @@ -2659,13 +2660,14 @@ dependencies = [ "quote", "serde", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] name = "dropshot_endpoint" -version = "0.13.0" -source = "git+https://github.com/oxidecomputer/dropshot?branch=eliza/custom-error-httpresponse-result#f0e6a46acbcb21774cc50ba24ee2faa0b9e060a3" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e957a4e05bd92e5cce58c341975e725bdf0e8d7ed2ad9626ddd2298fa18efee" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -2673,7 +2675,7 @@ dependencies = [ "semver 1.0.23", "serde", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2687,7 +2689,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -2880,7 +2882,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -3153,7 +3155,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -3284,7 +3286,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -3336,7 +3338,7 @@ dependencies = [ name = "gateway-api" version = "0.1.0" dependencies = [ - "dropshot 0.13.0", + "dropshot 0.15.0", "gateway-types", "omicron-common", "omicron-uuid-kinds", @@ -3441,7 +3443,7 @@ name = "gateway-test-utils" version = "0.1.0" dependencies = [ "camino", - "dropshot 0.13.0", + "dropshot 0.15.0", "gateway-messages", "gateway-types", "omicron-gateway", @@ -3596,7 +3598,7 @@ dependencies = [ "debug-ignore", "fixedbitset", "guppy-workspace-hack", - "indexmap 2.6.0", + "indexmap 2.7.0", "itertools 0.13.0", "nested", "once_cell", @@ -3628,7 +3630,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.6.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -4112,9 +4114,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" +checksum = "97818827ef4f364230e16705d4706e2897df2bb60617d6ca15d598025a3c481f" dependencies = [ "bytes", "futures-channel", @@ -4360,7 +4362,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -4458,7 +4460,7 @@ dependencies = [ "camino-tempfile", "cfg-if", "crucible-smf", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "http", "ipnetwork", @@ -4517,9 +4519,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown 0.15.0", @@ -4575,7 +4577,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -4605,7 +4607,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b23a0c8dfe501baac4adf6ebbfa6eddf8f0c07f56b058cc1288017e32397846c" dependencies = [ "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -4661,7 +4663,7 @@ name = "installinator-api" version = "0.1.0" dependencies = [ "anyhow", - "dropshot 0.13.0", + "dropshot 0.15.0", "hyper", "installinator-common", "omicron-common", @@ -4726,7 +4728,7 @@ version = "0.1.0" dependencies = [ "anyhow", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "hickory-resolver", "internal-dns-resolver", "internal-dns-types", @@ -4744,7 +4746,7 @@ dependencies = [ "assert_matches", "dns-server", "dns-service-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "hickory-resolver", @@ -4943,7 +4945,7 @@ version = "0.1.0" source = "git+https://github.com/oxidecomputer/opte?rev=b56afeeb14e0042cbd7bda85b166ed86ee17820e#b56afeeb14e0042cbd7bda85b166ed86ee17820e" dependencies = [ "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -5101,7 +5103,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" dependencies = [ "cfg-if", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -5267,7 +5269,7 @@ version = "0.1.0" dependencies = [ "omicron-workspace-hack", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -5554,7 +5556,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -5660,7 +5662,7 @@ dependencies = [ "base64 0.22.1", "chrono", "cookie", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "headers", "http", @@ -5717,7 +5719,7 @@ version = "0.1.0" dependencies = [ "anyhow", "camino", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "libc", "omicron-common", @@ -5810,7 +5812,7 @@ dependencies = [ "db-macros", "diesel", "diesel-dtrace", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "gateway-client", @@ -5893,7 +5895,7 @@ name = "nexus-external-api" version = "0.1.0" dependencies = [ "anyhow", - "dropshot 0.13.0", + "dropshot 0.15.0", "http", "hyper", "ipnetwork", @@ -5910,7 +5912,7 @@ dependencies = [ name = "nexus-internal-api" version = "0.1.0" dependencies = [ - "dropshot 0.13.0", + "dropshot 0.15.0", "nexus-types", "omicron-common", "omicron-uuid-kinds", @@ -5960,7 +5962,7 @@ dependencies = [ "omicron-workspace-hack", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -6065,7 +6067,7 @@ dependencies = [ "expectorate", "gateway-client", "illumos-utils", - "indexmap 2.6.0", + "indexmap 2.7.0", "internal-dns-resolver", "ipnet", "maplit", @@ -6114,7 +6116,7 @@ version = "0.1.0" dependencies = [ "anyhow", "chrono", - "indexmap 2.6.0", + "indexmap 2.7.0", "nexus-inventory", "nexus-reconfigurator-planning", "nexus-types", @@ -6203,7 +6205,7 @@ dependencies = [ "crucible-agent-client", "dns-server", "dns-service-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "gateway-messages", "gateway-test-utils", @@ -6247,7 +6249,7 @@ version = "0.1.0" dependencies = [ "omicron-workspace-hack", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -6264,7 +6266,7 @@ dependencies = [ "cookie", "derive-where", "derive_more", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "gateway-client", "http", @@ -6438,7 +6440,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -6606,7 +6608,7 @@ dependencies = [ "clickhouse-admin-test-utils", "clickhouse-admin-types", "clickward", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "http", "illumos-utils", @@ -6645,7 +6647,7 @@ dependencies = [ "cockroach-admin-api", "cockroach-admin-types", "csv", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "http", "illumos-utils", @@ -6687,7 +6689,7 @@ dependencies = [ "camino", "camino-tempfile", "chrono", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "hex", @@ -6747,7 +6749,7 @@ version = "0.1.0" dependencies = [ "anyhow", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "libc", @@ -6787,7 +6789,7 @@ dependencies = [ "camino", "chrono", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "gateway-api", @@ -6831,7 +6833,7 @@ version = "0.1.0" dependencies = [ "anyhow", "assert_matches", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "internal-dns-resolver", "internal-dns-types", @@ -6907,7 +6909,7 @@ dependencies = [ "dns-server", "dns-service-client", "dpd-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "fatfs", "futures", @@ -7035,7 +7037,7 @@ dependencies = [ "crucible-agent-client", "csv", "diesel", - "dropshot 0.13.0", + "dropshot 0.15.0", "dyn-clone", "expectorate", "futures", @@ -7202,7 +7204,7 @@ dependencies = [ "dns-server", "dns-service-client", "dpd-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "flate2", "flume", @@ -7300,7 +7302,7 @@ dependencies = [ "camino", "camino-tempfile", "chrono", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "filetime", "futures", @@ -7399,7 +7401,7 @@ dependencies = [ "hyper", "hyper-rustls 0.27.3", "hyper-util", - "indexmap 2.6.0", + "indexmap 2.7.0", "indicatif", "inout", "itertools 0.10.5", @@ -7454,7 +7456,7 @@ dependencies = [ "string_cache", "subtle", "syn 1.0.109", - "syn 2.0.87", + "syn 2.0.90", "time", "time-macros", "tokio", @@ -7535,7 +7537,7 @@ version = "0.4.0" source = "git+https://github.com/oxidecomputer/openapi-lint?branch=main#ef442ee4343e97b6d9c217d3e7533962fe7d7236" dependencies = [ "heck 0.4.1", - "indexmap 2.6.0", + "indexmap 2.7.0", "lazy_static", "openapiv3", "regex", @@ -7553,7 +7555,7 @@ dependencies = [ "clickhouse-admin-api", "cockroach-admin-api", "dns-server-api", - "dropshot 0.13.0", + "dropshot 0.15.0", "fs-err", "gateway-api", "indent_write", @@ -7590,7 +7592,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc02deea53ffe807708244e5914f6b099ad7015a207ee24317c22112e17d9c5c" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_json", ] @@ -7618,7 +7620,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -7768,7 +7770,7 @@ dependencies = [ "oximeter-timeseries-macro", "oximeter-types", "prettyplease", - "syn 2.0.87", + "syn 2.0.90", "toml 0.8.19", "uuid", ] @@ -7778,7 +7780,7 @@ name = "oximeter-api" version = "0.1.0" dependencies = [ "chrono", - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-common", "omicron-workspace-hack", "schemars", @@ -7810,7 +7812,7 @@ dependencies = [ "camino", "chrono", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "httpmock", @@ -7867,13 +7869,13 @@ dependencies = [ "crossterm", "debug-ignore", "display-error-chain", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "futures", "gethostname", "highway", "iana-time-zone", - "indexmap 2.6.0", + "indexmap 2.7.0", "itertools 0.13.0", "libc", "nom", @@ -7917,7 +7919,7 @@ version = "0.1.0" dependencies = [ "cfg-if", "chrono", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "http", "hyper", @@ -7943,7 +7945,7 @@ dependencies = [ "omicron-workspace-hack", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -7953,7 +7955,7 @@ dependencies = [ "anyhow", "chrono", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "internal-dns-resolver", "internal-dns-types", "nexus-client", @@ -7988,7 +7990,7 @@ dependencies = [ "schemars", "serde", "slog-error-chain", - "syn 2.0.87", + "syn 2.0.90", "toml 0.8.19", ] @@ -8017,7 +8019,7 @@ dependencies = [ "oximeter-types", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -8232,7 +8234,7 @@ dependencies = [ "regex", "regex-syntax 0.8.5", "structmeta 0.3.0", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -8419,7 +8421,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -8440,7 +8442,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_derive", ] @@ -8522,7 +8524,7 @@ checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -8824,7 +8826,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -8881,9 +8883,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.89" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -8922,7 +8924,7 @@ checksum = "d85934a440963a69f9f04f48507ff6e7aa2952a5b2d8f96cc37fa3dd5c270f66" dependencies = [ "heck 0.5.0", "http", - "indexmap 2.6.0", + "indexmap 2.7.0", "openapiv3", "proc-macro2", "quote", @@ -8930,7 +8932,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "syn 2.0.87", + "syn 2.0.90", "thiserror 1.0.69", "typify", "unicode-ident", @@ -8951,7 +8953,7 @@ dependencies = [ "serde_json", "serde_tokenstream", "serde_yaml", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -9284,7 +9286,7 @@ name = "range-requests" version = "0.1.0" dependencies = [ "bytes", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "http", "http-body", @@ -9361,7 +9363,7 @@ dependencies = [ "camino-tempfile", "chrono", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "expectorate", "humantime", "indent_write", @@ -9461,7 +9463,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -9529,7 +9531,7 @@ checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" name = "repo-depot-api" version = "0.1.0" dependencies = [ - "dropshot 0.13.0", + "dropshot 0.15.0", "omicron-common", "omicron-workspace-hack", "schemars", @@ -9733,7 +9735,7 @@ dependencies = [ "regex", "relative-path", "rustc_version 0.4.1", - "syn 2.0.87", + "syn 2.0.90", "unicode-ident", ] @@ -10200,7 +10202,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10226,7 +10228,7 @@ checksum = "7f81c2fde025af7e69b1d1420531c8a8811ca898919db177141a85313b1cb932" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10348,7 +10350,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10359,7 +10361,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10420,7 +10422,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10441,7 +10443,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10466,7 +10468,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_derive", "serde_json", @@ -10483,7 +10485,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -10492,7 +10494,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "itoa", "ryu", "serde", @@ -10666,7 +10668,7 @@ name = "sled-agent-api" version = "0.1.0" dependencies = [ "camino", - "dropshot 0.13.0", + "dropshot 0.15.0", "http", "nexus-sled-agent-shared", "omicron-common", @@ -10881,7 +10883,7 @@ source = "git+https://github.com/oxidecomputer/slog-error-chain?branch=main#15f6 dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11005,10 +11007,10 @@ version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03c3c6b7927ffe7ecaa769ee0e3994da3b8cafc8f444578982c83ecb161af917" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11028,7 +11030,7 @@ dependencies = [ "anyhow", "async-trait", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "gateway-messages", "gateway-types", @@ -11126,7 +11128,7 @@ checksum = "01b2e185515564f15375f593fb966b5718bc624ba77fe49fa4616ad619690554" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11269,7 +11271,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive 0.2.0", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11281,7 +11283,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive 0.3.0", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11292,7 +11294,7 @@ checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11303,7 +11305,7 @@ checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11338,7 +11340,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11351,7 +11353,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11398,9 +11400,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -11430,7 +11432,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11601,7 +11603,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta 0.2.0", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11641,7 +11643,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11652,7 +11654,7 @@ checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11799,7 +11801,7 @@ checksum = "8d9ef545650e79f30233c0003bcc2504d7efac6dad25fca40744de773fe2049c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -11845,9 +11847,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.40.0" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "bytes", @@ -11869,7 +11871,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -12040,7 +12042,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_spanned", "toml_datetime", @@ -12053,7 +12055,7 @@ version = "0.22.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "serde", "serde_spanned", "toml_datetime", @@ -12140,7 +12142,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -12386,7 +12388,7 @@ dependencies = [ "semver 1.0.23", "serde", "serde_json", - "syn 2.0.87", + "syn 2.0.90", "thiserror 1.0.69", "unicode-ident", ] @@ -12404,7 +12406,7 @@ dependencies = [ "serde", "serde_json", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", "typify-impl", ] @@ -12543,7 +12545,7 @@ dependencies = [ "clap", "debug-ignore", "display-error-chain", - "dropshot 0.13.0", + "dropshot 0.15.0", "futures", "hex", "hubtools", @@ -12578,7 +12580,7 @@ dependencies = [ "either", "futures", "indent_write", - "indexmap 2.6.0", + "indexmap 2.7.0", "indicatif", "indoc 2.0.5", "libsw", @@ -12637,7 +12639,7 @@ dependencies = [ "proc-macro2", "quote", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", "usdt-impl", ] @@ -12655,7 +12657,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.87", + "syn 2.0.90", "thiserror 1.0.69", "thread-id", "version_check", @@ -12671,7 +12673,7 @@ dependencies = [ "proc-macro2", "quote", "serde_tokenstream", - "syn 2.0.87", + "syn 2.0.90", "usdt-impl", ] @@ -12862,7 +12864,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", "wasm-bindgen-shared", ] @@ -12896,7 +12898,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -12987,7 +12989,7 @@ dependencies = [ "futures", "hex", "humantime", - "indexmap 2.6.0", + "indexmap 2.7.0", "indicatif", "itertools 0.13.0", "maplit", @@ -13029,7 +13031,7 @@ version = "0.1.0" dependencies = [ "anyhow", "dpd-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "gateway-client", "maplit", "omicron-common", @@ -13085,7 +13087,7 @@ dependencies = [ "debug-ignore", "display-error-chain", "dpd-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "either", "expectorate", "flate2", @@ -13154,7 +13156,7 @@ name = "wicketd-api" version = "0.1.0" dependencies = [ "bootstrap-agent-client", - "dropshot 0.13.0", + "dropshot 0.15.0", "gateway-client", "omicron-common", "omicron-passwords", @@ -13580,7 +13582,7 @@ checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", "synstructure", ] @@ -13621,7 +13623,7 @@ checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -13632,7 +13634,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -13643,7 +13645,7 @@ checksum = "593e7c96176495043fcb9e87cf7659f4d18679b5bab6b92bdef359c76a7795dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -13663,7 +13665,7 @@ checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", "synstructure", ] @@ -13684,7 +13686,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -13706,7 +13708,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.90", ] [[package]] @@ -13734,7 +13736,7 @@ dependencies = [ "crossbeam-utils", "displaydoc", "flate2", - "indexmap 2.6.0", + "indexmap 2.7.0", "memchr", "thiserror 1.0.69", "zopfli", @@ -13770,7 +13772,7 @@ dependencies = [ "anyhow", "camino", "clap", - "dropshot 0.13.0", + "dropshot 0.15.0", "illumos-utils", "omicron-common", "omicron-sled-agent", diff --git a/Cargo.toml b/Cargo.toml index 66ebc7966c..0c1539119f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -366,7 +366,7 @@ dns-server = { path = "dns-server" } dns-server-api = { path = "dns-server-api" } dns-service-client = { path = "clients/dns-service-client" } dpd-client = { path = "clients/dpd-client" } -dropshot = { version = "0.13.0", features = [ "usdt-probes" ] } +dropshot = { version = "0.15.0", features = [ "usdt-probes" ] } dyn-clone = "1.0.17" either = "1.13.0" expectorate = "1.1.0" @@ -886,8 +886,3 @@ path = "workspace-hack" [patch."https://github.com/oxidecomputer/omicron"] omicron-uuid-kinds = { path = "uuid-kinds" } omicron-common = { path = "common" } - -# /!\ REMOVE BEFORE FLIGHT: Temporary patch to test dropshot breaking changes -[patch.crates-io.dropshot] -git = 'https://github.com/oxidecomputer/dropshot' -branch = 'eliza/custom-error-httpresponse-result' diff --git a/clickhouse-admin/src/clickhouse_cli.rs b/clickhouse-admin/src/clickhouse_cli.rs index a6f5cc0e0d..34ea746a0e 100644 --- a/clickhouse-admin/src/clickhouse_cli.rs +++ b/clickhouse-admin/src/clickhouse_cli.rs @@ -60,6 +60,7 @@ impl From for HttpError { error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, + headers: None, } } } diff --git a/clickhouse-admin/src/clickward.rs b/clickhouse-admin/src/clickward.rs index 9703dfa73b..a6339c3888 100644 --- a/clickhouse-admin/src/clickward.rs +++ b/clickhouse-admin/src/clickward.rs @@ -28,6 +28,7 @@ impl From for HttpError { error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, + headers: None, } } } diff --git a/cockroach-admin/src/cockroach_cli.rs b/cockroach-admin/src/cockroach_cli.rs index d0121904b0..e072dc9b34 100644 --- a/cockroach-admin/src/cockroach_cli.rs +++ b/cockroach-admin/src/cockroach_cli.rs @@ -50,6 +50,7 @@ impl From for HttpError { error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, + headers: None, } } } diff --git a/cockroach-admin/src/context.rs b/cockroach-admin/src/context.rs index 98cf514352..d986967c54 100644 --- a/cockroach-admin/src/context.rs +++ b/cockroach-admin/src/context.rs @@ -57,6 +57,7 @@ impl ServerContext { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, }) } } diff --git a/common/src/api/external/error.rs b/common/src/api/external/error.rs index ec888a302d..e5e5376422 100644 --- a/common/src/api/external/error.rs +++ b/common/src/api/external/error.rs @@ -435,6 +435,7 @@ impl From for HttpError { "credentials missing or invalid", ), internal_message, + headers: None, }, Error::InvalidRequest { message } => { @@ -445,6 +446,7 @@ impl From for HttpError { error_code: Some(String::from("InvalidRequest")), external_message, internal_message, + headers: None, } } @@ -459,6 +461,7 @@ impl From for HttpError { label, external_message ), internal_message, + headers: None, } } @@ -493,6 +496,7 @@ impl From for HttpError { external_message ), internal_message, + headers: None, } } @@ -508,6 +512,7 @@ impl From for HttpError { error_code: Some(String::from("Conflict")), external_message, internal_message, + headers: None, } } @@ -519,6 +524,7 @@ impl From for HttpError { error_code: Some(String::from("Not Found")), external_message, internal_message, + headers: None, } } diff --git a/dns-server/examples/config.toml b/dns-server/examples/config.toml index 72909e3cf5..07413092ba 100644 --- a/dns-server/examples/config.toml +++ b/dns-server/examples/config.toml @@ -1,7 +1,7 @@ [dropshot] # 100 MiB. This ought to be large enough for a while, but not so large that # we'll use tons of memory parsing incoming HTTP requests. -request_body_max_bytes = 104857600 +default_request_body_max_bytes = 104857600 [log] # Show log messages of this level and more severe diff --git a/dns-server/src/http_server.rs b/dns-server/src/http_server.rs index edd10d0db6..17e3167232 100644 --- a/dns-server/src/http_server.rs +++ b/dns-server/src/http_server.rs @@ -70,6 +70,7 @@ impl From for dropshot::HttpError { )), external_message: message.clone(), internal_message: message, + headers: None, }, UpdateError::UpdateInProgress { .. } => dropshot::HttpError { @@ -77,6 +78,7 @@ impl From for dropshot::HttpError { error_code: Some(String::from(ERROR_CODE_UPDATE_IN_PROGRESS)), external_message: message.clone(), internal_message: message, + headers: None, }, UpdateError::InternalError(_) => { diff --git a/gateway/examples/config.toml b/gateway/examples/config.toml index 6741ee5921..89c8a5fa53 100644 --- a/gateway/examples/config.toml +++ b/gateway/examples/config.toml @@ -11,7 +11,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] # We want to allow uploads of host phase 2 recovery images, which may be # measured in the (small) hundreds of MiB. Set this to 1 GiB for testing. -request_body_max_bytes = 1_073_741_824 +default_request_body_max_bytes = 1_073_741_824 [switch] # Which interface is connected to our local sidecar SP (i.e., the SP that acts diff --git a/gateway/src/error.rs b/gateway/src/error.rs index 7546a01c88..a726293ba1 100644 --- a/gateway/src/error.rs +++ b/gateway/src/error.rs @@ -190,5 +190,6 @@ pub(crate) fn http_err_with_message( error_code: Some(error_code.to_string()), external_message: message.clone(), internal_message: message, + headers: None, } } diff --git a/illumos-utils/src/lib.rs b/illumos-utils/src/lib.rs index 6eef2f619a..0b3cae313d 100644 --- a/illumos-utils/src/lib.rs +++ b/illumos-utils/src/lib.rs @@ -82,6 +82,7 @@ impl From for HttpError { error_code: Some(String::from("Internal")), external_message: message.clone(), internal_message: message, + headers: None, } } } diff --git a/nexus-config/src/nexus_config.rs b/nexus-config/src/nexus_config.rs index c4cb755042..297b486de6 100644 --- a/nexus-config/src/nexus_config.rs +++ b/nexus-config/src/nexus_config.rs @@ -902,10 +902,10 @@ mod test { external_dns_servers = [ "1.1.1.1", "9.9.9.9" ] [deployment.dropshot_external] bind_address = "10.1.2.3:4567" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.dropshot_internal] bind_address = "10.1.2.3:4568" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.internal_dns] type = "from_subnet" subnet.net = "::/56" @@ -1176,10 +1176,10 @@ mod test { external_dns_servers = [ "1.1.1.1", "9.9.9.9" ] [deployment.dropshot_external] bind_address = "10.1.2.3:4567" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.dropshot_internal] bind_address = "10.1.2.3:4568" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.internal_dns] type = "from_subnet" subnet.net = "::/56" @@ -1262,10 +1262,10 @@ mod test { external_dns_servers = [ "1.1.1.1", "9.9.9.9" ] [deployment.dropshot_external] bind_address = "10.1.2.3:4567" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.dropshot_internal] bind_address = "10.1.2.3:4568" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.internal_dns] type = "from_subnet" subnet.net = "::/56" @@ -1319,10 +1319,10 @@ mod test { external_dns_servers = [ "1.1.1.1", "9.9.9.9" ] [deployment.dropshot_external] bind_address = "10.1.2.3:4567" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.dropshot_internal] bind_address = "10.1.2.3:4568" - request_body_max_bytes = 1024 + default_request_body_max_bytes = 1024 [deployment.internal_dns] type = "from_subnet" subnet.net = "::/56" diff --git a/nexus/examples/config-second.toml b/nexus/examples/config-second.toml index a955766554..11db1d4568 100644 --- a/nexus/examples/config-second.toml +++ b/nexus/examples/config-second.toml @@ -60,7 +60,7 @@ bind_address = "127.0.0.1:12222" # # This should be brought back down to a more reasonable value once per-endpoint # request body limits are implemented. -request_body_max_bytes = 3221225472 +default_request_body_max_bytes = 3221225472 # To have Nexus's external HTTP endpoint use TLS, uncomment the line below. You # will also need to provide an initial TLS certificate during rack # initialization. If you're using this config file, you're probably running a @@ -73,7 +73,7 @@ request_body_max_bytes = 3221225472 # This config file uses 12223 to avoid colliding with the usual 12221 that's # used by `omicron-dev run-all` bind_address = "[::1]:12223" -request_body_max_bytes = 1048576 +default_request_body_max_bytes = 1048576 #[deployment.internal_dns] ## These values are overridden at the bottom of this file. diff --git a/nexus/examples/config.toml b/nexus/examples/config.toml index ce3dfe5751..6c83a370eb 100644 --- a/nexus/examples/config.toml +++ b/nexus/examples/config.toml @@ -46,7 +46,7 @@ bind_address = "127.0.0.1:12220" # # This should be brought back down to a more reasonable value once per-endpoint # request body limits are implemented. -request_body_max_bytes = 3221225472 +default_request_body_max_bytes = 3221225472 # To have Nexus's external HTTP endpoint use TLS, uncomment the line below. You # will also need to provide an initial TLS certificate during rack # initialization. If you're using this config file, you're probably running a @@ -57,7 +57,7 @@ request_body_max_bytes = 3221225472 [deployment.dropshot_internal] # IP Address and TCP port on which to listen for the internal API bind_address = "[::1]:12221" -request_body_max_bytes = 1048576 +default_request_body_max_bytes = 1048576 [deployment.internal_dns] # Example address. diff --git a/nexus/src/app/background/init.rs b/nexus/src/app/background/init.rs index ad39777054..9d23b12492 100644 --- a/nexus/src/app/background/init.rs +++ b/nexus/src/app/background/init.rs @@ -1098,7 +1098,7 @@ pub mod test { }, &dropshot::ConfigDropshot { bind_address: "[::1]:0".parse().unwrap(), - request_body_max_bytes: 8 * 1024, + default_request_body_max_bytes: 8 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }, diff --git a/nexus/test-utils/src/http_testing.rs b/nexus/test-utils/src/http_testing.rs index afa0a8af03..8d4ce4890d 100644 --- a/nexus/test-utils/src/http_testing.rs +++ b/nexus/test-utils/src/http_testing.rs @@ -349,7 +349,15 @@ impl<'a> RequestBuilder<'a> { if let Some(allowed_headers) = self.allowed_headers { for header_name in headers.keys() { ensure!( - allowed_headers.contains(header_name), + allowed_headers.contains(header_name) + || ( + // Dropshot adds `allow` headers to its 405 Method + // Not Allowed responses, per RFC 9110. If we expect + // a 405 we should also inherently expect `allow`. + self.expected_status + == Some(http::StatusCode::METHOD_NOT_ALLOWED) + && header_name == http::header::ALLOW + ), "response contained unexpected header {:?}", header_name ); diff --git a/nexus/tests/config.test.toml b/nexus/tests/config.test.toml index 94d22d491f..2b3cd92740 100644 --- a/nexus/tests/config.test.toml +++ b/nexus/tests/config.test.toml @@ -50,11 +50,11 @@ external_dns_servers = ["1.1.1.1", "9.9.9.9"] # available port) because the test suite will be running many servers # concurrently. bind_address = "127.0.0.1:0" -request_body_max_bytes = 8388608 +default_request_body_max_bytes = 8388608 [deployment.dropshot_internal] bind_address = "127.0.0.1:0" -request_body_max_bytes = 8388608 +default_request_body_max_bytes = 8388608 # # NOTE: for the test suite, the internal DNS address will be replaced with one diff --git a/sled-agent/src/boot_disk_os_writer.rs b/sled-agent/src/boot_disk_os_writer.rs index bc3affef2d..e8b89446ae 100644 --- a/sled-agent/src/boot_disk_os_writer.rs +++ b/sled-agent/src/boot_disk_os_writer.rs @@ -140,6 +140,7 @@ impl From<&BootDiskOsWriteError> for HttpError { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, } } } diff --git a/sled-agent/src/http_entrypoints.rs b/sled-agent/src/http_entrypoints.rs index b7b114473c..5313138bac 100644 --- a/sled-agent/src/http_entrypoints.rs +++ b/sled-agent/src/http_entrypoints.rs @@ -708,6 +708,7 @@ impl SledAgentApi for SledAgentImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, } })?; Ok(HttpResponseUpdatedNoContent()) @@ -759,6 +760,7 @@ impl SledAgentApi for SledAgentImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, }); } None => { @@ -768,6 +770,7 @@ impl SledAgentApi for SledAgentImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, }); } }; diff --git a/sled-agent/src/sim/http_entrypoints.rs b/sled-agent/src/sim/http_entrypoints.rs index cdbf958562..e61a7fa6a5 100644 --- a/sled-agent/src/sim/http_entrypoints.rs +++ b/sled-agent/src/sim/http_entrypoints.rs @@ -667,6 +667,7 @@ fn method_unimplemented() -> Result { .to_string(), internal_message: "Method not implemented in sled-agent-sim" .to_string(), + headers: None, }) } diff --git a/smf/clickhouse-admin-keeper/config.toml b/smf/clickhouse-admin-keeper/config.toml index 86ee2c5d4b..7076f1edaa 100644 --- a/smf/clickhouse-admin-keeper/config.toml +++ b/smf/clickhouse-admin-keeper/config.toml @@ -1,6 +1,6 @@ [dropshot] # 1 MiB; we don't expect any requests of more than nominal size. -request_body_max_bytes = 1048576 +default_request_body_max_bytes = 1048576 [log] # Show log messages of this level and more severe diff --git a/smf/clickhouse-admin-server/config.toml b/smf/clickhouse-admin-server/config.toml index 86ee2c5d4b..7076f1edaa 100644 --- a/smf/clickhouse-admin-server/config.toml +++ b/smf/clickhouse-admin-server/config.toml @@ -1,6 +1,6 @@ [dropshot] # 1 MiB; we don't expect any requests of more than nominal size. -request_body_max_bytes = 1048576 +default_request_body_max_bytes = 1048576 [log] # Show log messages of this level and more severe diff --git a/smf/clickhouse-admin-single/config.toml b/smf/clickhouse-admin-single/config.toml index 86ee2c5d4b..7076f1edaa 100644 --- a/smf/clickhouse-admin-single/config.toml +++ b/smf/clickhouse-admin-single/config.toml @@ -1,6 +1,6 @@ [dropshot] # 1 MiB; we don't expect any requests of more than nominal size. -request_body_max_bytes = 1048576 +default_request_body_max_bytes = 1048576 [log] # Show log messages of this level and more severe diff --git a/smf/cockroach-admin/config.toml b/smf/cockroach-admin/config.toml index 86ee2c5d4b..7076f1edaa 100644 --- a/smf/cockroach-admin/config.toml +++ b/smf/cockroach-admin/config.toml @@ -1,6 +1,6 @@ [dropshot] # 1 MiB; we don't expect any requests of more than nominal size. -request_body_max_bytes = 1048576 +default_request_body_max_bytes = 1048576 [log] # Show log messages of this level and more severe diff --git a/smf/external-dns/config.toml b/smf/external-dns/config.toml index b090d3391e..03ffb6d6c3 100644 --- a/smf/external-dns/config.toml +++ b/smf/external-dns/config.toml @@ -1,7 +1,7 @@ [dropshot] # 100 MiB. This ought to be large enough for a while, but not so large that # we'll use tons of memory parsing it. -request_body_max_bytes = 104857600 +default_request_body_max_bytes = 104857600 [log] # Show log messages of this level and more severe diff --git a/smf/internal-dns/config.toml b/smf/internal-dns/config.toml index b090d3391e..03ffb6d6c3 100644 --- a/smf/internal-dns/config.toml +++ b/smf/internal-dns/config.toml @@ -1,7 +1,7 @@ [dropshot] # 100 MiB. This ought to be large enough for a while, but not so large that # we'll use tons of memory parsing it. -request_body_max_bytes = 104857600 +default_request_body_max_bytes = 104857600 [log] # Show log messages of this level and more severe diff --git a/smf/sled-agent/gimlet-standalone/config.toml b/smf/sled-agent/gimlet-standalone/config.toml index 620dd17290..18e4602b26 100644 --- a/smf/sled-agent/gimlet-standalone/config.toml +++ b/smf/sled-agent/gimlet-standalone/config.toml @@ -44,7 +44,7 @@ data_links = ["net0", "net1"] [dropshot] # Host OS images are just over 800 MiB currently; set this to 2 GiB to give some # breathing room. -request_body_max_bytes = 2_147_483_648 +default_request_body_max_bytes = 2_147_483_648 [log] level = "info" diff --git a/smf/sled-agent/gimlet/config.toml b/smf/sled-agent/gimlet/config.toml index 55bfbbbc82..07bff27b32 100644 --- a/smf/sled-agent/gimlet/config.toml +++ b/smf/sled-agent/gimlet/config.toml @@ -40,7 +40,7 @@ data_links = ["cxgbe0", "cxgbe1"] [dropshot] # Host OS images are just over 800 MiB currently; set this to 2 GiB to give some # breathing room. -request_body_max_bytes = 2_147_483_648 +default_request_body_max_bytes = 2_147_483_648 [log] level = "info" diff --git a/smf/sled-agent/non-gimlet/config.toml b/smf/sled-agent/non-gimlet/config.toml index 03737cd3c0..05d129ff20 100644 --- a/smf/sled-agent/non-gimlet/config.toml +++ b/smf/sled-agent/non-gimlet/config.toml @@ -81,7 +81,7 @@ data_links = ["net0", "net1"] [dropshot] # Host OS images are just over 800 MiB currently; set this to 2 GiB to give some # breathing room. -request_body_max_bytes = 2_147_483_648 +default_request_body_max_bytes = 2_147_483_648 [log] level = "info" diff --git a/update-common/src/errors.rs b/update-common/src/errors.rs index a862c34f9b..d4dc9c6bfc 100644 --- a/update-common/src/errors.rs +++ b/update-common/src/errors.rs @@ -192,6 +192,7 @@ impl RepositoryError { error_code: error.error_code.clone(), external_message: error.external_message.clone(), internal_message: error.internal_message.clone(), + headers: None, }, // Errors that are definitely caused by bad repository contents. diff --git a/wicketd/src/http_entrypoints.rs b/wicketd/src/http_entrypoints.rs index d180f036e6..6cd8ee813a 100644 --- a/wicketd/src/http_entrypoints.rs +++ b/wicketd/src/http_entrypoints.rs @@ -224,6 +224,7 @@ impl WicketdApi for WicketdApiImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, } } other => HttpError::for_bad_request( @@ -279,6 +280,7 @@ impl WicketdApi for WicketdApiImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, } } other => HttpError::for_bad_request( @@ -326,6 +328,7 @@ impl WicketdApi for WicketdApiImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, } } other => HttpError::for_bad_request( @@ -490,6 +493,7 @@ impl WicketdApi for WicketdApiImpl { error_code: None, external_message: message.clone(), internal_message: message, + headers: None, }); } }; @@ -880,5 +884,6 @@ fn http_error_from_client_error( error_code: None, external_message: message.clone(), internal_message: message, + headers: None, } } diff --git a/workspace-hack/Cargo.toml b/workspace-hack/Cargo.toml index b0bf8858d5..183b5077af 100644 --- a/workspace-hack/Cargo.toml +++ b/workspace-hack/Cargo.toml @@ -66,8 +66,8 @@ hashbrown = { version = "0.15.0" } hex = { version = "0.4.3", features = ["serde"] } hickory-proto = { version = "0.24.1", features = ["text-parsing"] } hmac = { version = "0.12.1", default-features = false, features = ["reset"] } -hyper = { version = "1.5.0", features = ["full"] } -indexmap = { version = "2.6.0", features = ["serde"] } +hyper = { version = "1.5.1", features = ["full"] } +indexmap = { version = "2.7.0", features = ["serde"] } inout = { version = "0.1.3", default-features = false, features = ["std"] } itertools-5ef9efb8ec2df382 = { package = "itertools", version = "0.12.1" } itertools-93f6ce9d446188ac = { package = "itertools", version = "0.10.5" } @@ -92,7 +92,7 @@ phf_shared = { version = "0.11.2" } pkcs8 = { version = "0.10.2", default-features = false, features = ["encryption", "pem", "std"] } postgres-types = { version = "0.2.8", default-features = false, features = ["with-chrono-0_4", "with-serde_json-1", "with-uuid-1"] } predicates = { version = "3.1.2" } -proc-macro2 = { version = "1.0.89" } +proc-macro2 = { version = "1.0.92" } qorb = { version = "0.2.1", features = ["qtop"] } quote = { version = "1.0.37" } rand = { version = "0.8.5", features = ["small_rng"] } @@ -107,7 +107,7 @@ schemars = { version = "0.8.21", features = ["bytes", "chrono", "uuid1"] } scopeguard = { version = "1.2.0" } semver = { version = "1.0.23", features = ["serde"] } serde = { version = "1.0.215", features = ["alloc", "derive", "rc"] } -serde_json = { version = "1.0.132", features = ["raw_value", "unbounded_depth"] } +serde_json = { version = "1.0.133", features = ["raw_value", "unbounded_depth"] } sha1 = { version = "0.10.6", features = ["oid"] } sha2 = { version = "0.10.8", features = ["oid"] } similar = { version = "2.6.0", features = ["bytes", "inline", "unicode"] } @@ -116,9 +116,9 @@ smallvec = { version = "1.13.2", default-features = false, features = ["const_ne spin = { version = "0.9.8" } string_cache = { version = "0.8.7" } subtle = { version = "2.6.1" } -syn-f595c2ba2a3f28df = { package = "syn", version = "2.0.87", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } +syn-f595c2ba2a3f28df = { package = "syn", version = "2.0.90", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } time = { version = "0.3.36", features = ["formatting", "local-offset", "macros", "parsing"] } -tokio = { version = "1.40.0", features = ["full", "test-util"] } +tokio = { version = "1.42.0", features = ["full", "test-util"] } tokio-postgres = { version = "0.7.12", features = ["with-chrono-0_4", "with-serde_json-1", "with-uuid-1"] } tokio-stream = { version = "0.1.16", features = ["net", "sync"] } tokio-util = { version = "0.7.12", features = ["codec", "io-util"] } @@ -186,8 +186,8 @@ hashbrown = { version = "0.15.0" } hex = { version = "0.4.3", features = ["serde"] } hickory-proto = { version = "0.24.1", features = ["text-parsing"] } hmac = { version = "0.12.1", default-features = false, features = ["reset"] } -hyper = { version = "1.5.0", features = ["full"] } -indexmap = { version = "2.6.0", features = ["serde"] } +hyper = { version = "1.5.1", features = ["full"] } +indexmap = { version = "2.7.0", features = ["serde"] } inout = { version = "0.1.3", default-features = false, features = ["std"] } itertools-5ef9efb8ec2df382 = { package = "itertools", version = "0.12.1" } itertools-93f6ce9d446188ac = { package = "itertools", version = "0.10.5" } @@ -212,7 +212,7 @@ phf_shared = { version = "0.11.2" } pkcs8 = { version = "0.10.2", default-features = false, features = ["encryption", "pem", "std"] } postgres-types = { version = "0.2.8", default-features = false, features = ["with-chrono-0_4", "with-serde_json-1", "with-uuid-1"] } predicates = { version = "3.1.2" } -proc-macro2 = { version = "1.0.89" } +proc-macro2 = { version = "1.0.92" } qorb = { version = "0.2.1", features = ["qtop"] } quote = { version = "1.0.37" } rand = { version = "0.8.5", features = ["small_rng"] } @@ -227,7 +227,7 @@ schemars = { version = "0.8.21", features = ["bytes", "chrono", "uuid1"] } scopeguard = { version = "1.2.0" } semver = { version = "1.0.23", features = ["serde"] } serde = { version = "1.0.215", features = ["alloc", "derive", "rc"] } -serde_json = { version = "1.0.132", features = ["raw_value", "unbounded_depth"] } +serde_json = { version = "1.0.133", features = ["raw_value", "unbounded_depth"] } sha1 = { version = "0.10.6", features = ["oid"] } sha2 = { version = "0.10.8", features = ["oid"] } similar = { version = "2.6.0", features = ["bytes", "inline", "unicode"] } @@ -237,10 +237,10 @@ spin = { version = "0.9.8" } string_cache = { version = "0.8.7" } subtle = { version = "2.6.1" } syn-dff4ba8e3ae991db = { package = "syn", version = "1.0.109", features = ["extra-traits", "fold", "full", "visit"] } -syn-f595c2ba2a3f28df = { package = "syn", version = "2.0.87", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } +syn-f595c2ba2a3f28df = { package = "syn", version = "2.0.90", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } time = { version = "0.3.36", features = ["formatting", "local-offset", "macros", "parsing"] } time-macros = { version = "0.2.18", default-features = false, features = ["formatting", "parsing"] } -tokio = { version = "1.40.0", features = ["full", "test-util"] } +tokio = { version = "1.42.0", features = ["full", "test-util"] } tokio-postgres = { version = "0.7.12", features = ["with-chrono-0_4", "with-serde_json-1", "with-uuid-1"] } tokio-stream = { version = "0.1.16", features = ["net", "sync"] } tokio-util = { version = "0.7.12", features = ["codec", "io-util"] } From 8dd03e9a04b71b3a6a2b16777fbd237380a007df Mon Sep 17 00:00:00 2001 From: iliana etaoin Date: Mon, 9 Dec 2024 17:56:05 +0000 Subject: [PATCH 5/8] update to dropshot 0.15.1 --- Cargo.lock | 104 ++++++++++++++++++++++++++--------------------------- Cargo.toml | 2 +- 2 files changed, 53 insertions(+), 53 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d37acdedbc..5bb29aa18c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -906,7 +906,7 @@ dependencies = [ name = "bootstrap-agent-api" version = "0.1.0" dependencies = [ - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-common", "omicron-uuid-kinds", "omicron-workspace-hack", @@ -1170,7 +1170,7 @@ version = "0.1.0" dependencies = [ "anyhow", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "libc", "omicron-common", @@ -1337,7 +1337,7 @@ name = "clickhouse-admin-api" version = "0.1.0" dependencies = [ "clickhouse-admin-types", - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-common", "omicron-uuid-kinds", "omicron-workspace-hack", @@ -1397,7 +1397,7 @@ dependencies = [ "camino", "clickhouse-admin-types", "clickward", - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-workspace-hack", ] @@ -1482,7 +1482,7 @@ name = "cockroach-admin-api" version = "0.1.0" dependencies = [ "cockroach-admin-types", - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-common", "omicron-uuid-kinds", "omicron-workspace-hack", @@ -1707,7 +1707,7 @@ name = "crdb-seed" version = "0.1.0" dependencies = [ "anyhow", - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-test-utils", "omicron-workspace-hack", "slog", @@ -2440,7 +2440,7 @@ dependencies = [ "clap", "dns-server-api", "dns-service-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "hickory-client", "hickory-proto", @@ -2475,7 +2475,7 @@ name = "dns-server-api" version = "0.1.0" dependencies = [ "chrono", - "dropshot 0.15.0", + "dropshot 0.15.1", "internal-dns-types", "omicron-workspace-hack", "schemars", @@ -2600,9 +2600,9 @@ dependencies = [ [[package]] name = "dropshot" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd4d216de78db95befa6c071bd36c9ef493806c06f3f267a0ca2582ff860b36b" +checksum = "b84e9c34a06ac21fefe60cf9e5cc321eac9f3d3e2d693e030da3709cf4275479" dependencies = [ "async-stream", "async-trait", @@ -2611,7 +2611,7 @@ dependencies = [ "camino", "chrono", "debug-ignore", - "dropshot_endpoint 0.15.0", + "dropshot_endpoint 0.15.1", "form_urlencoded", "futures", "hostname 0.4.0", @@ -2665,9 +2665,9 @@ dependencies = [ [[package]] name = "dropshot_endpoint" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e957a4e05bd92e5cce58c341975e725bdf0e8d7ed2ad9626ddd2298fa18efee" +checksum = "1e4c7e4e96bfedd670ecbaffc1848ab28dd5892b214003517d9667e7a5b465ce" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -3338,7 +3338,7 @@ dependencies = [ name = "gateway-api" version = "0.1.0" dependencies = [ - "dropshot 0.15.0", + "dropshot 0.15.1", "gateway-types", "omicron-common", "omicron-uuid-kinds", @@ -3443,7 +3443,7 @@ name = "gateway-test-utils" version = "0.1.0" dependencies = [ "camino", - "dropshot 0.15.0", + "dropshot 0.15.1", "gateway-messages", "gateway-types", "omicron-gateway", @@ -4460,7 +4460,7 @@ dependencies = [ "camino-tempfile", "cfg-if", "crucible-smf", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "http", "ipnetwork", @@ -4663,7 +4663,7 @@ name = "installinator-api" version = "0.1.0" dependencies = [ "anyhow", - "dropshot 0.15.0", + "dropshot 0.15.1", "hyper", "installinator-common", "omicron-common", @@ -4728,7 +4728,7 @@ version = "0.1.0" dependencies = [ "anyhow", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "hickory-resolver", "internal-dns-resolver", "internal-dns-types", @@ -4746,7 +4746,7 @@ dependencies = [ "assert_matches", "dns-server", "dns-service-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "hickory-resolver", @@ -5662,7 +5662,7 @@ dependencies = [ "base64 0.22.1", "chrono", "cookie", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "headers", "http", @@ -5719,7 +5719,7 @@ version = "0.1.0" dependencies = [ "anyhow", "camino", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "libc", "omicron-common", @@ -5812,7 +5812,7 @@ dependencies = [ "db-macros", "diesel", "diesel-dtrace", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "gateway-client", @@ -5895,7 +5895,7 @@ name = "nexus-external-api" version = "0.1.0" dependencies = [ "anyhow", - "dropshot 0.15.0", + "dropshot 0.15.1", "http", "hyper", "ipnetwork", @@ -5912,7 +5912,7 @@ dependencies = [ name = "nexus-internal-api" version = "0.1.0" dependencies = [ - "dropshot 0.15.0", + "dropshot 0.15.1", "nexus-types", "omicron-common", "omicron-uuid-kinds", @@ -6205,7 +6205,7 @@ dependencies = [ "crucible-agent-client", "dns-server", "dns-service-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "gateway-messages", "gateway-test-utils", @@ -6266,7 +6266,7 @@ dependencies = [ "cookie", "derive-where", "derive_more", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "gateway-client", "http", @@ -6609,7 +6609,7 @@ dependencies = [ "clickhouse-admin-test-utils", "clickhouse-admin-types", "clickward", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "http", "illumos-utils", @@ -6648,7 +6648,7 @@ dependencies = [ "cockroach-admin-api", "cockroach-admin-types", "csv", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "http", "illumos-utils", @@ -6690,7 +6690,7 @@ dependencies = [ "camino", "camino-tempfile", "chrono", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "hex", @@ -6750,7 +6750,7 @@ version = "0.1.0" dependencies = [ "anyhow", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "libc", @@ -6790,7 +6790,7 @@ dependencies = [ "camino", "chrono", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "gateway-api", @@ -6834,7 +6834,7 @@ version = "0.1.0" dependencies = [ "anyhow", "assert_matches", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "internal-dns-resolver", "internal-dns-types", @@ -6910,7 +6910,7 @@ dependencies = [ "dns-server", "dns-service-client", "dpd-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "fatfs", "futures", @@ -7038,7 +7038,7 @@ dependencies = [ "crucible-agent-client", "csv", "diesel", - "dropshot 0.15.0", + "dropshot 0.15.1", "dyn-clone", "expectorate", "futures", @@ -7205,7 +7205,7 @@ dependencies = [ "dns-server", "dns-service-client", "dpd-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "flate2", "flume", @@ -7303,7 +7303,7 @@ dependencies = [ "camino", "camino-tempfile", "chrono", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "filetime", "futures", @@ -7556,7 +7556,7 @@ dependencies = [ "clickhouse-admin-api", "cockroach-admin-api", "dns-server-api", - "dropshot 0.15.0", + "dropshot 0.15.1", "fs-err", "gateway-api", "indent_write", @@ -7781,7 +7781,7 @@ name = "oximeter-api" version = "0.1.0" dependencies = [ "chrono", - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-common", "omicron-workspace-hack", "schemars", @@ -7813,7 +7813,7 @@ dependencies = [ "camino", "chrono", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "httpmock", @@ -7870,7 +7870,7 @@ dependencies = [ "crossterm", "debug-ignore", "display-error-chain", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "futures", "gethostname", @@ -7920,7 +7920,7 @@ version = "0.1.0" dependencies = [ "cfg-if", "chrono", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "http", "hyper", @@ -7956,7 +7956,7 @@ dependencies = [ "anyhow", "chrono", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "internal-dns-resolver", "internal-dns-types", "nexus-client", @@ -9287,7 +9287,7 @@ name = "range-requests" version = "0.1.0" dependencies = [ "bytes", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "http", "http-body", @@ -9364,7 +9364,7 @@ dependencies = [ "camino-tempfile", "chrono", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "expectorate", "humantime", "indent_write", @@ -9532,7 +9532,7 @@ checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" name = "repo-depot-api" version = "0.1.0" dependencies = [ - "dropshot 0.15.0", + "dropshot 0.15.1", "omicron-common", "omicron-workspace-hack", "schemars", @@ -10669,7 +10669,7 @@ name = "sled-agent-api" version = "0.1.0" dependencies = [ "camino", - "dropshot 0.15.0", + "dropshot 0.15.1", "http", "nexus-sled-agent-shared", "omicron-common", @@ -11031,7 +11031,7 @@ dependencies = [ "anyhow", "async-trait", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "gateway-messages", "gateway-types", @@ -12546,7 +12546,7 @@ dependencies = [ "clap", "debug-ignore", "display-error-chain", - "dropshot 0.15.0", + "dropshot 0.15.1", "futures", "hex", "hubtools", @@ -13032,7 +13032,7 @@ version = "0.1.0" dependencies = [ "anyhow", "dpd-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "gateway-client", "maplit", "omicron-common", @@ -13088,7 +13088,7 @@ dependencies = [ "debug-ignore", "display-error-chain", "dpd-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "either", "expectorate", "flate2", @@ -13157,7 +13157,7 @@ name = "wicketd-api" version = "0.1.0" dependencies = [ "bootstrap-agent-client", - "dropshot 0.15.0", + "dropshot 0.15.1", "gateway-client", "omicron-common", "omicron-passwords", @@ -13773,7 +13773,7 @@ dependencies = [ "anyhow", "camino", "clap", - "dropshot 0.15.0", + "dropshot 0.15.1", "illumos-utils", "omicron-common", "omicron-sled-agent", diff --git a/Cargo.toml b/Cargo.toml index 0c1539119f..52858748d0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -366,7 +366,7 @@ dns-server = { path = "dns-server" } dns-server-api = { path = "dns-server-api" } dns-service-client = { path = "clients/dns-service-client" } dpd-client = { path = "clients/dpd-client" } -dropshot = { version = "0.15.0", features = [ "usdt-probes" ] } +dropshot = { version = "0.15.1", features = [ "usdt-probes" ] } dyn-clone = "1.0.17" either = "1.13.0" expectorate = "1.1.0" From 459618b71c07708882375790eda8b352a8e1e57c Mon Sep 17 00:00:00 2001 From: iliana etaoin Date: Mon, 16 Dec 2024 19:07:57 +0000 Subject: [PATCH 6/8] clean up high default_request_body_max_bytes values --- gateway-test-utils/configs/config.test.toml | 2 +- gateway/src/config.rs | 2 +- gateway/src/lib.rs | 14 ++++++++------ gateway/src/metrics.rs | 2 +- nexus/examples/config-second.toml | 8 +------- nexus/examples/config.toml | 8 +------- nexus/external-api/src/lib.rs | 9 +++++++++ nexus/internal-api/src/lib.rs | 3 +++ nexus/src/lib.rs | 2 +- nexus/test-utils/src/lib.rs | 2 +- nexus/tests/integration_tests/pantry.rs | 3 +-- oximeter/producer/examples/producer.rs | 2 +- oximeter/producer/src/lib.rs | 10 +++++----- sled-agent/api/src/lib.rs | 18 ++++++++++++++++-- sled-agent/src/metrics.rs | 2 +- sled-agent/src/services.rs | 10 ++-------- sled-agent/src/sim/disk.rs | 2 +- smf/mgs-sim/config.toml | 2 +- smf/mgs/config.toml | 2 +- smf/sled-agent/gimlet-standalone/config.toml | 4 +--- smf/sled-agent/gimlet/config.toml | 4 +--- smf/sled-agent/non-gimlet/config.toml | 4 +--- 22 files changed, 59 insertions(+), 56 deletions(-) diff --git a/gateway-test-utils/configs/config.test.toml b/gateway-test-utils/configs/config.test.toml index 0ed88129cf..85c166fc6f 100644 --- a/gateway-test-utils/configs/config.test.toml +++ b/gateway-test-utils/configs/config.test.toml @@ -11,7 +11,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] # We want to allow uploads of host phase 2 recovery images, which may be # measured in the (small) hundreds of MiB. Set this to 512 MiB. -request_body_max_bytes = 536870912 +default_request_body_max_bytes = 536870912 [switch] # For tests, bind to port 0 (i.e., OS chooses an open port) instead of MGS's diff --git a/gateway/src/config.rs b/gateway/src/config.rs index edf895ef59..3250b4c253 100644 --- a/gateway/src/config.rs +++ b/gateway/src/config.rs @@ -45,7 +45,7 @@ impl Config { #[derive(Clone, Debug, Deserialize, PartialEq, Serialize)] pub struct PartialDropshotConfig { - pub request_body_max_bytes: usize, + pub default_request_body_max_bytes: usize, } #[derive(Debug, Error, SlogInlineError)] diff --git a/gateway/src/lib.rs b/gateway/src/lib.rs index 5450c4fb40..c7e3f66b99 100644 --- a/gateway/src/lib.rs +++ b/gateway/src/lib.rs @@ -64,7 +64,7 @@ pub struct Server { /// collection of `wait_for_shutdown` futures for each server inserted into /// `http_servers` all_servers_shutdown: FuturesUnordered, - request_body_max_bytes: usize, + default_request_body_max_bytes: usize, /// handle to the SP sensor metrics subsystem metrics: metrics::Metrics, log: Logger, @@ -82,7 +82,7 @@ pub struct Server { fn start_dropshot_server( apictx: &Arc, addr: SocketAddrV6, - request_body_max_bytes: usize, + default_request_body_max_bytes: usize, http_servers: &mut HashMap, all_servers_shutdown: &FuturesUnordered, log: &Logger, @@ -91,7 +91,7 @@ fn start_dropshot_server( Entry::Vacant(slot) => { let dropshot = ConfigDropshot { bind_address: SocketAddr::V6(addr), - default_request_body_max_bytes: request_body_max_bytes, + default_request_body_max_bytes, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }; @@ -168,7 +168,7 @@ impl Server { start_dropshot_server( &apictx, addr, - config.dropshot.request_body_max_bytes, + config.dropshot.default_request_body_max_bytes, &mut http_servers, &all_servers_shutdown, &log, @@ -179,7 +179,9 @@ impl Server { apictx, http_servers, all_servers_shutdown, - request_body_max_bytes: config.dropshot.request_body_max_bytes, + default_request_body_max_bytes: config + .dropshot + .default_request_body_max_bytes, metrics, log, }) @@ -267,7 +269,7 @@ impl Server { start_dropshot_server( &self.apictx, addr, - self.request_body_max_bytes, + self.default_request_body_max_bytes, &mut http_servers, &self.all_servers_shutdown, &self.log, diff --git a/gateway/src/metrics.rs b/gateway/src/metrics.rs index d389edf9e6..f91af70bc9 100644 --- a/gateway/src/metrics.rs +++ b/gateway/src/metrics.rs @@ -1104,7 +1104,7 @@ impl ServerManager { let config = oximeter_producer::Config { server_info, registration_address, - request_body_max_bytes: METRIC_REQUEST_MAX_SIZE, + default_request_body_max_bytes: METRIC_REQUEST_MAX_SIZE, log: oximeter_producer::LogConfig::Logger( self.log.clone(), ), diff --git a/nexus/examples/config-second.toml b/nexus/examples/config-second.toml index 11db1d4568..ca7a02d7de 100644 --- a/nexus/examples/config-second.toml +++ b/nexus/examples/config-second.toml @@ -54,13 +54,7 @@ external_dns_servers = ["1.1.1.1", "9.9.9.9"] # This config file uses 12222 to avoid colliding with the usual 12220 that's # used by `omicron-dev run-all` bind_address = "127.0.0.1:12222" -# Allow large request bodies to support uploading TUF archives. The number here -# is picked based on the typical size for tuf-mupdate.zip as of 2024-01 -# (~1.5GiB) and multiplying it by 2. -# -# This should be brought back down to a more reasonable value once per-endpoint -# request body limits are implemented. -default_request_body_max_bytes = 3221225472 +default_request_body_max_bytes = 1048576 # To have Nexus's external HTTP endpoint use TLS, uncomment the line below. You # will also need to provide an initial TLS certificate during rack # initialization. If you're using this config file, you're probably running a diff --git a/nexus/examples/config.toml b/nexus/examples/config.toml index 6c83a370eb..e3708067df 100644 --- a/nexus/examples/config.toml +++ b/nexus/examples/config.toml @@ -40,13 +40,7 @@ external_dns_servers = ["1.1.1.1", "9.9.9.9"] [deployment.dropshot_external] # IP Address and TCP port on which to listen for the external API bind_address = "127.0.0.1:12220" -# Allow large request bodies to support uploading TUF archives. The number here -# is picked based on the typical size for tuf-mupdate.zip as of 2024-01 -# (~1.5GiB) and multiplying it by 2. -# -# This should be brought back down to a more reasonable value once per-endpoint -# request body limits are implemented. -default_request_body_max_bytes = 3221225472 +default_request_body_max_bytes = 1048576 # To have Nexus's external HTTP endpoint use TLS, uncomment the line below. You # will also need to provide an initial TLS certificate during rack # initialization. If you're using this config file, you're probably running a diff --git a/nexus/external-api/src/lib.rs b/nexus/external-api/src/lib.rs index e2b53a7e6f..8a346d4210 100644 --- a/nexus/external-api/src/lib.rs +++ b/nexus/external-api/src/lib.rs @@ -25,6 +25,13 @@ use openapiv3::OpenAPI; pub const API_VERSION: &str = "20241204.0.0"; +const MIB: usize = 1024 * 1024; +const GIB: usize = 1024 * MIB; +const DISK_BULK_WRITE_MAX_BYTES: usize = 8 * MIB; +// Full release repositories are currently (Dec 2024) 1.8 GiB and are likely to +// continue growing. +const PUT_UPDATE_REPOSITORY_MAX_BYTES: usize = 4 * GIB; + // API ENDPOINT FUNCTION NAMING CONVENTIONS // // Generally, HTTP resources are grouped within some collection. For a @@ -1033,6 +1040,7 @@ pub trait NexusExternalApi { method = POST, path = "/v1/disks/{disk}/bulk-write", tags = ["disks"], + request_body_max_bytes = DISK_BULK_WRITE_MAX_BYTES, }] async fn disk_bulk_write_import( rqctx: RequestContext, @@ -2595,6 +2603,7 @@ pub trait NexusExternalApi { path = "/v1/system/update/repository", tags = ["system/update"], unpublished = true, + request_body_max_bytes = PUT_UPDATE_REPOSITORY_MAX_BYTES, }] async fn system_update_put_repository( rqctx: RequestContext, diff --git a/nexus/internal-api/src/lib.rs b/nexus/internal-api/src/lib.rs index 2507b6a688..77a8f6b507 100644 --- a/nexus/internal-api/src/lib.rs +++ b/nexus/internal-api/src/lib.rs @@ -47,6 +47,8 @@ use schemars::JsonSchema; use serde::{Deserialize, Serialize}; use uuid::Uuid; +const RACK_INITIALIZATION_REQUEST_MAX_BYTES: usize = 10 * 1024 * 1024; + #[dropshot::api_description] pub trait NexusInternalApi { type Context; @@ -92,6 +94,7 @@ pub trait NexusInternalApi { #[endpoint { method = PUT, path = "/racks/{rack_id}/initialization-complete", + request_body_max_bytes = RACK_INITIALIZATION_REQUEST_MAX_BYTES, }] async fn rack_initialization_complete( rqctx: RequestContext, diff --git a/nexus/src/lib.rs b/nexus/src/lib.rs index 1a25b2e9aa..540a20eef9 100644 --- a/nexus/src/lib.rs +++ b/nexus/src/lib.rs @@ -460,7 +460,7 @@ fn start_producer_server( // Some(_) here prevents DNS resolution, using our own address to // register. registration_address: Some(nexus_addr), - request_body_max_bytes: 1024 * 1024 * 10, + default_request_body_max_bytes: 1024 * 1024 * 10, log: oximeter_producer::LogConfig::Logger( log.new(o!("component" => "nexus-producer-server")), ), diff --git a/nexus/test-utils/src/lib.rs b/nexus/test-utils/src/lib.rs index b672236f67..43161ae432 100644 --- a/nexus/test-utils/src/lib.rs +++ b/nexus/test-utils/src/lib.rs @@ -1617,7 +1617,7 @@ pub fn start_producer_server( let config = oximeter_producer::Config { server_info, registration_address: Some(nexus_address), - request_body_max_bytes: 1024, + default_request_body_max_bytes: 1024, log: LogConfig::Config(ConfigLogging::StderrTerminal { level: ConfigLoggingLevel::Error, }), diff --git a/nexus/tests/integration_tests/pantry.rs b/nexus/tests/integration_tests/pantry.rs index 22d35b01b5..37e5aa6329 100644 --- a/nexus/tests/integration_tests/pantry.rs +++ b/nexus/tests/integration_tests/pantry.rs @@ -216,8 +216,7 @@ async fn bulk_write_bytes(client: &ClientTestContext) { let bulk_write_url = format!("/v1/disks/{}/bulk-write?project={}", DISK_NAME, PROJECT_NAME,); - // Use 4 MiB chunk size so this test won't take a long time. Requires - // setting request_body_max_bytes accordingly! + // Use 4 MiB chunk size so this test won't take a long time. const CHUNK_SIZE: u64 = 4096 * 1024; for block in 0..8 { diff --git a/oximeter/producer/examples/producer.rs b/oximeter/producer/examples/producer.rs index 87748dd12d..3b4e879ca6 100644 --- a/oximeter/producer/examples/producer.rs +++ b/oximeter/producer/examples/producer.rs @@ -125,7 +125,7 @@ async fn main() -> anyhow::Result<()> { let config = Config { server_info, registration_address: Some(args.nexus), - request_body_max_bytes: 2048, + default_request_body_max_bytes: 2048, log, }; let server = Server::with_registry(registry, &config) diff --git a/oximeter/producer/src/lib.rs b/oximeter/producer/src/lib.rs index e28ab86ac8..04768ff42e 100644 --- a/oximeter/producer/src/lib.rs +++ b/oximeter/producer/src/lib.rs @@ -94,7 +94,7 @@ pub struct Config { /// configured. pub registration_address: Option, /// The maximum size of Dropshot requests. - pub request_body_max_bytes: usize, + pub default_request_body_max_bytes: usize, /// The logging configuration or actual logger used to emit logs. pub log: LogConfig, } @@ -132,7 +132,7 @@ impl Server { registry, config.server_info, config.registration_address.as_ref(), - config.request_body_max_bytes, + config.default_request_body_max_bytes, &config.log, ) } @@ -205,7 +205,7 @@ impl Server { registry: ProducerRegistry, mut server_info: ProducerEndpoint, registration_address: Option<&SocketAddr>, - request_body_max_bytes: usize, + default_request_body_max_bytes: usize, log: &LogConfig, ) -> Result { if registry.producer_id() != server_info.id { @@ -216,7 +216,7 @@ impl Server { let log = Self::build_logger(log)?; let dropshot = ConfigDropshot { bind_address: server_info.address, - default_request_body_max_bytes: request_body_max_bytes, + default_request_body_max_bytes, default_handler_task_mode: dropshot::HandlerTaskMode::Detached, log_headers: vec![], }; @@ -535,7 +535,7 @@ mod tests { interval: Duration::from_secs(10), }, registration_address: Some(fake_nexus.local_addr()), - request_body_max_bytes: 1024, + default_request_body_max_bytes: 1024, log: LogConfig::Logger(log), }; diff --git a/sled-agent/api/src/lib.rs b/sled-agent/api/src/lib.rs index 634640079a..1787f848bb 100644 --- a/sled-agent/api/src/lib.rs +++ b/sled-agent/api/src/lib.rs @@ -56,6 +56,17 @@ use sled_agent_types::{ }; use uuid::Uuid; +// Host OS images are just over 800 MiB currently; set this to 2 GiB to give +// some breathing room. +const HOST_OS_IMAGE_MAX_BYTES: usize = 2 * 1024 * 1024 * 1024; +// The largest TUF repository artifact is in fact the host OS image. (TODO: or +// at least, it will be when we split up the composite control plane artifact; +// tracked by issue #4411.) +const UPDATE_ARTIFACT_MAX_BYTES: usize = HOST_OS_IMAGE_MAX_BYTES; +// TODO This was the previous API-wide max; what is the largest support bundle +// we expect to need to store? +const SUPPORT_BUNDLE_MAX_BYTES: usize = 2 * 1024 * 1024 * 1024; + #[dropshot::api_description] pub trait SledAgentApi { type Context; @@ -172,7 +183,8 @@ pub trait SledAgentApi { /// Create a support bundle within a particular dataset #[endpoint { method = POST, - path = "/support-bundles/{zpool_id}/{dataset_id}/{support_bundle_id}" + path = "/support-bundles/{zpool_id}/{dataset_id}/{support_bundle_id}", + request_body_max_bytes = SUPPORT_BUNDLE_MAX_BYTES, }] async fn support_bundle_create( rqctx: RequestContext, @@ -380,7 +392,8 @@ pub trait SledAgentApi { #[endpoint { method = PUT, - path = "/artifacts/{sha256}" + path = "/artifacts/{sha256}", + request_body_max_bytes = UPDATE_ARTIFACT_MAX_BYTES, }] async fn artifact_put( rqctx: RequestContext, @@ -503,6 +516,7 @@ pub trait SledAgentApi { #[endpoint { method = POST, path = "/boot-disk/{boot_disk}/os/write", + request_body_max_bytes = HOST_OS_IMAGE_MAX_BYTES, }] async fn host_os_write_start( rqctx: RequestContext, diff --git a/sled-agent/src/metrics.rs b/sled-agent/src/metrics.rs index ef9edd9a07..f061bd1cd6 100644 --- a/sled-agent/src/metrics.rs +++ b/sled-agent/src/metrics.rs @@ -528,7 +528,7 @@ fn start_producer_server( interval: METRIC_COLLECTION_INTERVAL, }, registration_address, - request_body_max_bytes: METRIC_REQUEST_MAX_SIZE, + default_request_body_max_bytes: METRIC_REQUEST_MAX_SIZE, log: LogConfig::Logger(log), }; ProducerServer::start(&config).map_err(Error::ProducerServer) diff --git a/sled-agent/src/services.rs b/sled-agent/src/services.rs index 9ce11bafa8..6a9867d1d9 100644 --- a/sled-agent/src/services.rs +++ b/sled-agent/src/services.rs @@ -2357,9 +2357,7 @@ impl ServiceManager { tls: *external_tls, dropshot: dropshot::ConfigDropshot { bind_address: SocketAddr::new(*opte_ip, nexus_port), - // This has to be large enough to support: - // - bulk writes to disks - default_request_body_max_bytes: 8192 * 1024, + default_request_body_max_bytes: 1048576, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], @@ -2367,11 +2365,7 @@ impl ServiceManager { }, dropshot_internal: dropshot::ConfigDropshot { bind_address: (*internal_address).into(), - // This has to be large enough to support, among - // other things, the initial list of TLS - // certificates provided by the customer during - // rack setup. - default_request_body_max_bytes: 10 * 1024 * 1024, + default_request_body_max_bytes: 1048576, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }, diff --git a/sled-agent/src/sim/disk.rs b/sled-agent/src/sim/disk.rs index f08d010ae6..3c87dfb10d 100644 --- a/sled-agent/src/sim/disk.rs +++ b/sled-agent/src/sim/disk.rs @@ -174,7 +174,7 @@ impl SimDisk { let config = oximeter_producer::Config { server_info, registration_address: Some(nexus_address), - request_body_max_bytes: 2048, + default_request_body_max_bytes: 2048, log: LogConfig::Config(ConfigLogging::StderrTerminal { level: ConfigLoggingLevel::Error, }), diff --git a/smf/mgs-sim/config.toml b/smf/mgs-sim/config.toml index 0bfeeba9a6..41d0d7c1f5 100644 --- a/smf/mgs-sim/config.toml +++ b/smf/mgs-sim/config.toml @@ -11,7 +11,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] # We want to allow uploads of host phase 2 recovery images, which may be # measured in the (small) hundreds of MiB. Set this to 512 MiB. -request_body_max_bytes = 536870912 +default_request_body_max_bytes = 536870912 [switch] # Which interface is connected to our local sidecar SP (i.e., the SP that acts diff --git a/smf/mgs/config.toml b/smf/mgs/config.toml index 0f311e5b66..ff19074c94 100644 --- a/smf/mgs/config.toml +++ b/smf/mgs/config.toml @@ -11,7 +11,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] # We want to allow uploads of host phase 2 recovery images, which may be # measured in the (small) hundreds of MiB. Set this to 512 MiB. -request_body_max_bytes = 536870912 +default_request_body_max_bytes = 536870912 [switch] # Which interface is connected to our local sidecar SP (i.e., the SP that acts diff --git a/smf/sled-agent/gimlet-standalone/config.toml b/smf/sled-agent/gimlet-standalone/config.toml index 18e4602b26..5ab9d49ede 100644 --- a/smf/sled-agent/gimlet-standalone/config.toml +++ b/smf/sled-agent/gimlet-standalone/config.toml @@ -42,9 +42,7 @@ swap_device_size_gb = 256 data_links = ["net0", "net1"] [dropshot] -# Host OS images are just over 800 MiB currently; set this to 2 GiB to give some -# breathing room. -default_request_body_max_bytes = 2_147_483_648 +default_request_body_max_bytes = 1048576 [log] level = "info" diff --git a/smf/sled-agent/gimlet/config.toml b/smf/sled-agent/gimlet/config.toml index 07bff27b32..a639240689 100644 --- a/smf/sled-agent/gimlet/config.toml +++ b/smf/sled-agent/gimlet/config.toml @@ -38,9 +38,7 @@ swap_device_size_gb = 256 data_links = ["cxgbe0", "cxgbe1"] [dropshot] -# Host OS images are just over 800 MiB currently; set this to 2 GiB to give some -# breathing room. -default_request_body_max_bytes = 2_147_483_648 +default_request_body_max_bytes = 1048576 [log] level = "info" diff --git a/smf/sled-agent/non-gimlet/config.toml b/smf/sled-agent/non-gimlet/config.toml index 05d129ff20..18a561d134 100644 --- a/smf/sled-agent/non-gimlet/config.toml +++ b/smf/sled-agent/non-gimlet/config.toml @@ -79,9 +79,7 @@ switch_zone_maghemite_links = ["tfportrear0_0"] data_links = ["net0", "net1"] [dropshot] -# Host OS images are just over 800 MiB currently; set this to 2 GiB to give some -# breathing room. -default_request_body_max_bytes = 2_147_483_648 +default_request_body_max_bytes = 1048576 [log] level = "info" From ee6c690eed5781a035bcc41a315b0b0b1dbb0dd5 Mon Sep 17 00:00:00 2001 From: iliana etaoin Date: Mon, 16 Dec 2024 19:32:17 +0000 Subject: [PATCH 7/8] even more --- gateway-api/src/lib.rs | 4 ++++ gateway-test-utils/configs/config.test.toml | 4 +--- gateway/examples/config.toml | 4 +--- installinator-api/src/lib.rs | 14 ++++---------- nexus/tests/config.test.toml | 4 ++-- smf/mgs-sim/config.toml | 4 +--- smf/mgs/config.toml | 4 +--- wicketd-api/src/lib.rs | 5 +++++ wicketd/src/lib.rs | 5 +---- 9 files changed, 20 insertions(+), 28 deletions(-) diff --git a/gateway-api/src/lib.rs b/gateway-api/src/lib.rs index 30f262ec45..b4c710355e 100644 --- a/gateway-api/src/lib.rs +++ b/gateway-api/src/lib.rs @@ -29,6 +29,9 @@ use schemars::JsonSchema; use serde::Deserialize; use uuid::Uuid; +/// The host phase 2 recovery image is currently (Dec 2024) ~130 MiB. +const HOST_PHASE2_MAX_BYTES: usize = 512 * 1024 * 1024; + #[dropshot::api_description] pub trait GatewayApi { type Context; @@ -434,6 +437,7 @@ pub trait GatewayApi { #[endpoint { method = POST, path = "/recovery/host-phase2", + request_body_max_bytes = HOST_PHASE2_MAX_BYTES, }] async fn recovery_host_phase2_upload( rqctx: RequestContext, diff --git a/gateway-test-utils/configs/config.test.toml b/gateway-test-utils/configs/config.test.toml index 85c166fc6f..1e8f06e915 100644 --- a/gateway-test-utils/configs/config.test.toml +++ b/gateway-test-utils/configs/config.test.toml @@ -9,9 +9,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] -# We want to allow uploads of host phase 2 recovery images, which may be -# measured in the (small) hundreds of MiB. Set this to 512 MiB. -default_request_body_max_bytes = 536870912 +default_request_body_max_bytes = 1048576 [switch] # For tests, bind to port 0 (i.e., OS chooses an open port) instead of MGS's diff --git a/gateway/examples/config.toml b/gateway/examples/config.toml index 89c8a5fa53..cc0223dc47 100644 --- a/gateway/examples/config.toml +++ b/gateway/examples/config.toml @@ -9,9 +9,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] -# We want to allow uploads of host phase 2 recovery images, which may be -# measured in the (small) hundreds of MiB. Set this to 1 GiB for testing. -default_request_body_max_bytes = 1_073_741_824 +default_request_body_max_bytes = 1048576 [switch] # Which interface is connected to our local sidecar SP (i.e., the SP that acts diff --git a/installinator-api/src/lib.rs b/installinator-api/src/lib.rs index 1b1c24c972..63efa615a7 100644 --- a/installinator-api/src/lib.rs +++ b/installinator-api/src/lib.rs @@ -21,6 +21,8 @@ use schemars::JsonSchema; use serde::Deserialize; use uuid::Uuid; +const PROGRESS_REPORT_MAX_BYTES: usize = 4 * 1024 * 1024; + #[derive(Debug, Deserialize, JsonSchema)] pub struct ReportQuery { /// A unique identifier for the update. @@ -50,6 +52,7 @@ pub trait InstallinatorApi { #[endpoint { method = POST, path = "/report-progress/{update_id}", + request_body_max_bytes = PROGRESS_REPORT_MAX_BYTES, }] async fn report_progress( rqctx: RequestContext, @@ -120,16 +123,7 @@ impl EventReportStatus { pub fn default_config(bind_address: std::net::SocketAddr) -> ConfigDropshot { ConfigDropshot { bind_address, - // Even though the installinator sets an upper bound on the number of - // items in a progress report, they can get pretty large if they - // haven't gone through for a bit. Ensure that hitting the max request - // size won't cause a failure by setting a generous upper bound for the - // request size. - // - // TODO: replace with an endpoint-specific option once - // https://github.com/oxidecomputer/dropshot/pull/618 lands and is - // available in omicron. - default_request_body_max_bytes: 4 * 1024 * 1024, + default_request_body_max_bytes: 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], } diff --git a/nexus/tests/config.test.toml b/nexus/tests/config.test.toml index 2b3cd92740..3194e18802 100644 --- a/nexus/tests/config.test.toml +++ b/nexus/tests/config.test.toml @@ -50,11 +50,11 @@ external_dns_servers = ["1.1.1.1", "9.9.9.9"] # available port) because the test suite will be running many servers # concurrently. bind_address = "127.0.0.1:0" -default_request_body_max_bytes = 8388608 +default_request_body_max_bytes = 1048576 [deployment.dropshot_internal] bind_address = "127.0.0.1:0" -default_request_body_max_bytes = 8388608 +default_request_body_max_bytes = 1048576 # # NOTE: for the test suite, the internal DNS address will be replaced with one diff --git a/smf/mgs-sim/config.toml b/smf/mgs-sim/config.toml index 41d0d7c1f5..b23614f662 100644 --- a/smf/mgs-sim/config.toml +++ b/smf/mgs-sim/config.toml @@ -9,9 +9,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] -# We want to allow uploads of host phase 2 recovery images, which may be -# measured in the (small) hundreds of MiB. Set this to 512 MiB. -default_request_body_max_bytes = 536870912 +default_request_body_max_bytes = 1048576 [switch] # Which interface is connected to our local sidecar SP (i.e., the SP that acts diff --git a/smf/mgs/config.toml b/smf/mgs/config.toml index ff19074c94..6b10a046cc 100644 --- a/smf/mgs/config.toml +++ b/smf/mgs/config.toml @@ -9,9 +9,7 @@ host_phase2_recovery_image_cache_max_images = 1 [dropshot] -# We want to allow uploads of host phase 2 recovery images, which may be -# measured in the (small) hundreds of MiB. Set this to 512 MiB. -default_request_body_max_bytes = 536870912 +default_request_body_max_bytes = 1048576 [switch] # Which interface is connected to our local sidecar SP (i.e., the SP that acts diff --git a/wicketd-api/src/lib.rs b/wicketd-api/src/lib.rs index c4c170481b..47533b892d 100644 --- a/wicketd-api/src/lib.rs +++ b/wicketd-api/src/lib.rs @@ -39,6 +39,10 @@ use wicket_common::rack_update::ClearUpdateStateResponse; use wicket_common::rack_update::StartUpdateOptions; use wicket_common::update_events::EventReport; +/// Full release repositories are currently (Dec 2024) 1.8 GiB and are likely to +/// continue growing. +const PUT_REPOSITORY_MAX_BYTES: usize = 4 * 1024 * 1024 * 1024; + #[dropshot::api_description] pub trait WicketdApi { type Context; @@ -203,6 +207,7 @@ pub trait WicketdApi { #[endpoint { method = PUT, path = "/repository", + request_body_max_bytes = PUT_REPOSITORY_MAX_BYTES, }] async fn put_repository( rqctx: RequestContext, diff --git a/wicketd/src/lib.rs b/wicketd/src/lib.rs index 66db255f1f..1fbf278ead 100644 --- a/wicketd/src/lib.rs +++ b/wicketd/src/lib.rs @@ -130,10 +130,7 @@ impl Server { let dropshot_config = ConfigDropshot { bind_address: SocketAddr::V6(args.address), - // The maximum request size is set to 4 GB -- artifacts can be large - // and there's currently no way to set a larger request size for - // some endpoints. - default_request_body_max_bytes: 4 << 30, + default_request_body_max_bytes: 8 * 1024 * 1024, default_handler_task_mode: HandlerTaskMode::Detached, log_headers: vec![], }; From fb10fadb3bf4cd5b63ffdcd9ba500ffe6b6e3fc6 Mon Sep 17 00:00:00 2001 From: iliana etaoin Date: Tue, 17 Dec 2024 07:17:50 +0000 Subject: [PATCH 8/8] fix mupdate --- gateway-api/src/lib.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gateway-api/src/lib.rs b/gateway-api/src/lib.rs index b4c710355e..e0c9993b50 100644 --- a/gateway-api/src/lib.rs +++ b/gateway-api/src/lib.rs @@ -29,6 +29,9 @@ use schemars::JsonSchema; use serde::Deserialize; use uuid::Uuid; +/// This endpoint is used to upload SP and ROT Hubris archives as well as phase 1 host OS +/// images. The phase 1 image is 32 MiB, driven by the QSPI flash on hardware. +const SP_COMPONENT_UPDATE_MAX_BYTES: usize = 64 * 1024 * 1024; /// The host phase 2 recovery image is currently (Dec 2024) ~130 MiB. const HOST_PHASE2_MAX_BYTES: usize = 512 * 1024 * 1024; @@ -233,6 +236,7 @@ pub trait GatewayApi { #[endpoint { method = POST, path = "/sp/{type}/{slot}/component/{component}/update", + request_body_max_bytes = SP_COMPONENT_UPDATE_MAX_BYTES, }] async fn sp_component_update( rqctx: RequestContext,