Fedora 20 Beta Release Criteria

From FedoraProject

(Difference between revisions)
Jump to: navigation, search
(fix anchor)
m (add automatic blockers link)
Line 290: Line 290:
 
* [[Fedora 20 Final Release Criteria]]
 
* [[Fedora 20 Final Release Criteria]]
 
* [[Blocker Bug FAQ]]
 
* [[Blocker Bug FAQ]]
 +
* [[QA:SOP blocker_bug process]]
 +
* [[QA:SOP blocker_bug process#Automatic_blockers|Automatic blockers]]
 
* [[Packaging:Guidelines]]
 
* [[Packaging:Guidelines]]
  
 
[[Category:Release Criteria]]
 
[[Category:Release Criteria]]

Revision as of 08:58, 9 September 2013

Contents

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 20 Changes
  3. Identify as many F20 Final blocker bugs as possible

Beta Release Requirements

In order to be released to the general public, the Beta Candidate (RC) 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 the x86 architectures is GNOME and KDE, and for the ARM architectures is KDE. 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 primary Products - Server, Workstation and Cloud - in their product requirement documents and/or technical specifications, and the KDE live image.

Process requirements

Alpha criteria met

All Fedora 20 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.

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.

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.

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.

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.

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.

Hardware and firmware RAID

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

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.

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.

Virtualization requirements

Self hosting virtualization

The release must be able host virtual guest instances of the same 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.

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.

Working sound

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

Desktop panel

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

Automatic mounting

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

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.

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 feature 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