From Fedora Project Wiki

(Redirected from QA:Testcase Nfs Repository)

Associated release criterion
This test case is associated with the Fedora_42_Beta_Release_Criteria#remote-package-sources 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 is to verify that Anaconda's inst.repo boot option works together with an NFS repository.

Setup

  1. You need to have a Fedora repository accessible over an NFS protocol. If you do have it, no further setup is needed. If you don't, you can mount a DVD.iso image and export it over NFS this way:
    • Mount the image over loopback: # mount -o loop Fedora-42-x86_64-DVD.iso /mnt/repo
    • Install nfs-utils.
    • Let's say your (virtual) test machine is in the 192.168.1.0/24 subnet. Put the following line into /etc/exports:
      /mnt/repo    192.168.1.0/24(ro)
    • Restart NFS service: # systemctl restart nfs-server.service
    • The repository is now accessible over NFS via <your_IP>:/mnt/repo
  2. Prepare any non-live media for booting the installer (anything except Live.iso).

How to test

  1. Before booting the installer, specify a target NFS repository by adding a following boot option:
    inst.repo=nfs[:options]:<server>:/<path>
    Example:
    inst.repo=nfs:your_IP:/mnt/repo
    Make sure the repository architecture matches the architecture of your installer media.
  2. Proceed with installation

Expected Results

  1. The installer auto-selects requested NFS repository as the installation source in its GUI
  2. The requested repository is used to download and install required packages. This can be checked by inspecting /tmp/storage.log, example output:
    13:03:57,859 DEBUG blivet: 192.168.1.1:/mnt/repo is mounted on /run/install/repo

    and /tmp/packaging.log, example output:

    13:03:58,139 INFO packaging: adding yum repo, name: anaconda, baseurl: file:///run/install/repo, mirrorlist: None
    13:03:58,224 INFO packaging: gathering repo metadata
    13:03:58,228 INFO packaging: skipping disabled repo fedora
    13:03:58,229 INFO packaging: skipping disabled repo fedora-workstation
    13:03:58,230 INFO packaging: skipping disabled repo updates-testing
    13:03:58,231 INFO packaging: gathering repo metadata for anaconda
    13:03:58,296 INFO packaging: skipping disabled repo updates
    13:03:58,297 INFO packaging: skipping disabled repo fedora-server
    13:03:58,299 INFO packaging: skipping disabled repo fedora-cloud
  3. The installation completes and the new system initiates boot properly