From Fedora Project Wiki

(create for f19 (copy/paste))
 
(replace with the shiny new revised version - commit history at https://fedoraproject.org/wiki/User:Adamwill/Draft_beta_criteria_sandbox if anyone cares. major revision discussed on test@ thread "Major criteria re-write / re-design proposal")
Line 9: Line 9:
{{Template:Release_criteria_preamble|prerelease=Beta}}
{{Template:Release_criteria_preamble|prerelease=Beta}}


Release Requirements:
=== <span style="text-decoration:underline">Process requirements</span> ===
# All [[Fedora 19 Alpha Release Criteria]] must be met
{{anchor|alpha-criteria-met}}
# All bugs blocking the [https://bugzilla.redhat.com/showdependencytree.cgi?id=f19beta&hide_resolved=1 Beta tracker] must be [[BugZappers/BugStatusWorkFlow#CLOSED|CLOSED]]
==== Alpha criteria met ====
# The network installation image, DVD image, and live images for release-blocking desktops must meet current size requirements
All [[Fedora 19 Alpha Release Criteria]] must be met.
# The installer must boot (if appropriate) and run on all primary architectures, with all system firmware types that are common on those architectures, from default live image, DVD, and boot.iso install media when written to a USB stick with '''any''' of the [[How_to_create_and_use_Live_USB|officially supported methods]]
 
# The installer must be able to use the HTTP, FTP and either NFS or NFSISO remote package source options
{{anchor|beta-blockers-closed}}
# It must be possible to install by booting the installation kernel directly, including via PXE, and correctly specifying a remote source for the installer itself, using whichever protocols are required to work for package retrieval at the current phase (Alpha, Beta, Final). This must work if the remote source is not a complete repository but contains only the files necessary for the installer itself to run.
==== Beta blockers CLOSED ====
# The installer must be able to complete an installation using the serial console interface
All bugs blocking the [https://bugzilla.redhat.com/showdependencytree.cgi?id=f19beta&hide_resolved=1 Beta tracker] must be [[BugZappers/BugStatusWorkFlow#CLOSED|CLOSED]].
# The installer must be able to use all kickstart delivery methods
 
# The installer must be able to complete an installation using automatic partitioning to a validly-formatted disk with sufficient empty space, using the empty space and installing a bootloader but leaving the pre-existing partitions and data untouched
{{anchor|image-size-requirements}}
# The installer's custom partitioning mode must be capable of the following:
==== Image size requirements ====
#* Creating, destroying and assigning mount points to partitions of any specified size using most commonly-used filesystem types
The release-blocking images must meet current size requirements.
#* Creating encrypted partitions
{{hidden|header=References|content=
#* Rejecting obviously invalid operations without crashing
* [https://lists.fedoraproject.org/pipermail/test/2011-April/098811.html Proposed 2011-04-11], [https://fedoraproject.org/w/index.php?title=Fedora_16_Beta_Release_Criteria&diff=239206&oldid=236662 implemented 2011-05-31]
# The installer must be able to create and install to software, hardware or BIOS RAID-0, RAID-1 or RAID-5 partitions for anything except /boot
* Test case: [[QA:Testcase_Mediakit_ISO_Size]]
# For each one of the release-blocking package sets ('minimal', and the package sets for each one of the release-blocking desktops), it must be possible to successfully complete an upgrade from a fully updated installation of the previous stable Fedora release with that package set installed, using any officially recommended upgrade mechanisms. The upgraded system must meet all release criteria.
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
# The installer must be able to successfully complete a scripted installation, using the installer's preferred scripting system, which duplicates the default interactive installation as closely as possible
 
# Any installation method or process designed to run unattended must do so (there should be no prompts requiring user intervention)
{{anchor|initialization-requirements}}
# The rescue mode of the installer must be able to detect and mount (read-write and read-only) LVM, encrypted, and RAID (BIOS, hardware, and software) installations
=== <span style="text-decoration:underline">Initialization requirements</span> ===
# When booting a system installed without a graphical environment, or when using a correct configuration setting to cause an installed system to boot in non-graphical mode, the system should provide a working login prompt without any unintended user intervention when boot is complete, and all virtual consoles intended to provide a working login prompt should do so
{{anchor|release-blocking-images-must-boot}}
# The release must be able host virtual guest instances of the same release, using Fedora's current preferred virtualization technology
==== Release-blocking images must boot ====
# The release must install and boot successfully as a virtual guest in a situation where the virtual host is running the previous stable Fedora release, using Fedora's current preferred virtualization technology
All release-blocking images must boot in their supported configurations.
# In most cases, the installed system must be able to play back sound with gstreamer-based applications (see [[Blocker_Bug_FAQ#Hardware_and_local_configuration_dependent_issues|Blocker_Bug_FAQ]])
{{hidden|header=Supported media types|content=Release-blocking live and dedicated installer images must boot when written to optical media of an appropriate size (if applicable) and when written to a USB stick with '''any''' of the [[How_to_create_and_use_Live_USB|officially supported methods]].|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
# No part of any release-blocking desktop's panel (or equivalent) configuration should crash or be entirely non-functional on boot of the installed system using default installation choices
{{hidden|header=Difference from Alpha|content=This criterion differs from the similar [[Fedora_19_Alpha_Release_Criteria#Supported_images_must_boot|Alpha criterion]] only in that it requires ''all'' supported methods of writing a Fedora USB stick to work, not just ''any single one''.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
# Automatic mounting on insertion of removable media must work in release-blocking desktops
{{hidden|header=References|content=
# The default update manager in release-blocking desktops must not periodically check for updates when the system is booted live, but must periodically check for updates when running on an installed system
Test cases:
# All release-blocking desktops' offered mechanisms (if any) for shutting down, logging out and rebooting must work
* [[QA:Testcase_Boot_Methods_Boot_Iso]]
<!--
* [[QA:Testcase_Boot_Methods_Dvd]]
IF we need this ... we fail
* [[QA:Testcase_Live_Image_Boot]]
# The QA team has an installable testable Release Candidate for at least two full days (48 hours).
* [[QA:Testcase_USB_stick_Live_luc]]
-->
* [[QA:Testcase_USB_stick_Live_litd]]
* [[QA:Testcase_USB_stick_Live_dd]]
* [[QA:Testcase_USB_stick_DVD_litd]]
* [[QA:Testcase_USB_stick_DVD_dd]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|installer-requirements}}
=== <span style="text-decoration:underline">Installer requirements</span> ===
{{anchor|remote-package-sources}}
==== Remote package sources ====
When using the dedicated installer images, the installer must be able to use HTTP, FTP and NFS repositories as package sources.
{{hidden|header=NFS specific requirements|content=The installer can handle two different types of NFS repository. It can either contain a package tree, as with HTTP and FTP repositories, or it can contain the DVD ISO image of the same release as the installer. For Beta, ''only one'' of these types must work - if one works and the other doesn't, that is OK.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Difference from Alpha|content=This criterion differs from the similar [[Fedora_19_Alpha_Release_Criteria#remote-package-sources|Alpha criterion]] in that it requires both HTTP and FTP repositories to work (Alpha requires only one or the other), and adds the requirement for NFS repositories to work.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
Test cases:
* [[QA:Testcase_install_repository_Mirrorlist_default]]
* [[QA:Testcase_install_repository_Mirrorlist_graphical]]
* [[QA:Testcase_install_repository_HTTP/FTP_graphical]]
* [[QA:Testcase_install_repository_HTTP/FTP_variation]]
* [[QA:Testcase_install_repository_NFS_graphical]]
* [[QA:Testcase_install_repository_NFS_variation]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|direct-kernel-boot}}
==== Direct kernel boot ====
It must be possible to install by booting the installation kernel directly (including via PXE) and correctly specifying a remote source for the installer itself.
{{hidden|header=Remote source types|content=All remote source types required to work for package retrieval in the [[#remote-package-source|relevant criterion]] at the current milestone must work in this case too.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Incomplete remote source|content=This must work even if the remote source is not a complete package repository but contains only the files necessary for the installer itself to run. In this case, to complete a full installation, a separate package repository would also have to be specified in some way.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* [https://lists.fedoraproject.org/pipermail/test/2012-April/106672.html Proposed 2012-04-06], [https://lists.fedoraproject.org/pipermail/test/2012-April/107245.html implemented 2012-04-19]
* Test case: [[QA:Testcase_Boot_Methods_Pxeboot]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|installation-interfaces}}
 
==== Installation interfaces ====
The installer must be able to complete an installation using the serial console interface.
{{hidden|header=References|content=
* [https://lists.fedoraproject.org/pipermail/test/2012-February/105383.html Proposed 2012-02-03], [https://lists.fedoraproject.org/pipermail/test/2012-February/105540.html implemented 2012-02-13]
* Test case: [[QA:Testcase_Anaconda_User_Interface_serial_console]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|kickstart-delivery}}
==== Kickstart delivery ====
The installer must be able to use all available kickstart delivery methods.
{{hidden|header='Available' defined by installer team|content=The intent of ''available'' is that the installer developers get to define the set of supported kickstart methods. ''Available kickstart delivery method'' means 'an argument to the ''ks='' parameter which is backed by code in the installer'.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* 'Available' rider added during major Fedora 19 criteria revision at request of anaconda team
* Test cases:
** [[QA:Testcase_Kickstart_Http_Server_Ks_Cfg]]
** [[QA:Testcase_Kickstart_File_Path_Ks_Cfg]]
** [[QA:Testcase_Kickstart_Hd_Device_Path_Ks_Cfg]]
** [[QA:Testcase_Kickstart_Nfs_Server_Path_Ks_Cfg]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|guided-partitioning}}
==== Guided partitioning ====
When using the guided partitioning flow, the installer must be able to:
* Cleanly install to a disk with a valid ms-dos or gpt disk label and partition table which contains existing data and sufficient unpartitioned space for a Fedora installation
* Complete an installation using any combination of disk configuration options it allows the user to select
* Remove existing storage volumes to free up space, at the user's direction
* Reject or disallow invalid disk and volume configurations without crashing.
{{hidden|header=Cleanly install?|content=''Cleanly install' means that Fedora must be installed to the empty space, and if specified a bootloader should be installed to the MBR, but otherwise the disk should be left alone: the existing disk label and partitions must be untouched and no data may be lost.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Guided partitioning|content=''Guided partitioning'' refers to the path where the user allows the installer to handle partitioning, as opposed to ''custom'' or ''manual partitioning'' where the user has full control over the partitioning process.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Disk configuration options?|content=''Disk configuration options'' refers to choices such as encryption and volume/partition type.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Partitioning criteria differed prior to Fedora 18 rewrite of installer GUI
* First attempt to revise criteria for Fedora 18 was proposed [https://lists.fedoraproject.org/pipermail/test/2012-October/110494.html 2012-10-01], implemented [https://lists.fedoraproject.org/pipermail/test/2012-October/110531.html 2012-10-02]
* Second attempt proposed [https://lists.fedoraproject.org/pipermail/test/2012-October/110848.html 2012-10-11] after first changes seemed inadequate; never implemented
* Third revision made as part of major Fedora 19 criteria revision
* Test cases:
** [[QA:Testcase_Anaconda_autopart_(use_free_space)_install]]
** [[QA:Testcase_Anaconda_autopart_(reclaim)_install]]
** [[QA:Testcase_Anaconda_autopart_(encrypted)_install]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|custom-partitioning}}
==== Custom partitioning ====
When using the custom partitioning flow, the installer must be able to:
* Correctly interpret, and modify as described below, any disk with a valid ms-dos or gpt disk label and partition table containing ext4 partitions, LVM and/or btrfs volumes, and/or software RAID arrays at RAID levels 0, 1 and 5 containing ext4 partitions
* Create mount points backed by ext4 partitions, LVM volumes or btrfs volumes, or software RAID arrays at RAID levels 0, 1 and 5 containing ext4 partitions
* Remove a planned storage volume from the planned layout
* Assign sizes to newly-created storage volumes and containers
* Encrypt newly-created storage volumes
* Remove existing storage volumes
* Assign mount points to existing storage volumes
* Reject or disallow invalid disk and volume configurations without crashing.
{{hidden|header=Custom partitioning|content=''Custom partitioning'' refers to the path where the user chooses to take full control over partitioning, as opposed to ''guided partitioning'' where the user allows the installer to handle partitioning.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Re-using /home|content=The requirement "assign mount points to existing storage volumes" is considered to cover the common operation of re-using an existing /home partition without formatting it. For all other mount points, it is acceptable if re-use requires them to be re-formatted.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Partitioning criteria differed prior to Fedora 18 rewrite of installer GUI
* First attempt to revise criteria for Fedora 18 was proposed [https://lists.fedoraproject.org/pipermail/test/2012-October/110494.html 2012-10-01], implemented [https://lists.fedoraproject.org/pipermail/test/2012-October/110531.html 2012-10-02]
* Second attempt proposed [https://lists.fedoraproject.org/pipermail/test/2012-October/110848.html 2012-10-11] after first changes seemed inadequate; never implemented
* Third revision made as part of major Fedora 19 criteria revision
* Test cases:
** [[QA:Testcase_Anaconda_custom_partitioning]]
** [[QA:Testcase_Partitioning_On_Software_RAID]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|hardware-and-firmware-raid}}
==== Hardware and firmware RAID ====
* The installer must be able to detect and install to hardware or firmware RAID storage devices.
{{hidden|header=System-specific bugs|content=System-specific bugs don't necessarily constitute an infringement of this criterion. It is not unusual that support for some specific firmware RAID controller, for instance, might be broken. In the case of such system-specific bugs, whether the bug is considered to infringe the criterion will be a subjective decision based on the severity of the bug and how common the hardware in question is considered to be. See [[Blocker_Bug_FAQ]] for more discussion of this.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Partitioning criteria differed prior to Fedora 18 rewrite of installer GUI; hardware, firmware and software RAID were combined
* Software RAID was rolled into partitioning criteria and firmware/hardware RAID left as a standalone criterion as part of major Fedora 19 criteria revision
* Test cases: [[QA:Testcase_Install_to_BIOS_RAID]], [[QA:Testcase_Install_to_Hardware_RAID]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|scripted-installation}}
==== Scripted installation ====
The installer must be able to complete a scripted installation which duplicates the default interactive installation as closely as possible.
{{hidden|header=References|content=
* [https://lists.fedoraproject.org/pipermail/test/2011-August/102052.html Proposed 2011-08-23], [https://lists.fedoraproject.org/pipermail/test/2011-September/102599.html implemented 2011-09-08]
* Test case: [[QA:Testcase_Kickstart_Http_Server_Ks_Cfg]] (incomplete)
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|unattended-installation}}
==== Unattended installation ====
Any installation method or process designed to run unattended must do so. There should be no prompts requiring user intervention.
{{hidden|header=References|content=
* [https://lists.fedoraproject.org/pipermail/test/2011-March/097859.html Proposed 2011-03-17], [https://lists.fedoraproject.org/pipermail/test/2011-March/098288.html implemented 2011-03-29]
* Test case: [[QA:Testcase_Kickstart_Http_Server_Ks_Cfg]] (incomplete)
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|rescue-mode}}
==== Rescue mode ====
The rescue mode of the installer must be able to detect and mount any installation performed according to the applicable criteria, and provide a shell with access to utilities capable of performing typical recovery operations.
{{hidden|header=References|content=
* Test case: [[QA:Testcase_Anaconda_rescue_mode]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|Upgrade requirements}}
 
=== <span style="text-decoration:underline">Upgrade requirements</span> ===
For each one of the release-blocking package sets, it must be possible to successfully complete an upgrade from a fully updated installation of the previous stable Fedora release with that package set installed.
{{hidden|header=Release-blocking package sets|content=The release-blocking package sets are the minimal set, and the sets for each one of the release-blocking desktops.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Recommended upgrade mechanisms|content=This criterion applies to the [[Upgrading|recommended upgrade mechanisms]] only.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Upgraded system requirements|content=The upgraded system must meet all release criteria.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Initial upgrade criterion was part of initial Fedora 13 criteria revision
* Adjusted to require upgraded system to work [https://lists.fedoraproject.org/pipermail/test/2011-March/098288.html 2011-03-28]
* Adjusted to refer to 'officially supported upgrade mechanisms' rather than specifying particular methods: [https://lists.fedoraproject.org/pipermail/test/2012-September/110296.html proposed 2012-09-24], [https://lists.fedoraproject.org/pipermail/test/2012-October/110575.html implemented 2012-10-03]
* Wording slightly re-organized as part of the major Fedora 19 criteria revision
* Test cases:
** [[QA:Testcase_upgrade_fedup_cli_previous_desktop]]
** [[QA:Testcase_upgrade_fedup_cli_previous_kde]]
** [[QA:Testcase_upgrade_fedup_cli_previous_minimal]]
** [[QA:Testcase_upgrade_fedup_cli_previous_desktop_encrypted]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|virtualization-requirements}}
=== <span style="text-decoration:underline">Virtualization requirements</span> ===
{{anchor|self-hosting-virtualization}}
==== Self hosting virtualization ====
The release must be able host virtual guest instances of the same release.
{{hidden|header=What does that mean?|content=This rather concise criterion means effectively means that both virtual host and virtual guest functionality must work - it's implied, if you think about it. It also means that there must be no showstopper bugs in the installer when installing to a virtual machine...|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=Recommended virtualization technology|content=...when using Fedora's recommended virtualization technology, that is. This criterion applies only to the [[Getting_started_with_virtualization|recommended Fedora virtualization tools]] - the qemu/kvm - libvirt - virt-manager stack.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Initial virtualization criterion was part of initial Fedora 13 criteria revision
* Revision to explicitly cover both guest and host functionality was [https://lists.fedoraproject.org/pipermail/test/2011-September/102601.html proposed 2011-09-07]
* Proposal was heavily amended after discussion, particularly a [https://lists.fedoraproject.org/pipermail/test/2011-September/102636.html suggestion by Albert Graham], to be more concise and to cover guest functionality when host runs previous release
* Amended proposal was [https://lists.fedoraproject.org/pipermail/test/2011-October/103680.html implemented 2011-10-14]
* Test case: [[QA:Testcase_Install_to_Current_KVM]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|guest-on-previous-release}}
==== Guest on previous release ====
The release must install and boot successfully as a virtual guest in a situation where the virtual host is running the previous stable Fedora release.
{{hidden|header=Recommended virtualization technology|content=This criterion applies only to the [[Getting_started_with_virtualization|recommended Fedora virtualization tools]] - the qemu/kvm - libvirt - virt-manager stack.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Initial virtualization criterion was part of initial Fedora 13 criteria revision
* Revision to explicitly cover both guest and host functionality was [https://lists.fedoraproject.org/pipermail/test/2011-September/102601.html proposed 2011-09-07]
* Proposal was heavily amended after discussion, particularly a [https://lists.fedoraproject.org/pipermail/test/2011-September/102636.html suggestion by Albert Graham], to be more concise and to cover guest functionality when host runs previous release
* Amended proposal was [https://lists.fedoraproject.org/pipermail/test/2011-October/103680.html implemented 2011-10-14]
* Test case: [[QA:Testcase_Install_to_Previous_KVM]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|post-install-requirements}}
=== <span style="text-decoration:underline">Post-install requirements</span> ===
Except where otherwise specified, each of these requirements applies to all supported configurations described [[#initialization-requirements|above]].
 
{{anchor|expected-installed-system-boot-behavior}}
==== Expected installed system boot behavior ====
* A system installed without a graphical package set must boot to a working login prompt without any unintended user intervention, and all virtual consoles intended to provide a working login prompt must do so.
{{hidden|header=Difference from Alpha|content=This criterion differs from the similar [[Fedora_19_Alpha_Release_Criteria#expected-installed-system-boot-behavior|Alpha criterion]] by requiring that a login prompt be present without user intervention, and that all virtual consoles provide login prompts: the Alpha criterion is satisfied even if only a single console provides a login prompt, and it is not the one presented to the user after boot.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Requirement for graphical installs to boot to desktop was in original Fedora 13 criteria revision
* Changes to cover non-graphical installs were proposed [https://lists.fedoraproject.org/pipermail/test/2010-August/092615.html 2010-08-12], implemented [https://lists.fedoraproject.org/pipermail/test/2010-August/092784.html 2010-08-16]: this included the distinct Alpha and Beta requirements
* Test case: [[QA:Testcase_base_startup]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|working-sound}}
==== Working sound ====
* The installed system must be able to play back sound with gstreamer-based applications.
{{hidden|header=System-specific bugs|content=System-specific bugs don't usually constitute an infringement of this criterion. It is meant to cover bugs which completely prevent sound playback from working in any hardware configuration. See [[Blocker_Bug_FAQ]] for more discussion of this.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Part of original Fedora 13 criteria revision
* Test case: [[QA:Testcase_audio_basic]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|desktop-panel}}
==== Desktop panel ====
* No part of any release-blocking desktop's panel (or equivalent) configuration may crash on startup or be entirely non-functional.
{{hidden|header=References|content=
* Part of original Fedora 13 criteria revision
* Test case: [[QA:Testcase_desktop_panel_basic]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|automatic-mounting}}
==== Automatic mounting ====
* Automatic mounting of removable media on insertion must work in release-blocking desktops.
{{hidden|header=Removable media|content=This criterion applies to optical discs, USB storage devices and hotpluggable eSATA hard disks, and any other similar devices that are supported.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* Part of original Fedora 13 criteria revision (later broadened from 'default desktop' to 'release-blocking desktops')
* Test case: [[QA:Testcase_desktop_automount]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|update-notification}}
==== Update notification ====
* Release-blocking desktops must notify the user of available updates, but must not do so when running as a live image.
{{hidden|header=References|content=
* [https://lists.fedoraproject.org/pipermail/test/2010-June/091702.html Proposed 2010-06-24], [https://lists.fedoraproject.org/pipermail/test/2010-June/091777.html implemented 2010-06-29]
* Test case: [[QA:Testcase_desktop_updates]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
 
{{anchor|desktop-shutdown-reboot-logout}}
==== Desktop shutdown, reboot, logout ====
All release-blocking desktops' offered mechanisms (if any) for shutting down, logging out and rebooting must work.
{{hidden|header=Work?|content=Similar to the [[Fedora_19_Alpha_Release_Criteria#shutdown|Alpha criterion]] for shutting down, shutdown and reboot mechanisms must take storage volumes down cleanly and correctly request a shutdown or reboot from the system firmware. Logging out must return the user to the environment from which they logged in, working as expected.|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}
{{hidden|header=References|content=
* [https://lists.fedoraproject.org/pipermail/test/2010-June/091702.html Proposed 2010-06-24], [https://lists.fedoraproject.org/pipermail/test/2010-June/091777.html implemented 2010-06-29]
* Test case: [[QA:Testcase_desktop_login]]
|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}}


{{Template:Release_criteria_definition|prerelease=Beta}}
{{Template:Release_criteria_definition|prerelease=Beta}}

Revision as of 05:06, 24 April 2013

Beta Objectives

The objectives of the Beta release are to:

  1. Publicly release installable media versions of a code complete test release: Beta is the last widely co-ordinated test release point in any given release cycle
  2. Finish testing Fedora 19 Features
  3. Identify as many F19Blocker bugs as possible

Beta Release Requirements

In order to be released to the general public, a compose must meet all of the following criteria. This is intended to make the decision process as clear and straightforward as possible. Mostly met items are incomplete until they are met. Optional and nice to have items should not be included in this list.

There may be times where a requirement is unmet only in a particular configuration, such as with some keyboard layouts but not others, or if a particular character is used in a username, password or passphrase. In such cases, the release team should use their judgement and refer to precedent to determine whether or not the issue should be considered to block the release. They should consider the number of users likely to be affected by the issue, the severity of the case when the issue is encountered, and the ease or otherwise with which the issue can be avoided by both informed and uninformed users.

The term release-blocking desktops means all the desktop environments in which bugs are currently considered capable of blocking a Fedora release. The current set of release-blocking desktops for x86_64 is GNOME and KDE, and for aarch64 is GNOME. Note that bugs in desktops that are not part of this set which would infringe these criteria automatically qualify for freeze exception status, according to the freeze exception bug process.

The term release-blocking images means all the images in which bugs are currently considered capable of blocking a Fedora release. The current set of release-blocking images includes the images defined by the three Editions - Server, Workstation and IoT - in their product requirement documents and/or technical specifications, the Everything network install image, key Cloud images, and the KDE live image. The canonical list of release-blocking images for Fedora 41 is on this page.

Process requirements

Alpha criteria met

All Fedora 19 Alpha Release Criteria must be met.

Beta blockers CLOSED

All bugs blocking the Beta tracker must be CLOSED.

Image size requirements

The release-blocking images must meet current size requirements.

Initialization requirements

Release-blocking images must boot

All release-blocking images must boot in their supported configurations.

Supported media types

Release-blocking live and dedicated installer images must boot when written to optical media of an appropriate size (if applicable) and when written to a USB stick with any of the officially supported methods.

Difference from Alpha

This criterion differs from the similar Alpha criterion only in that it requires all supported methods of writing a Fedora USB stick to work, not just any single one.

Installer requirements

Remote package sources

When using the dedicated installer images, the installer must be able to use HTTP, FTP and NFS repositories as package sources.

NFS specific requirements

The installer can handle two different types of NFS repository. It can either contain a package tree, as with HTTP and FTP repositories, or it can contain the DVD ISO image of the same release as the installer. For Beta, only one of these types must work - if one works and the other doesn't, that is OK.

Difference from Alpha

This criterion differs from the similar Alpha criterion in that it requires both HTTP and FTP repositories to work (Alpha requires only one or the other), and adds the requirement for NFS repositories to work.

Direct kernel boot

It must be possible to install by booting the installation kernel directly (including via PXE) and correctly specifying a remote source for the installer itself.

Remote source types

All remote source types required to work for package retrieval in the relevant criterion at the current milestone must work in this case too.

Incomplete remote source

This must work even if the remote source is not a complete package repository but contains only the files necessary for the installer itself to run. In this case, to complete a full installation, a separate package repository would also have to be specified in some way.

Installation interfaces

The installer must be able to complete an installation using the serial console interface.

Kickstart delivery

The installer must be able to use all available kickstart delivery methods.

'Available' defined by installer team

The intent of available is that the installer developers get to define the set of supported kickstart methods. Available kickstart delivery method means 'an argument to the ks= parameter which is backed by code in the installer'.

References

Guided partitioning

When using the guided partitioning flow, the installer must be able to:

  • Cleanly install to a disk with a valid ms-dos or gpt disk label and partition table which contains existing data and sufficient unpartitioned space for a Fedora installation
  • Complete an installation using any combination of disk configuration options it allows the user to select
  • Remove existing storage volumes to free up space, at the user's direction
  • Reject or disallow invalid disk and volume configurations without crashing.
Cleanly install?

Cleanly install' means that Fedora must be installed to the empty space, and if specified a bootloader should be installed to the MBR, but otherwise the disk should be left alone: the existing disk label and partitions must be untouched and no data may be lost.

Guided partitioning

Guided partitioning refers to the path where the user allows the installer to handle partitioning, as opposed to custom or manual partitioning where the user has full control over the partitioning process.

Disk configuration options?

Disk configuration options refers to choices such as encryption and volume/partition type.

References

Custom partitioning

When using the custom partitioning flow, the installer must be able to:

  • Correctly interpret, and modify as described below, any disk with a valid ms-dos or gpt disk label and partition table containing ext4 partitions, LVM and/or btrfs volumes, and/or software RAID arrays at RAID levels 0, 1 and 5 containing ext4 partitions
  • Create mount points backed by ext4 partitions, LVM volumes or btrfs volumes, or software RAID arrays at RAID levels 0, 1 and 5 containing ext4 partitions
  • Remove a planned storage volume from the planned layout
  • Assign sizes to newly-created storage volumes and containers
  • Encrypt newly-created storage volumes
  • Remove existing storage volumes
  • Assign mount points to existing storage volumes
  • Reject or disallow invalid disk and volume configurations without crashing.
Custom partitioning

Custom partitioning refers to the path where the user chooses to take full control over partitioning, as opposed to guided partitioning where the user allows the installer to handle partitioning.

Re-using /home

The requirement "assign mount points to existing storage volumes" is considered to cover the common operation of re-using an existing /home partition without formatting it. For all other mount points, it is acceptable if re-use requires them to be re-formatted.

References

Hardware and firmware RAID

  • The installer must be able to detect and install to hardware or firmware RAID storage devices.
System-specific bugs

System-specific bugs don't necessarily constitute an infringement of this criterion. It is not unusual that support for some specific firmware RAID controller, for instance, might be broken. In the case of such system-specific bugs, whether the bug is considered to infringe the criterion will be a subjective decision based on the severity of the bug and how common the hardware in question is considered to be. See Blocker_Bug_FAQ for more discussion of this.

References
  • Partitioning criteria differed prior to Fedora 18 rewrite of installer GUI; hardware, firmware and software RAID were combined
  • Software RAID was rolled into partitioning criteria and firmware/hardware RAID left as a standalone criterion as part of major Fedora 19 criteria revision
  • Test cases: QA:Testcase_Install_to_BIOS_RAID, QA:Testcase_Install_to_Hardware_RAID

Scripted installation

The installer must be able to complete a scripted installation which duplicates the default interactive installation as closely as possible.

Unattended installation

Any installation method or process designed to run unattended must do so. There should be no prompts requiring user intervention.

Rescue mode

The rescue mode of the installer must be able to detect and mount any installation performed according to the applicable criteria, and provide a shell with access to utilities capable of performing typical recovery operations.

References

Upgrade requirements

For each one of the release-blocking package sets, it must be possible to successfully complete an upgrade from a fully updated installation of the previous stable Fedora release with that package set installed.

Release-blocking package sets

The release-blocking package sets are the minimal set, and the sets for each one of the release-blocking desktops.

Recommended upgrade mechanisms

This criterion applies to the recommended upgrade mechanisms only.

Upgraded system requirements

The upgraded system must meet all release criteria.

References

Virtualization requirements

Self hosting virtualization

The release must be able host virtual guest instances of the same release.

What does that mean?

This rather concise criterion means effectively means that both virtual host and virtual guest functionality must work - it's implied, if you think about it. It also means that there must be no showstopper bugs in the installer when installing to a virtual machine...

Recommended virtualization technology

...when using Fedora's recommended virtualization technology, that is. This criterion applies only to the recommended Fedora virtualization tools - the qemu/kvm - libvirt - virt-manager stack.

References

Guest on previous release

The release must install and boot successfully as a virtual guest in a situation where the virtual host is running the previous stable Fedora release.

Recommended virtualization technology

This criterion applies only to the recommended Fedora virtualization tools - the qemu/kvm - libvirt - virt-manager stack.

References

Post-install requirements

Except where otherwise specified, each of these requirements applies to all supported configurations described above.

Expected installed system boot behavior

  • A system installed without a graphical package set must boot to a working login prompt without any unintended user intervention, and all virtual consoles intended to provide a working login prompt must do so.
Difference from Alpha

This criterion differs from the similar Alpha criterion by requiring that a login prompt be present without user intervention, and that all virtual consoles provide login prompts: the Alpha criterion is satisfied even if only a single console provides a login prompt, and it is not the one presented to the user after boot.

References
  • Requirement for graphical installs to boot to desktop was in original Fedora 13 criteria revision
  • Changes to cover non-graphical installs were proposed 2010-08-12, implemented 2010-08-16: this included the distinct Alpha and Beta requirements
  • Test case: QA:Testcase_base_startup

Working sound

  • The installed system must be able to play back sound with gstreamer-based applications.
System-specific bugs

System-specific bugs don't usually constitute an infringement of this criterion. It is meant to cover bugs which completely prevent sound playback from working in any hardware configuration. See Blocker_Bug_FAQ for more discussion of this.

References

Desktop panel

  • No part of any release-blocking desktop's panel (or equivalent) configuration may crash on startup or be entirely non-functional.
References

Automatic mounting

  • Automatic mounting of removable media on insertion must work in release-blocking desktops.
Removable media

This criterion applies to optical discs, USB storage devices and hotpluggable eSATA hard disks, and any other similar devices that are supported.

References
  • Part of original Fedora 13 criteria revision (later broadened from 'default desktop' to 'release-blocking desktops')
  • Test case: QA:Testcase_desktop_automount

Update notification

  • Release-blocking desktops must notify the user of available updates, but must not do so when running as a live image.

Desktop shutdown, reboot, logout

All release-blocking desktops' offered mechanisms (if any) for shutting down, logging out and rebooting must work.

Work?

Similar to the Alpha criterion for shutting down, shutdown and reboot mechanisms must take storage volumes down cleanly and correctly request a shutdown or reboot from the system firmware. Logging out must return the user to the environment from which they logged in, working as expected.

Beta Blocker Bugs

A bug is considered a Beta blocker bug if any of the following criteria are met:

  • A bug in a Critical Path package that:
    • Cannot be fixed with a future stable update
    • Has a severity rating of high or greater and no reasonable workaround (see definition of severity and priority)
  • Bug hinders execution of required Beta test plans or dramatically reduces test coverage
  • Bug relates to an unmet Beta Release Requirement

A Fedora Change being incomplete, in and of itself, does not constitute a blocker bug. The Change process is separate from this process. Changes are required to meet certain standards at certain points of the release cycle, but this is part of the Change process and managed, tracked and enforced separately from this process. However, if a proposed feature being incomplete causes any of the above criteria to be met, then the bug is a release blocker.


Contingency Plan

  • If all of the Beta Release Requirements are not met by 20:00 UTC on Wednesday the week prior to release day, the release will be delayed by one week so that the Beta Release Requirements can be met.
  • One week will be added to all remaining tasks in the release schedule, including the final release date.
  • This decision will be made at the Go/No-Go Meeting.

Confirming Beta Requirements

QA has the responsibility of determining whether the criteria for the release has been met (as outlined above) through discussion with Development and Release Engineering. QA's findings will be reviewed and discussed at the Go/No-Go Meeting.

Related Pages