Skip to content

Commit

Permalink
sled agent: pick up Propolis migration status changes
Browse files Browse the repository at this point in the history
Pick up a Propolis commit containing propolis#661. This changes Propolis's
migration monitoring API to report migrations in and migrations out as
independent objects.

Rework the sled agent logic that processes incoming Propolis notifications to
consume this information. The new logic is not all that much different from the
old, except that the consequences of observing a mismatched migration ID are
slightly less ambiguous now: in the old code, this was interpreted as "well,
maybe there's a new migration that Propolis hasn't found out about yet"; in the
new code, this is more clearly an unexpected condition, albeit one sled agent
handles in the same way as before (by punting and updating the relevant VMM
state while leaving the instance state alone).

Tests: cargo test in omicron-nexus and omicron-sled-agent.
  • Loading branch information
gjcolombo committed Mar 13, 2024
1 parent 4f101be commit a14026d
Show file tree
Hide file tree
Showing 6 changed files with 257 additions and 167 deletions.
10 changes: 5 additions & 5 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -333,9 +333,9 @@ prettyplease = { version = "0.2.16", features = ["verbatim"] }
proc-macro2 = "1.0"
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
progenitor-client = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
bhyve_api = { git = "https://github.com/oxidecomputer/propolis", rev = "a9fdbc464db4cbd4ac0f43ffa0d045b4b02e0c1c" }
propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "a9fdbc464db4cbd4ac0f43ffa0d045b4b02e0c1c" }
propolis-mock-server = { git = "https://github.com/oxidecomputer/propolis", rev = "a9fdbc464db4cbd4ac0f43ffa0d045b4b02e0c1c" }
bhyve_api = { git = "https://github.com/oxidecomputer/propolis", rev = "c1ad0612824476a58096430bfe960623c544fe7f" }
propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "c1ad0612824476a58096430bfe960623c544fe7f" }
propolis-mock-server = { git = "https://github.com/oxidecomputer/propolis", rev = "c1ad0612824476a58096430bfe960623c544fe7f" }
proptest = "1.4.0"
quote = "1.0"
rand = "0.8.5"
Expand Down
5 changes: 3 additions & 2 deletions package-manifest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -499,10 +499,11 @@ service_name = "propolis-server"
only_for_targets.image = "standard"
source.type = "prebuilt"
source.repo = "propolis"
source.commit = "a9fdbc464db4cbd4ac0f43ffa0d045b4b02e0c1c"
# TODO(gjc): update to mainline Propolis commit once propolis#661 merges
source.commit = "c1ad0612824476a58096430bfe960623c544fe7f"
# The SHA256 digest is automatically posted to:
# https://buildomat.eng.oxide.computer/public/file/oxidecomputer/propolis/image/<commit>/propolis-server.sha256.txt
source.sha256 = "7998a71c4e905a4bf9ef2d2863b7695d0bb4d1b34322aa3ce20d173d4a7ee77a"
source.sha256 = "d02072a0fe00c3294ac9b958a341394c7117502b30b81b01b6d7810d2f7366eb"
output.type = "zone"

[package.mg-ddm-gz]
Expand Down
Loading

0 comments on commit a14026d

Please sign in to comment.