Uploaded image for project: 'Machine Config Operator'
  1. Machine Config Operator
  2. MCO-1715

[Regression Test 2/5] Validate MCN condition transitions on update requiring image build when on-cluster image mode is enabled

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • None
    • 0

      During a successful node update, the MachineConfigNode (MCN) conditions (for example: UpdatePrepared & UpdateExecuted) transition through different stages (typically False —> Unknown —> True —> False). This test should ensure that the MCN conditions transition as expected on a node update requiring an image build when on cluster image mode is enabled.

      This test will be similar to the test created in MCO-1714. However, instead of applying a MachineConfig (MC) that does not require an image to be built, this test will need to trigger an update listed as one requiring an image rebuild in this PR (these updates are any changes to kernel arguments, OSImageURL, or extension bundles). This will ensure we are testing all the expected stages of the update, including the new `ImagePulledFromRegistry` condition.

      At a high-level, the sequence of this test will likely be something like:

      1. Create a custom MachineConfigPool (MCP) & add a node to it.
        • Note that creating a custom MCP and adding only one node to it will allow the end-to-end test to run in a more appropriate amount of time as it limits the scope of updating nodes to just one.
      2. Enable on cluster image mode by applying a MachineOSConfig.
      3. Trigger a node update requiring an image build, validating the condition transitions throughout.
      4. Cleanup to return cluster to pre-test state.

      Done when:

      References:

      • Docs for creating and using a custom MCP can be found here.
      • On-cluster image mode docs can be found here.

      Depends on:

      • This test will probably need to be tagged as `Disruptive` since it will result in node reboots. Thus, completing this story depends on the MCO team having a test suite where running disruptive tests is allowed (see MCO-1679MCO-1652).
      • Creating this test will be much simpler and straightforward once the framework for on-cluster image mode tests in the MCO is established (see MCO-1609).
      • These tests should contribute to the StatusReporting feature gate’s component readiness score. Therefore, this test should be created after the StatusReporting feature gate exists (see MCO-1681).
      • This test depends on on-cluster image mode tests statuses existing in the MCN API & the associated functionality being implemented in the MCO (see MCO-1675, and MCO-1713).

              rh-ee-ijanssen Isabella Janssen
              rh-ee-ijanssen Isabella Janssen
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: