From Fedora Project Wiki

Revision as of 11:54, 2 August 2019 by Lruzicka (talk | contribs) (Create the new test case for modularity.)

Description

This test is a follow-up for the QA:Testcase_Modularity_module_defaults test case and tests that all system modules have their default definition yaml files in the fedora-module-defaults repository at Pagure.

Setup

  1. Make sure you have a clean installation of Fedora (all flavors are possible).
  2. Log onto the system as a superuser or a user with sudo rights.
  3. Run a terminal application, such as gnome-terminal, or switch to a virtual console (Ctrl-Alt-F3). The following test is based on the DNF package manager.
  4. Clone the definition yaml files, using git clone https://pagure.io/releng/fedora-module-defaults onto your system.

Note: For the time's being, users can work with modules using dnf. In the future, other package managers will be able to deal with it. Until then, do not attempt to test this approach using tools other than dnf.

How to test

  1. List a module:
    Execute dnf module list <module>.
  2. Read the information on streams and profiles.
  3. Check if the a corresponding yaml file is present in the fedora-module-defaults directory that you have cloned before.
  4. Check that the yaml file is correctly formed (see below).
  5. Check that the settings given by the yaml file correspond with the system settings.

Expected Results

  1. All system modules must have their yaml files in the above mentioned directory.
  2. The yaml file contains a document section where the value is modulemd-defaults.
  3. The yaml file contains a version section and the value is 1.
  4. The yaml file contains a data section, where the defaults are defined.
  5. If the module has a default stream defined, then the data section contains a stream section and the value matches the default stream reported by the installed system. If default stream is not defined, there must be no stream section in the file.
  6. The data section contains the profiles section, where streams and their default profiles are given. For example, 4.5 [server] means that the module has a stream called 4.5 and that stream has a default profile called server. The yaml file definition must correspond with the situation reported by dnf module list <module> on the installed system.

Notes:

  • If you find any discrepancies between the module defaults definitions and the real situation on the installed system, or if the yaml definition does not exist at all, please report a bug against this particular module in Fedora Modules.