From Fedora Project Wiki

Revision as of 08:14, 12 February 2015 by 192.168.1.14 (talk) (add vpodzime to the list of available developers→‎Who's available)

Fedora Test Days
Echo-testing-48px.png
Anaconda and Dnf

Date 2015-02-12
Time all day

Website Fedora Calendar
IRC #fedora-test-day (webirc)
Mailing list test


Note.png
Can't make the date?
If you come to this page before or after the test day is completed, your testing is still valuable, and you can use the information on this page to test, file any bugs you find at Bugzilla, and add your results to the results section. If this page is more than a month old when you arrive here, please check the current schedule and see if a similar but more recent Test Day is planned or has already happened.

What to test?

Today's instalment of Fedora Test Day will focus on DNF use in Anaconda, the Fedora installer. DNF is the package manager intended to replace yum as the default for Fedora soon: part of the goal of this test day is to decide if it is in good enough shape to replace yum for Anaconda for Fedora 22.

Who's available

The following cast of characters will be available testing, workarounds, bug fixes, and general discussion:

Prerequisite for Test Day

  • An image to test
  • Test system / drive or virtual machine (for this test day, you need something you can lose all the data from, non-destructive testing is not possible)
  • (Optional) a server for hosting kickstarts

How to test?

Images

Please test with one of these images (the 2015-02-10 nightly builds):

Known issues

For all testing described below, please note that there are some issues that are already known - no need to spend time reproducing these problems and filing new reports.

  • No proxy support. Proxies just won't be used
  • kickstart repos additionally do not implement --cost, --excludepkgs, --includepkgs, --ignoregroups
  • All of that, except proxy URL and cost, is also missing in the .repo files written with anaconda
  • %packages --multilib is not implemented
  • Language support selection is not saved in the dnf-langpacks configuration
  • Excluding packages in a kickstart does not work
  • In the GUI, the default package set is Cloud Server - this is caused by RHBZ #1177002

Planned testing

Download one of the nightly images to be used for testing, and run through one or more of the test cases listed on the results page. Report any bugs you encounter, and enter your results on the results page.

Exploratory testing

You can also do free form testing to exercise the package-related functions of the installer as much as possible: try different things in the INSTALLATION SOURCE and SOFTWARE SELECTION screens, and exercise the kickstart directives relating to repositories and package sets. Please add results to the table below. Here are some ideas for exploratory testing from the installer developers:

  • Try all environments (left-hand side choices) in SOFTWARE SELECTION, with add-ons (right-hand side choices) left default: note dependency issues may be bugs in packages, not in anaconda or DNF, check the Rawhide Report emails to see
  • Try Basic Desktop, Minimal Install or KDE Plasma Workspaces environment and select all add-ons
  • Test installation with the /root/anaconda-ks.cfg file generated by any interactive install (e.g. those above), ensure it works and reproduces the same install options
  • Test various options for %packages: --nocore, --multilib, --default, --nobase, --instLangs=LIST
  • Test various options for @group definitions: --nodefaults, --optional
  • Test various special entries in %packages sections:
    * - all packages
    -@group - exclude group
    cloud* - wildcard package match
    -cloud* - exclude wildcard package match
    -kernel - exclude kernel (should work, with kernel-core)
    -kernel* - exclude kernels (???)

Automatable kickstarts

It would be very valuable to the installer team for testers to help produce more kickstarts which can be used for automated testing. This is really just a regular kickstart with some shell script commands in %post that check whether the installed system matches the intent of the kickstart and place the result in the file /root/RESULT. For a successful run, the file should contain only the text SUCCESS. For a failed run, the file should contain a short error message.

Please upload these kickstarts somewhere publicly accessible, or if you do not have access to a publicly accessible server, you can upload them to this Wiki. Please add them to the table below.

Here is an example automatable kickstart, which sets some package groups and environment groups to be installed and checks that they are:

url --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
install
network --bootproto=dhcp

bootloader --timeout=1
zerombr
clearpart --all
autopart

keyboard us
lang en
timezone America/New_York
rootpw qweqwe
shutdown

%packages
@core
@c-development
@^web-server-environment
%end

%post
# We don't have a way of determining if a group/env is installed or not.
# These sentinel packages will have to do.
rpm -q httpd
if [[ $? != 0 ]]; then
    echo '*** web-server-environment was not installed' > /root/RESULT
else
    rpm -q gcc
    if [[ $? != 0 ]]; then
       echo '*** c-development was not installed' > /root/RESULT
    else
       echo SUCCESS > /root/RESULT
    fi
fi
%end

Exploratory / kickstart testing results

You can add test kickstarts and bugs you encounter in exploratory testing to the table below, following the example format. Please include all details and comments about the bug in the bug report and just include your name and the lists of bugs and kickstarts in the table. It's fine to only include bugs (if you only do interactive testing) or only kickstarts (if you tested kickstarts and didn't find any bugs). If you do not have access to a site or service to upload your kickstarts to, you can upload them to this Wiki.

Tester Bugs reported Kickstarts
Example RHBZ #123456 RHBZ #654321 groups.ks

Reporting bugs

If you have problems with any of the tests, report a bug to Bugzilla for the appropriate component. Likely choices are:

If you are unsure about which component to report a bug against, exactly how to file the report, or what other information to include, just ask on IRC and we will help you.

Test Results

Please enter results for the planned testing on the results page. The results will be transferred here some time after the Test Day concludes for the record.