Skip to content

Conversation

@sunshowers
Copy link
Contributor

@sunshowers sunshowers commented Oct 9, 2025

This is an internal API not meant to be used by callers, but we'd like to expose it within propolis-server so we can validate the initial path params stay the same.

Created using spr 1.3.6-beta.1
@sunshowers sunshowers requested review from iximeow and leftwo October 9, 2025 00:40
Created using spr 1.3.6-beta.1
Comment on lines +83 to +84
// (we do this by hand to avoid a dependency from propolis-server to
// propolis-client)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh yeah, that's a good point even if this is in the OpenAPI document now. thanks for noting it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It actually is possible for propolis-server to depend on propolis-client now because of the separation provided by the API trait. But there's a wrinkle here: if propolis-server depended on propolis-client, our tooling (cargo xtask ls-apis in Omicron) would detect that as a circular dependency and as a result would suggest freezing the entire API -- which isn't correct for just this one method that has its own protocol negotiation already built-in.

There's probably a way to work around this within the cargo xtask ls-apis method, but this is an area that generally needs to be handled with care.

@sunshowers sunshowers merged commit 0efc314 into master Oct 9, 2025
11 checks passed
@sunshowers sunshowers deleted the sunshowers/spr/expose-instance_migrate_start-in-propolis-server-openapi-document branch October 9, 2025 01:59
iximeow added a commit to oxidecomputer/omicron that referenced this pull request Oct 18, 2025
Propolis changes:

* oxidecomputer/propolis#950
* oxidecomputer/propolis#952
* oxidecomputer/propolis#951
* oxidecomputer/propolis#954
* oxidecomputer/propolis#957
* oxidecomputer/propolis#960
* oxidecomputer/propolis#961
* oxidecomputer/propolis#955

Crucible changes:

* oxidecomputer/crucible#1773
* oxidecomputer/crucible#1774
* oxidecomputer/crucible#1780
* oxidecomputer/crucible#1778

Crucible shouldn't have functional changes here, Propolis' big ones are
@sunshowers' work moving Propolis to versioned APIs, plus propolis#960
turning the crank on MAXCPU.

propolis#961 changes the initial Milan CPU profile one last time before
the release in service of propolis#959. Propolis will clear [this
bit](https://github.com/oxidecomputer/omicron/blob/d74f5e3f1ae0a378dcdb9795a0ada2426702b046/nexus/src/app/instance_platform/cpu_platform.rs#L423).
Later we want to actually set up leaf 8000_001E, so after this merges
I'll have a followup to remove that leaf from the inital Milan
definition to keep the profile constant when `propolis-server` is
smarter about the leaf.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants