From Fedora Project Wiki

Revision as of 13:14, 11 November 2014 by Kparal (talk | contribs) (link to Testcase_Anaconda_updates.img_via_URL for a prepared updates.img)

Associated release criterion
This test case is associated with the Fedora_42_Final_Release_Criteria#update-image release criterion. If you are doing release validation testing, a failure of this test case may be a breach of that release criterion. If so, please file a bug and nominate it as blocking the appropriate milestone, using the blocker bug nomination page.


Description

This test will verify that anaconda can download and apply a updates.img that is inside the remote installation source without extra input from the user.

Setup

  1. Prepare a local installation source by mirroring an existing online source. You can either mirror a whole repository for Fedora Branched, or you can mirror just a single test compose.
    • When mirroring the whole Fedora Branched repository, mirror /pub/fedora/linux/development/42/<arch>/os/ directory from one of the official mirrors. This amounts to dozens of GBs of space, but you will be able to use a standard netinst.iso/DVD.iso/Live.iso with it.
    • When mirroring a single test compose, mirror /Fedora/<arch>/os/ directory from the compose, but exclude repodata/ and Packages/ subdirectories. This is just hundreds of MBs, but you will need to use direct kernel boot (PXE or a kernel boot in a virtual machine) to test it.
  2. Make the installation source accessible over one of the supported network protocols (HTTP, FTP, NFS).
  3. Prepare a valid updates.img file. There is an updates.img prepared for you in this test case. You can use it and follow the same steps to verify that it is applied. If it doesn't work or you want to use a different one, see this page for image creation instructions, and prepare your own file. A good thing to change in the image is the What language would you like to use during the installation process? text in pyanaconda/ui/gui/spokes/welcome.glade, as this text is displayed on one of the first screens.
  4. Copy the updates.img into the images/ directory of your local installation source

How to test

  1. Boot the installer using the inst.stage2= option at boot directing to the modified installation source where the updates.img was published. See Anaconda/Options for information on supported boot options.
    • If you have a full repository mirrored, you can use any boot medium.
    • If you have just a test compose files mirrored, you need to use direct kernel boot (PXE or a kernel boot in a virtual machine). It will use the provided inst.repo as a source of Anaconda's stage2 image and it should also apply updates.img, if available. The online repositories will then be used as the package source.
  2. If it's possible, visually identify that the update was applied. If you have used the prepared updates.img from this test case, follow its relevant steps to verify it applied correctly.
  3. If it's not visually possible to confirm the update was applied (there were just code changes), verify the existence of /tmp/updates directory, which should contain all updated source code files.
  4. Proceed with installation

Expected Results

  1. Anaconda downloads the updates.img and copies its content to /tmp/updates/. Any changes you included in the updates.img file are applied (image changes, text adjustments, source code changes, etc).
  2. Anaconda proceeds without related errors