wiki/QA/Testcase_Packages_No_RHSM.md
Trevor Cooper b7177ba1b1 Testing Team Additions / Modifications (#5)
* update testing team primary page
* add mkdocs-macros-plugin to support page includes
* add release_criteria page
* add collapsible admonitions
* add QA/Testcase_Template
* add testcase examples
* hide the QA directory from navigation while building content
* add support for tabbed content
* Update index.md
* Update release_criteria.md
* Update rc_content_example_only.md
* Update Testcase_Boot_Methods_Boot_Iso.md
* Update Testcase_Boot_Methods_Dvd.md
* add mkdocs-autolinks-plugin
- autogenerate relative URLs for interpage links
* rewrite Fedora example text
* add templates and QA Test Case index
* add testcase for USB media creation and testing
* add testcase for basic-graphics-mode requirement
* add testcases for no-broken-packages requirement
* add testcases for repositories must match upstream requirement
* add command samples and sample output to no broken packages testcases

Co-authored-by: Alan Marshall <alangm1001@gmail.com>
Co-authored-by: Trevor Cooper <tcooper@rockylinux.org>

Signed-off-by: Neil Hanlon <neil@resf.org>
2022-04-25 17:02:08 -04:00

2.7 KiB

title author revision_date rc
QA:Testcase Packages No RHSM Trevor Cooper 2022-04-24
prod ver level
Rocky Linux 8 Final

!!! info "Associated release criterion" This test case is associated with the Release_Criteria#repositories-must-match-upstream release criterion. If you are doing release validation testing, a failure of this test case may be a breach of that release criterion.

Description

This test will verify that packages that are availble from upstream do not have hard requirements on subscription-manager (RHSM).

Setup

  1. Obtain access to an environment with the dnf command.
  2. Download the ISO to be tested to that machine.

How to test

  1. Mount the ISO to be tested locally.
  2. Obtain a list of packages that have Requires: for subscription-manager
    • Example:
      package_list=($(dnf --refresh repoquery --repofrompath BaseOS,/media/BaseOS --repo BaseOS --repofrompath AppStream,/media/AppStream --repo AppStream --whatrequires subscription-manager 2>/dev/null| grep el8))
  3. Download the packages with explicity Requires: for subscription-manager
    • Example:
      dnf --repofrompath BaseOS,/media/BaseOS --repo BaseOS --repofrompath AppStream,/media/AppStream --repo AppStream download "${package_list[@]}"
  4. Obtain the SOURCEPKG definition for the above packages
    • Example:
      rpm -q --queryformat="%{NAME}|%{SOURCERPM}\n" subscription-manager*.rpm | column -s\| -t
  5. Unmount the ISO.

Expected Results

  1. No packages have an explicit requirement for subscription-manager.

Sample Output

=== "Success"

```
$ sudo mount -o loop Rocky-8.5-aarch64-minimal.iso /media
mount: /media: WARNING: device write-protected, mounted read-only.

$ package_list=($(dnf --refresh repoquery --repofrompath BaseOS,/media/BaseOS --repo BaseOS --repofrompath AppStream,/media/AppStream --repo AppStream --whatrequires subscription-manager 2>/dev/null| grep el8))

$ dnf --repofrompath BaseOS,/media/BaseOS --repo BaseOS --repofrompath AppStream,/media/AppStream --repo AppStream download "${package_list[@]}"
Added BaseOS repo from /media/BaseOS
Added AppStream repo from /media/AppStream
Last metadata expiration check: 0:00:25 ago on Sun 24 Apr 2022 10:57:13 PM UTC.

$ rpm -q --queryformat="%{NAME}|%{SOURCERPM}\n" subscription-manager*.rpm | column -s\| -t
subscription-manager-cockpit        subscription-manager-1.28.21-3.el8.src.rpm
subscription-manager-migration      subscription-manager-1.28.21-3.el8.src.rpm
subscription-manager-plugin-ostree  subscription-manager-1.28.21-3.el8.src.rpm

$ sudo umount /media
```

=== "Failure"

TBD

{% include 'testing/qa_testcase_bottom.md' %}