Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,20 @@ sled-update-install-dataset serial0 --to-target-release
# Set one of sled 0's zone's image sources to a specific artifact, and
# also set MGS and host phase 2 updates on the sled. Both should be
# reset as part of this process.
#
# Note that this isn't quite a typical blueprint, since it'll have
# some image sources set to Artifact and others to InstallDataset.
# (Typically, all zones on a sled are one or the other.) We consider that
# to be okay for this test: we want to ensure that any zones with Artifact
# image sources are converted over to InstallDataset.
blueprint-edit latest set-zone-image 0c71b3b2-6ceb-4e8f-b020-b08675e83038 artifact 1.2.3 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
blueprint-edit latest set-sp-update serial0 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 1.1.0 sp 1.0.0 1.0.1
blueprint-edit latest set-host-phase2 serial0 A artifact 1.0.0 3a9607047b03ccaab6d222249d890e93ca51b94ad631c7ca38be74cba60802ff
blueprint-edit latest set-host-phase2 serial0 B artifact 1.0.0 044d45ad681b44e89c10e056cabdedf19fd8b1e54bc95e6622bcdd23f16bc8f2

# Apply the blueprint edits to sled 0.
sled-set serial0 omicron-config latest

# Simulate a mupdate on sled 0 by setting the mupdate override field to a
# new UUID (generated using uuidgen).
sled-set serial0 mupdate-override 6123eac1-ec5b-42ba-b73f-9845105a9971
Expand Down Expand Up @@ -81,6 +90,10 @@ sled-set serial0 mupdate-override unset
sled-set serial0 inventory-visible
sled-set serial0 omicron-config latest

# Apply this config (which sets remove_mupdate_override to 203fa72c)
# on sled 2.
sled-set serial2 omicron-config latest

# But simulate a second mupdate on sled 2. This should invalidate the existing
# mupdate override on sled 2 and cause another target release minimum
# generation bump.
Expand All @@ -93,12 +106,21 @@ inventory-generate
blueprint-plan latest latest

# Diff the blueprints. This diff should show:
# * on sled 0:
# * the "remove mupdate override" line going away
# * no-op image source switches from install dataset to artifact
# * on sled 1, no changes
# * on sled 2, a _change_ in the will-remove-mupdate-override field
# * another bump to the target release minimum generation, this time to 4.
#
# * for sled 0:
# * "+ will remove mupdate override"
# * for zone 0c71b3b2-6ceb-4e8f-b020-b08675e83038, a change from artifact to install-dataset
# * measurements changed from unknown to install dataset
# * host phase 2 contents reset to current contents
# * the pending MGS update cleared
# * for sled 1 (which has the mupdate override error): the planner cannot
# record the override id, but it still clears the pending MGS update and
# resets host phase 2 contents to current contents
# * for sled 2:
# * "+ will remove mupdate override"
# * measurements changed from unknown to install dataset
# * the target release's minimum generation bumped from 1 to 3
# (the 3 is because generation 2 is repo-1.0.0.zip)
blueprint-diff latest

# Clear the mupdate override on sled 2, signifying that the config has been
Expand Down Expand Up @@ -206,6 +228,11 @@ blueprint-diff latest
# With the option disabled (the current state), the planner will
# not proceed with adding new zones. But with the option enabled,
# new zones will be added.

# Apply the blueprint edits to sled 0. This also lets the planner see
# that the internal_dns zone is expunged, setting up a replacement
# internal_dns zone.
sled-set serial0 omicron-config latest
sled-set serial0 mupdate-override c8fba912-63ae-473a-9115-0495d10fb3bc
sled-add c3bc4c6d-fdde-4fc4-8493-89d2a1e5ee6b
inventory-generate
Expand All @@ -218,12 +245,18 @@ blueprint-diff latest
# This *will* generate the datasets and internal NTP zone on the new sled.
set planner-config --add-zones-with-mupdate-override true
blueprint-plan latest latest
# TODO: This blippy run produces two FATAL notes due to
# https://github.com/oxidecomputer/omicron/issues/10420.
blueprint-blippy latest
blueprint-diff latest

# Set the target release minimum generation to a large value -- we're going to
# test that the planner bails if it attempts a rollback of the target release
# minimum generation.
blueprint-edit latest set-target-release-min-gen 1000

# Apply this config to sled 1 before the new MUPdate below.
sled-set serial1 omicron-config latest
sled-set serial1 mupdate-override cc724abe-80c1-47e6-9771-19e6540531a9
inventory-generate
blueprint-plan latest latest
Loading
Loading