Anaconda/Features/ReworkLiveCD

From FedoraProject

< Anaconda | Features(Difference between revisions)
Jump to: navigation, search
(Current status)
(23 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Rework current livecd support =
+
= Rework current livecd support (livemedia-creator) =
  
 
== Summary ==
 
== Summary ==
  
Rethink livecd installation and figure a way to sanely support. RHEL use
+
Rethink livecd installation and figure a way to sanely support.
case is virt (RHEV). Fedora use case are the live CDs.  
+
RHEL use case is virt (RHEV). Fedora use case are the live CDs.
 +
 
 +
The creation of live cd/dvd media should use Anaconda instead of python-imgcreate. Currently we have to maintain logic in both places and the final install is not the same since two different methods are used to populate the target image. We then promote installing from livecd's to the user's system, resulting in a system that really wasn't built by Anaconda.
 +
 
 +
lorax is what builds the install trees and creates the boot media. It is the logical place to maintain any live image creation code. The treebuilder branch goes a long ways towards making this possible, but it needs to be enhanced to use Anaconda to install to the target image file instead of the custom templates that it uses for boot media.
  
 
== Owner ==
 
== Owner ==
Line 10: Line 14:
  
 
== Current status ==
 
== Current status ==
* Targeted release: Fedora 15
+
* Targeted release: Fedora 17
* Last updated: 2010-12-10
+
* Last updated: 2012-04-04
* Percentage of completion: 0%
+
* Percentage of completion: 100%
  
 
== Detailed Description ==
 
== Detailed Description ==
  
* Switch livecd-creator to use Anaconda's new image creation capability - [[Anaconda/Features/ImageInstallation]]
+
The only reliable way to create a livecd that works exactly like a DVD install is to use anaconda to handle the livecd creation instead of livecd-creator. The way to do this is to use the netboot.iso or dvd iso created by pungi+lorax. Everything else is a pale imitation. The plan, as it currently stands, is to use virt-install to process the kickstart into an image. The files from that will then be wrapped up inside a squashfs filesystem and wrapped in a bootable iso as we currently do for Live CD creation.
* Make sure livecd installs and iso installs are working from the same starting point (eg. mounts, active devices, etc.)
+
 
 +
Parts to build
 +
* kickstart to image processing using virt-install (WORKS)
 +
* Enhancements to anaconda to allow kickstarts to modify anaconda behavior via a plugin API (NOT NEEDED)
 +
* creation of squashfs filesystem (WORKS)
 +
* move installed files to squashfs filesystem (WORKS)
 +
* create iso to boot the squashfs filesystem (WORKS)
 +
* Integrate these into lorax and a new application owned by the lorax package (WORKS)
 +
** livemedia-creator is the name of the new tool, included in lorax-17.1-1 release
 +
* Naive build host calling anaconda directly (WORKS)
  
 
== Benefit to Fedora ==
 
== Benefit to Fedora ==
  
 
* Less bugs, more features
 
* Less bugs, more features
 +
* Logic for releases only needs to be maintained in lorax, which makes boot media, and in anaconda the installer as opposed to maintaining specific information in python-imgcreate and livecd-creator.
  
 
== Scope ==
 
== Scope ==
 +
 +
* Anaconda
 +
* Lorax
  
 
== Test Plan ==
 
== Test Plan ==
 +
 +
Modify existing spin kickstarts (changes needed are documented in the [http://git.fedorahosted.org/git/?p=lorax.git;a=blob;f=README.livemedia-creator README.livemedia-creator] included in lorax) and use the standard LiveCD testing criteria. And example Fedora Desktop kickstart [http://git.fedorahosted.org/git/?p=lorax.git;a=blob;f=docs/fedora-livemedia.ks is here].
  
 
== User Experience ==
 
== User Experience ==
 +
 +
Users will experience less bugs and will have a system that is identical to one installed using the DVD.
  
 
== Dependencies ==
 
== Dependencies ==
 +
* Anaconda
 +
* Lorax
 +
* virt-install
  
 
== Contingency Plan ==
 
== Contingency Plan ==
 +
 +
* Continue to use python-imgcreate
  
 
== Documentation ==
 
== Documentation ==
 +
 +
Documentation is included in [http://git.fedorahosted.org/git/?p=lorax.git;a=blob;f=README.livemedia-creator README.livemedia-creator] in Lorax.
  
 
== Release Notes ==
 
== Release Notes ==
  
[[Category:Anaconda]]
+
* livemedia-creator is now included in Lorax as of release 17.1 and can be used to create live iso's using modified spin kickstarts.
 +
* Fedora 17 LiveCD's will continue to use livecd-creator.
 +
* Fedora 18 will use livemedia-creator to create LiveCDs. This will require changing how koji is used for the LiveCD builds.
 +
 
 +
[[Category:Anaconda]] [[Category:FeatureAcceptedF17]]

Revision as of 00:12, 5 April 2012

Contents

Rework current livecd support (livemedia-creator)

Summary

Rethink livecd installation and figure a way to sanely support. RHEL use case is virt (RHEV). Fedora use case are the live CDs.

The creation of live cd/dvd media should use Anaconda instead of python-imgcreate. Currently we have to maintain logic in both places and the final install is not the same since two different methods are used to populate the target image. We then promote installing from livecd's to the user's system, resulting in a system that really wasn't built by Anaconda.

lorax is what builds the install trees and creates the boot media. It is the logical place to maintain any live image creation code. The treebuilder branch goes a long ways towards making this possible, but it needs to be enhanced to use Anaconda to install to the target image file instead of the custom templates that it uses for boot media.

Owner

Current status

  • Targeted release: Fedora 17
  • Last updated: 2012-04-04
  • Percentage of completion: 100%

Detailed Description

The only reliable way to create a livecd that works exactly like a DVD install is to use anaconda to handle the livecd creation instead of livecd-creator. The way to do this is to use the netboot.iso or dvd iso created by pungi+lorax. Everything else is a pale imitation. The plan, as it currently stands, is to use virt-install to process the kickstart into an image. The files from that will then be wrapped up inside a squashfs filesystem and wrapped in a bootable iso as we currently do for Live CD creation.

Parts to build

  • kickstart to image processing using virt-install (WORKS)
  • Enhancements to anaconda to allow kickstarts to modify anaconda behavior via a plugin API (NOT NEEDED)
  • creation of squashfs filesystem (WORKS)
  • move installed files to squashfs filesystem (WORKS)
  • create iso to boot the squashfs filesystem (WORKS)
  • Integrate these into lorax and a new application owned by the lorax package (WORKS)
    • livemedia-creator is the name of the new tool, included in lorax-17.1-1 release
  • Naive build host calling anaconda directly (WORKS)

Benefit to Fedora

  • Less bugs, more features
  • Logic for releases only needs to be maintained in lorax, which makes boot media, and in anaconda the installer as opposed to maintaining specific information in python-imgcreate and livecd-creator.

Scope

  • Anaconda
  • Lorax

Test Plan

Modify existing spin kickstarts (changes needed are documented in the README.livemedia-creator included in lorax) and use the standard LiveCD testing criteria. And example Fedora Desktop kickstart is here.

User Experience

Users will experience less bugs and will have a system that is identical to one installed using the DVD.

Dependencies

  • Anaconda
  • Lorax
  • virt-install

Contingency Plan

  • Continue to use python-imgcreate

Documentation

Documentation is included in README.livemedia-creator in Lorax.

Release Notes

  • livemedia-creator is now included in Lorax as of release 17.1 and can be used to create live iso's using modified spin kickstarts.
  • Fedora 17 LiveCD's will continue to use livecd-creator.
  • Fedora 18 will use livemedia-creator to create LiveCDs. This will require changing how koji is used for the LiveCD builds.