From Fedora Project Wiki
No edit summary
Line 80: Line 80:
== Contingency Plan ==
== Contingency Plan ==
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
* Contingency mechanism: (What to do?  Who will do it?)
* Contingency mechanism:
** If we can not make the switch in time (merge in Storaged upstream, Cockpit and Blivet D-Bus API switch), UDisks2 '''will not be replaced'''.
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
* Contingency deadline: N/A (not a System Wide Change)  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- * Contingency deadline: N/A (not a System Wide Change) --> <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
* Blocks release? N/A (not a System Wide Change), Yes/No <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- * Blocks release? N/A (not a System Wide Change), Yes/No --> <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Blocks product? product <!-- Applicable for Changes that blocks specific product release/Fedora.next -->
<!-- * Blocks product? product --> <!-- Applicable for Changes that blocks specific product release/Fedora.next -->


== Documentation ==
== Documentation ==

Revision as of 12:06, 13 April 2016

Replace UDisks2 by Storaged

Summary

Storaged extends UDisks2 API by exporting several enterprise features (in form of plugins), such as LVM2 and iSCSI. This project is a drop-in replacement for UDisks2, either from D-Bus or binary point of view. The main motivation of this change is to provide the unified D-Bus API for all the clients who are willing to manage LVM2, iSCSI, Btrfs, BCache, LSM and ZRam.

Owner

Current status

  • Targeted release: Fedora 25
  • Last updated: 2016-04-13
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

Aim of Storaged is to provide unified higher level management interface for various clients who are willing to query and manage storage bits of the system. We plan to replace UDisks2 by Storaged, since the Storaged itself is the fork of UDisks2 and these 2 projects in its core haven't diverged so much (Storaged got some improvements which popped up while using it).

Benefit to Fedora

The drop-in replacement is beneficial for Fedora because currently, there are 2 similar projects (one derived from the other). Since, Storaged can export the same API as UDisks2 does, but with several enterprise extensions, it is natural to replace one daemon with the extended one:

  • we do not need to have very similar services running at the same time;
  • one provides only a subset of operations when compared to the other service

Scope

  • Proposal owners:
  • Other developers: N/A (not a System Wide Change)
  • Release engineering: N/A (not a System Wide Change)
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

Since, Storaged should replace UDisks2 in 1:1 manner, there is no additional change required.

How To Test

Install Storaged which replaces UDisks2 and verify that:

  • GNOME Disks works properly
  • GVFS works as expected (notifications of new devices, mouting, ...)

User Experience

User will not notice any changes comming from the switch UDisks2 to Storaged.

Dependencies

The main consumer of Storaged is Cockpit and Blivet. We have an agreement with the developers of the respective projects that we will sync when the Storaged replaces UDisks2.

Contingency Plan

  • Contingency mechanism:
    • If we can not make the switch in time (merge in Storaged upstream, Cockpit and Blivet D-Bus API switch), UDisks2 will not be replaced.

Documentation

Documentation for Storaged can be found at Storaged Documentation

Release Notes