diff --git a/Cargo.lock b/Cargo.lock index ef204a272..83d82cfdf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -826,7 +826,7 @@ checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" [[package]] name = "crucible" version = "0.0.1" -source = "git+https://github.com/oxidecomputer/crucible?rev=da3cf198a0e000bb89efc3a1c77d7ba09340a600#da3cf198a0e000bb89efc3a1c77d7ba09340a600" +source = "git+https://github.com/oxidecomputer/crucible?rev=2c8b2aeffca9ab377dacee4557c2cc994694b00d#2c8b2aeffca9ab377dacee4557c2cc994694b00d" dependencies = [ "aes-gcm-siv", "anyhow", @@ -842,6 +842,7 @@ dependencies = [ "crucible-protocol", "crucible-workspace-hack", "dropshot", + "fakedata_generator", "futures", "futures-core", "internal-dns-resolver", @@ -879,7 +880,7 @@ dependencies = [ [[package]] name = "crucible-client-types" version = "0.1.0" -source = "git+https://github.com/oxidecomputer/crucible?rev=da3cf198a0e000bb89efc3a1c77d7ba09340a600#da3cf198a0e000bb89efc3a1c77d7ba09340a600" +source = "git+https://github.com/oxidecomputer/crucible?rev=2c8b2aeffca9ab377dacee4557c2cc994694b00d#2c8b2aeffca9ab377dacee4557c2cc994694b00d" dependencies = [ "base64 0.22.1", "crucible-workspace-hack", @@ -892,7 +893,7 @@ dependencies = [ [[package]] name = "crucible-common" version = "0.0.1" -source = "git+https://github.com/oxidecomputer/crucible?rev=da3cf198a0e000bb89efc3a1c77d7ba09340a600#da3cf198a0e000bb89efc3a1c77d7ba09340a600" +source = "git+https://github.com/oxidecomputer/crucible?rev=2c8b2aeffca9ab377dacee4557c2cc994694b00d#2c8b2aeffca9ab377dacee4557c2cc994694b00d" dependencies = [ "anyhow", "atty", @@ -921,7 +922,7 @@ dependencies = [ [[package]] name = "crucible-protocol" version = "0.0.0" -source = "git+https://github.com/oxidecomputer/crucible?rev=da3cf198a0e000bb89efc3a1c77d7ba09340a600#da3cf198a0e000bb89efc3a1c77d7ba09340a600" +source = "git+https://github.com/oxidecomputer/crucible?rev=2c8b2aeffca9ab377dacee4557c2cc994694b00d#2c8b2aeffca9ab377dacee4557c2cc994694b00d" dependencies = [ "anyhow", "bincode", @@ -1494,6 +1495,18 @@ dependencies = [ "similar", ] +[[package]] +name = "fakedata_generator" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57b82fba4b485b819fde74012109688a9d2bd4ce7b22583ac12c9fa239f74a02" +dependencies = [ + "passt", + "rand 0.8.5", + "serde", + "serde_json", +] + [[package]] name = "fastrand" version = "2.1.0" @@ -3969,6 +3982,12 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "passt" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13242a5ce97f39a8095d03c8b273e91d09f2690c0b7d69a2af844941115bab24" + [[package]] name = "password-hash" version = "0.5.0" diff --git a/Cargo.toml b/Cargo.toml index df7cccd2a..9cf35e528 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -86,8 +86,8 @@ oximeter = { git = "https://github.com/oxidecomputer/omicron", branch = "main" } sled-agent-client = { git = "https://github.com/oxidecomputer/omicron", branch = "main" } # Crucible -crucible = { git = "https://github.com/oxidecomputer/crucible", rev = "da3cf198a0e000bb89efc3a1c77d7ba09340a600" } -crucible-client-types = { git = "https://github.com/oxidecomputer/crucible", rev = "da3cf198a0e000bb89efc3a1c77d7ba09340a600" } +crucible = { git = "https://github.com/oxidecomputer/crucible", rev = "2c8b2aeffca9ab377dacee4557c2cc994694b00d" } +crucible-client-types = { git = "https://github.com/oxidecomputer/crucible", rev = "2c8b2aeffca9ab377dacee4557c2cc994694b00d" } # External dependencies anyhow = "1.0" @@ -107,7 +107,7 @@ cargo_metadata = "0.18.1" cc = "1.0.73" cfg-if = "1.0.0" chrono = "0.4.19" -clap = "4.2" +clap = "4.5" const_format = "0.2" crossbeam-channel = "0.5" ctrlc = "3.2" diff --git a/bin/propolis-server/src/lib/vm/state_driver.rs b/bin/propolis-server/src/lib/vm/state_driver.rs index 22354578f..f12faa1e3 100644 --- a/bin/propolis-server/src/lib/vm/state_driver.rs +++ b/bin/propolis-server/src/lib/vm/state_driver.rs @@ -1014,7 +1014,7 @@ impl StateDriver { backend_id: &SpecKey, new_vcr_json: String, ) -> super::CrucibleReplaceResult { - info!(self.log, "request to replace Crucible VCR"; + info!(self.log, "request to replace Crucible VCR {:?}", new_vcr_json; "backend_id" => %backend_id); let mut objects = self.objects.lock_exclusive().await;