Skip to content

Conversation

@jgallagher
Copy link
Contributor

HostPhase2DesiredContents is analogous to OmicronZoneImageSource, but for OS images: either keep the current contents of the boot disk or set it to a specific artifact from the TUF repo depot. "Keep the current contents" should show up in three cases, just like OmicronZoneImageSource::InstallDataset:

  1. It's the default value for deserializing, so we can load old configs that didn't have this value
  2. RSS uses it (no TUF repo depot involved at this point)
  3. The planner will use this variant as a part of removing a mupdate override (this work is still in PR itself: [40/n] blueprint planner logic + sled agent code to honor mupdate overrides #8456 (comment))

host_phase_2: HostPhase2DesiredSlots::current_contents(),
};

// TODO-john also test host phase 2 artifacts!
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This and its friend below are both addressed in #8539

pub generation: Generation,
pub remove_mupdate_override: Option<DbTypedUuid<MupdateOverrideKind>>,

#[diesel(embed)]
Copy link
Contributor

Choose a reason for hiding this comment

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

TIL

Copy link
Contributor

@sunshowers sunshowers left a comment

Choose a reason for hiding this comment

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

thanks!

@jgallagher jgallagher merged commit 77d097a into main Jul 9, 2025
18 checks passed
@jgallagher jgallagher deleted the john/sled-config-phase2 branch July 9, 2025 16:14
jgallagher added a commit that referenced this pull request Jul 15, 2025
This is a followup to the stack of PRs that added desired host phase 2
contents to `OmicronSledConfig` (#8538 and its followups). We now have a
`BlueprintHostPhase2DesiredSlots` inside each `BlueprintSledConfig` that
specifies the desired contents (artifact by hash-and-version or "just
the current contents", analogous to the install dataset for zones) for
each of the two phase 2 slots.
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.

4 participants