QA/Test Days/Live Image

From FedoraProject

< QA | Test Days(Difference between revisions)
Jump to: navigation, search
m (Rawhide -> Branched)
(warn that livecd-creator requires to run on the same release you want to build for)
Line 3: Line 3:
 
= Creating a Test Day Live Image =
 
= Creating a Test Day Live Image =
  
The following steps outline how to create a Fedora live image based on current [[Releases/Branched|Fedora Branched]] packages for use during [[QA/Test_Days|Test Days]].
+
The following steps outline how to create a Fedora live image based on current [[Releases/Branched|Fedora Branched]] packages for use during [[QA/Test_Days|Test Days]]. This is mainly intended for Fedora QA team and teams that host a Test Day. Of course these teams can also use a [http://alt.fedoraproject.org/pub/alt/nightly-composes/ nightly compose] image, but special Test Day images bring additional benefits - easy access to test day channels (web, chat), smaller size and customizability.
  
{{admon/note|This guide is intended mainly for Fedora QA team|Ordinary users who want to participate on a test day don't have to follow this guide, the pre-built images will be published and available for them to download on a [[QA/Test_Days|Test Day pages]].}}
+
The following procedure should always be performed on the same Fedora release that you want to build the Live image for. For example if you want to build a Live image for {{FedoraVersion|long|next}}, you should build it on {{FedoraVersion|long|next}}. You can try to build it on {{FedoraVersion|long|current}}, but it might not work.
  
 +
How to build a Test Day Live image:
 
<ol>
 
<ol>
 
<li>Install required packages:
 
<li>Install required packages:
Line 14: Line 15:
 
</li>
 
</li>
  
<li>Download the kickstart script used by {{FedoraVersion|long|next}} by using the <code>F-{{FedoraVersion|number|next}}</code> git branch:
+
<li>Download the kickstart script used by {{FedoraVersion|long|next}} by using the <code>f{{FedoraVersion|number|next}}</code> git branch:
 
<!-- don't ask why this works, just read http://www.gossamer-threads.com/lists/wiki/mediawiki/118688#118688 -->
 
<!-- don't ask why this works, just read http://www.gossamer-threads.com/lists/wiki/mediawiki/118688#118688 -->
 
<pre&lt;noinclude&gt;&lt;/noinclude&gt;>git clone 'git://git.fedorahosted.org/spin-kickstarts.git' -b f{{FedoraVersion|number|next}}</pre&lt;noinclude&gt;&lt;/noinclude&gt;>
 
<pre&lt;noinclude&gt;&lt;/noinclude&gt;>git clone 'git://git.fedorahosted.org/spin-kickstarts.git' -b f{{FedoraVersion|number|next}}</pre&lt;noinclude&gt;&lt;/noinclude&gt;>

Revision as of 13:04, 18 March 2013

QA.png


Contents

Creating a Test Day Live Image

The following steps outline how to create a Fedora live image based on current Fedora Branched packages for use during Test Days. This is mainly intended for Fedora QA team and teams that host a Test Day. Of course these teams can also use a nightly compose image, but special Test Day images bring additional benefits - easy access to test day channels (web, chat), smaller size and customizability.

The following procedure should always be performed on the same Fedora release that you want to build the Live image for. For example if you want to build a Live image for Fedora 22, you should build it on Fedora 22. You can try to build it on Fedora 21, but it might not work.

How to build a Test Day Live image:

  1. Install required packages:
    yum install livecd-tools git
    
  2. Download the kickstart script used by Fedora 22 by using the f22 git branch:
    git clone 'git://git.fedorahosted.org/spin-kickstarts.git' -b f22

    or if you have done it in the past, just update it:

    cd spin-kickstarts; git checkout f22; git pull; cd ..
  3. OPTIONAL: Create your custom kickstart file my-test-day.ks, if you need some changes from the default configuration:
    %include spin-kickstarts/custom/qa-test-day.ks
    
    #redefine repos as you need (e.g. point it to local mirror with --baseurl, etc)
    #repo --name=fedora --baseurl=file:/mnt/globalsync/fedora/linux/development/22/$basearch/os/
    #repo --name=updates --baseurl=file:/mnt/globalsync/fedora/linux/updates/22/$basearch/
    
    %packages
    #provide list of packages to be added or removed - dependencies are handled
    #packageYouWant
    #wildcardedPackagesYouWant*
    #@GroupYouWant
    #-packageYouDontWant
    %end
    
    %post
    #put any shell commands here
    %end
    
  4. Create the live image:
    livecd-creator -c spin-kickstarts/custom/qa-test-day.ks --releasever 22 --cache /var/cache/live -f testday-YYYY-MM-DD
    

    (of course replace spin-kickstarts/custom/qa-test-day.ks with my-test-day.ks if you have created your custom kickstart file)

    Idea.png
    Different architecture
    You can use setarch command to create a x86 Live CD/DVD on a x86_64 system. Example: setarch i686 livecd-creator <...>. (Or you can hardcode the architecture inside the kickstart by replacing $basearch variable.)

Solving problems

Anaconda dependencies broken

Sometimes the image can't be built because of broken package dependencies. You may solve the problem by removing anaconda package. Anaconda requires a lot of dependencies and it may very often be the culprit. To remove anaconda you just put -anaconda line in the %packages section.

SELinux complaints

For building Test Days LiveCD you must have SELinux installed and enabled. Ideally it should be in the enforcing mode and everything should run fine. In case you have problems with that, you may switch the mode temporarily into permissive mode with this command run as root:

setenforce 0

If that doesn't help, you may also modify your my-test-day.ks kickstart file and after %include line add a directive

selinux --permissive

(Note: Due to RHBZ #547152 you may also need to add /usr/sbin/lokkit inside %packages.)

Now the build should run fine.

Further references