From Fedora Project Wiki
(first half of the beta rewrite)
(add partitioning criteria (substantially revised))
Line 52: Line 52:
The installer must be able to use all available kickstart delivery methods.
The installer must be able to use all available kickstart delivery methods.


{{anchor|partitioning-alongside-existing-data}}
{{anchor|guided-partitioning}}
==== Partitioning: alongside existing data ====
==== Guided partitioning ====
The installer must be able to complete an installation using guided partitioning to a validly-formatted disk with existing data and sufficient empty space, using the empty space and installing a bootloader but leaving the existing data untouched.
When using the guided partitioning flow, the installer must be able to:
* Complete an installation to a validly-formatted disk with existing data and sufficient empty space, using the empty space and installing a bootloader but leaving the existing data untouched
* 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=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=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}}
{{anchor|custom-partitioning}}
==== Custom partitioning ====
When using the custom partitioning flow, the installer must be able to:
* Create mount points backed by ext4 partitions, LVM volumes or btrfs volumes, or software RAID arrays at RAID levels 0, 1 and 5
* 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}}


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

Revision as of 01:25, 15 March 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 40 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.

Guided partitioning

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

  • Complete an installation to a validly-formatted disk with existing data and sufficient empty space, using the empty space and installing a bootloader but leaving the existing data untouched
  • 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.
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.

Custom partitioning

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

  • Create mount points backed by ext4 partitions, LVM volumes or btrfs volumes, or software RAID arrays at RAID levels 0, 1 and 5
  • 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.

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