From Fedora Project Wiki

(criterion moved to Final)
(use rpmdeplint instead of repoclosure (yum based, can't handle rich deps))
Line 4: Line 4:
|description=This is to verify that there are no broken dependencies between packages located on an offline install-type image (e.g. the {{filename|Server-DVD.iso}} image).
|description=This is to verify that there are no broken dependencies between packages located on an offline install-type image (e.g. the {{filename|Server-DVD.iso}} image).
|actions=
|actions=
# Mount the image using a loopback to a directory, for example: {{#tag:pre|# mount -o loop Fedora-Server-DVD-x86_64-{{FedoraVersionNumber|next}}.iso /media/}}
# Mount the image using a loopback to a directory, for example: {{#tag:pre|# mount -o loop Fedora-Server-DVD-x86_64-{{FedoraVersionNumber|next}}.iso /media}}
#* Alternatively, if you have a physical media, insert it into the computer and make sure it is mounted.
# Check the dependencies of all packages using a <code>rpmdeplint</code> command (available in the {{pkg|rpmdeplint}} package): <pre>$ rpmdeplint check-repoclosure --repo testdeps,/media /media/Packages/s/systemd* </pre> The last command argument is fake, it needs to point to some package from the set because of limitations of rpmdeplint command (systemd is a good choice, it's always present)
# Check the dependencies of all packages using a <code>repoclosure</code> command (Architecture needs to be specified: <code>-a x86_64</code> or <code>-a i686</code>): <pre>$ repoclosure -a x86_64 --repofrompath myrepo,/media/ --newest -t -r myrepo </pre>
|results=
|results=
<ol>
# <code>rpmdeplint</code> command hasn't reported any error (checking just the exit code is not sufficient, you need to read the stderr output)
<li><code>repoclosure</code> command finished successfully.</li>
<li>There are no packages with unresolved dependencies. Example:
<pre>
Added myrepo repo from /media
Reading in repository metadata - please wait....
Checking Dependencies
Repos looked at: 1
    myrepo
Num Packages in Repos: 2766</pre></li>
</ol>
}}
}}


[[Category:Installer_Image_Sanity_Test_Cases]]
[[Category:Installer_Image_Sanity_Test_Cases]]

Revision as of 11:17, 29 March 2018

Note.png
Associated release criterion
This test case is associated with the Fedora_40_Final_Release_Criteria#no-broken-packages 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 there are no broken dependencies between packages located on an offline install-type image (e.g. the Server-DVD.iso image).


How to test

  1. Mount the image using a loopback to a directory, for example:
    # mount -o loop Fedora-Server-DVD-x86_64-40.iso /media
  2. Check the dependencies of all packages using a rpmdeplint command (available in the rpmdeplint package):
    $ rpmdeplint check-repoclosure --repo testdeps,/media /media/Packages/s/systemd* 
    The last command argument is fake, it needs to point to some package from the set because of limitations of rpmdeplint command (systemd is a good choice, it's always present)

Expected Results

  1. rpmdeplint command hasn't reported any error (checking just the exit code is not sufficient, you need to read the stderr output)