diff --git a/Cargo.lock b/Cargo.lock index ae4810e5..6a4dc1e9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3011,7 +3011,7 @@ dependencies = [ [[package]] name = "progenitor" version = "0.14.0" -source = "git+https://github.com/oxidecomputer/progenitor#1b6e28b7cde1c4db7b422fc9cc533621fd8bb7c9" +source = "git+https://github.com/oxidecomputer/progenitor#100c8d3dae47b0750cfe47db03d96a7960066b93" dependencies = [ "progenitor-impl", ] @@ -3034,7 +3034,7 @@ dependencies = [ [[package]] name = "progenitor-impl" version = "0.14.0" -source = "git+https://github.com/oxidecomputer/progenitor#1b6e28b7cde1c4db7b422fc9cc533621fd8bb7c9" +source = "git+https://github.com/oxidecomputer/progenitor#100c8d3dae47b0750cfe47db03d96a7960066b93" dependencies = [ "heck", "http", diff --git a/cli/docs/cli.json b/cli/docs/cli.json index 7455df0d..46712553 100644 --- a/cli/docs/cli.json +++ b/cli/docs/cli.json @@ -9173,7 +9173,7 @@ "subcommands": [ { "name": "recovery-finish", - "about": "Clear system recovery status\n\nInstructs the system that a system recovery operation (\"mupdate\") was completed using the software in the specified release.\n\nThe system recovery operation is used to bypass the control plane to deploy known-working software when the control plane itself is not functioning or otherwise unable to update itself. When the control plane detects this, it stops making any changes to deployed software to avoid reverting the recovery itself. This operation puts the control plane back in charge of determining what software should be deployed, instructing it that the specified software (which is also what's currently running) is what's supposed to be deployed.\n\nIf the provided version does not match what's currently running, the control plane will continue to avoid changing deployed software until this operation is invoked with the correct version.\n\nThis endpoint should only be called at the direction of Oxide support.", + "about": "Clear system recovery status\n\nInstructs the system that a system recovery operation (\"mupdate\") was completed using the software in the specified release.\n\nThe system recovery operation is used to bypass the control plane to deploy known-working software when the control plane itself is not functioning or otherwise unable to update itself. When the control plane detects this, it stops making any changes to deployed software to avoid reverting the recovery itself. This operation puts the control plane back in charge of determining what software should be deployed, instructing it that the specified software (which is also what's currently running) is what's supposed to be deployed.\n\nIf the control plane knows the version of all running software (e.g., a single sled was recovered to the same version as the rest of the rack), requests where the provided version does not match what's currently running will fail. If the control plane does not know the version of all running software (e.g., the entire rack was mupdated to a new release), requests with an incorrect provided version will succeed, but the control plane will continue to avoid changing deployed software until this operation is invoked with the correct version.\n\nThis endpoint should only be called at the direction of Oxide support.", "operation_id": "system_update_recovery_finish", "args": [ { diff --git a/cli/src/generated_cli.rs b/cli/src/generated_cli.rs index 549e5d59..8c974c6e 100644 --- a/cli/src/generated_cli.rs +++ b/cli/src/generated_cli.rs @@ -8361,10 +8361,15 @@ impl Cli { itself. This operation puts the control plane back in charge of determining \ what software should be deployed, instructing it that the specified software \ (which is also what's currently running) is what's supposed to be \ - deployed.\n\nIf the provided version does not match what's currently running, \ - the control plane will continue to avoid changing deployed software until this \ - operation is invoked with the correct version.\n\nThis endpoint should only be \ - called at the direction of Oxide support.", + deployed.\n\nIf the control plane knows the version of all running software \ + (e.g., a single sled was recovered to the same version as the rest of the rack), \ + requests where the provided version does not match what's currently running will \ + fail. If the control plane does not know the version of all running software \ + (e.g., the entire rack was mupdated to a new release), requests with an \ + incorrect provided version will succeed, but the control plane will continue to \ + avoid changing deployed software until this operation is invoked with the \ + correct version.\n\nThis endpoint should only be called at the direction of \ + Oxide support.", ) } diff --git a/cli/tests/data/docs-text.txt b/cli/tests/data/docs-text.txt index 15915950..9ce7c97a 100644 --- a/cli/tests/data/docs-text.txt +++ b/cli/tests/data/docs-text.txt @@ -415,7 +415,7 @@ Instructs the system that a system recovery operation ("mupdate") was completed The system recovery operation is used to bypass the control plane to deploy known-working software when the control plane itself is not functioning or otherwise unable to update itself. When the control plane detects this, it stops making any changes to deployed software to avoid reverting the recovery itself. This operation puts the control plane back in charge of determining what software should be deployed, instructing it that the specified software (which is also what's currently running) is what's supposed to be deployed. -If the provided version does not match what's currently running, the control plane will continue to avoid changing deployed software until this operation is invoked with the correct version. +If the control plane knows the version of all running software (e.g., a single sled was recovered to the same version as the rest of the rack), requests where the provided version does not match what's currently running will fail. If the control plane does not know the version of all running software (e.g., the entire rack was mupdated to a new release), requests with an incorrect provided version will succeed, but the control plane will continue to avoid changing deployed software until this operation is invoked with the correct version. This endpoint should only be called at the direction of Oxide support. oxide system update repo list — List all TUF repositories diff --git a/oxide.json b/oxide.json index f7767ba8..f4783944 100644 --- a/oxide.json +++ b/oxide.json @@ -7,7 +7,7 @@ "url": "https://oxide.computer", "email": "api@oxide.computer" }, - "version": "2026072800.0.0" + "version": "2026073100.0.0" }, "paths": { "/device/auth": { @@ -12939,7 +12939,7 @@ "system/update" ], "summary": "Clear system recovery status", - "description": "Instructs the system that a system recovery operation (\"mupdate\") was completed using the software in the specified release.\n\nThe system recovery operation is used to bypass the control plane to deploy known-working software when the control plane itself is not functioning or otherwise unable to update itself. When the control plane detects this, it stops making any changes to deployed software to avoid reverting the recovery itself. This operation puts the control plane back in charge of determining what software should be deployed, instructing it that the specified software (which is also what's currently running) is what's supposed to be deployed.\n\nIf the provided version does not match what's currently running, the control plane will continue to avoid changing deployed software until this operation is invoked with the correct version.\n\nThis endpoint should only be called at the direction of Oxide support.", + "description": "Instructs the system that a system recovery operation (\"mupdate\") was completed using the software in the specified release.\n\nThe system recovery operation is used to bypass the control plane to deploy known-working software when the control plane itself is not functioning or otherwise unable to update itself. When the control plane detects this, it stops making any changes to deployed software to avoid reverting the recovery itself. This operation puts the control plane back in charge of determining what software should be deployed, instructing it that the specified software (which is also what's currently running) is what's supposed to be deployed.\n\nIf the control plane knows the version of all running software (e.g., a single sled was recovered to the same version as the rest of the rack), requests where the provided version does not match what's currently running will fail. If the control plane does not know the version of all running software (e.g., the entire rack was mupdated to a new release), requests with an incorrect provided version will succeed, but the control plane will continue to avoid changing deployed software until this operation is invoked with the correct version.\n\nThis endpoint should only be called at the direction of Oxide support.", "operationId": "system_update_recovery_finish", "requestBody": { "content": { diff --git a/sdk/src/generated_sdk.rs b/sdk/src/generated_sdk.rs index 79c422c6..fc6512ac 100644 --- a/sdk/src/generated_sdk.rs +++ b/sdk/src/generated_sdk.rs @@ -66783,7 +66783,7 @@ pub mod types { /// /// API for interacting with the Oxide control plane /// -/// Version: 2026072800.0.0 +/// Version: 2026073100.0.0 pub struct Client { pub(crate) baseurl: String, pub(crate) client: reqwest::Client, @@ -66824,7 +66824,7 @@ impl Client { impl ClientInfo<()> for Client { fn api_version() -> &'static str { - "2026072800.0.0" + "2026073100.0.0" } fn baseurl(&self) -> &str { @@ -72696,7 +72696,12 @@ pub trait ClientSystemUpdateExt { /// instructing it that the specified software (which is also what's /// currently running) is what's supposed to be deployed. /// - /// If the provided version does not match what's currently running, the + /// If the control plane knows the version of all running software (e.g., a + /// single sled was recovered to the same version as the rest of the rack), + /// requests where the provided version does not match what's currently + /// running will fail. If the control plane does not know the version of all + /// running software (e.g., the entire rack was mupdated to a new release), + /// requests with an incorrect provided version will succeed, but the /// control plane will continue to avoid changing deployed software until /// this operation is invoked with the correct version. ///