From Fedora Project Wiki

(some rewording to change this repo test to install repo test and separate nfsiso to another test)
(update log output)
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Template:Associated_release_criterion|Beta|remote-package-sources}}
{{QA/Test_Case
{{QA/Test_Case
|description=A complete installation using the package repository over NFS. See <code>'''repo='''</code> in [[Anaconda/Options]] for information on supported boot options.
|description=This is to verify that [[Anaconda]]'s <code>inst.repo</code> [[Anaconda Boot Options|boot option]] works together with an NFS repository.
|setup=
# 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 {{filename|DVD.iso}} image and export it over NFS this way:
#* Mount the image over loopback: {{command|# mount -o loop Fedora-{{FedoraVersionNumber|next}}-x86_64-DVD.iso /mnt/repo}}
#* Install {{package|nfs-utils}}.
#* Let's say your (virtual) test machine is in the <code>192.168.1.0/24</code> subnet. Put the following line into {{filename|/etc/exports}}: <pre>/mnt/repo    192.168.1.0/24(ro)</pre>
#* Restart NFS service: {{command|# systemctl restart nfs-server.service}}
#* The repository is now accessible over NFS via <code>&lt;your_IP&gt;:/mnt/repo</code>
# Prepare any non-live media for booting the installer (anything except {{filename|Live.iso}}).
|actions=
|actions=
# Boot the installer using any available means
# Before booting the installer, specify a target NFS repository by adding a following boot option: <pre>inst.repo=nfs[:options]:<server>:/<path></pre> Example: <pre>inst.repo=nfs:your_IP:/mnt/repo</pre> Make sure the repository architecture matches the architecture of your installer media.
# Direct anaconda to use the package repo from a NFS server by adding <code>repo=</code> boot command. For example:<pre>repo=nfs[:options]:<server>:/<path></pre>
# Proceed with installation
# Proceed with installation
|results=
|results=
# Anaconda uses the package repository from the NFS server provided.  
<ol>
# Install completes successfully
<li>The installer auto-selects requested NFS repository as the installation source in its GUI</li>
# Package errors (install.log) should not occur
<li>The requested repository is used to download and install required packages. This can be checked by inspecting {{filename|/tmp/storage.log}}, example output:
# System boots successfully
<pre>13:03:57,859 DEBUG blivet: 192.168.1.1:/mnt/repo is mounted on /run/install/repo</pre>
and {{filename|/tmp/packaging.log}}, example output:
<pre>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</pre></li>
<li>The installation completes and the new system initiates boot properly</li>
</ol>
}}
}}



Latest revision as of 13:15, 24 October 2014

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