From Fedora Project Wiki

< QA‎ | Test Days

(SELinux complaints)
Line 5: Line 5:
The following steps outline how to create a Fedora live image based on current Rawhide packages for use during Test Days.
The following steps outline how to create a Fedora live image based on current Rawhide packages for use during Test Days.


{{admon/note|This guide is intended mainly for Fedora QA team|Ordinary users who want to participate on a test day doesn'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]].}}
{{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]].}}


1. Install required packages:
1. Install required packages:
Line 62: Line 62:
</pre>
</pre>


{{admon/tip|In case rawhide repository is broken|If current rawhide repository is broken and the livecd can't be built, and you have access to some mirror with older rawhide snapshot, you may edit ''fedora-livecd-testday.ks'' and redefine the rawhide repository after the <code>%include</code> line, for example looking like this:<br/>
= Solving problems =
 
== Rawhide repository broken ==
If current rawhide repository is broken and the livecd can't be built, and you have access to some mirror with older rawhide snapshot, you may edit ''fedora-livecd-testday.ks'' and redefine the rawhide repository after the <code>%include</code> line, for example looking like this:<br/>
<pre>repo --name=rawhide --baseurl=protocol:/path-to-older-rawhide-repository/$basearch/os/</pre>
<pre>repo --name=rawhide --baseurl=protocol:/path-to-older-rawhide-repository/$basearch/os/</pre>
In the worst case you can base the whole livecd on Fedora 11 packages with this definition:
In the worst case you can base the whole livecd on Fedora 11 packages with this definition:
Line 71: Line 74:
</pre>
</pre>
Don't forget to comment out these lines when rawhide repository gets fixed.
Don't forget to comment out these lines when rawhide repository gets fixed.
}}
 
== 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:
<pre>
setenforce 0
</pre>
 
Also modify the the ''fedora-livecd-testday.ks'' file and after <code>%include</code> line add a directive
<pre>
selinux --permissive
</pre>
 
Now the build should run fine.


= Using the Live Image =
= Using the Live Image =

Revision as of 12:06, 5 August 2009

Creating a Test Day Live Image

The following steps outline how to create a Fedora live image based on current Rawhide packages for use during Test Days.

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 Test Day pages.

1. Install required packages:

yum install spin-kickstarts livecd-tools

2. Save most recent fedora-live-base.ks and fedora-livecd-desktop.ks kickstart templates to a custom directory:

wget 'http://git.fedorahosted.org/git/spin-kickstarts.git?p=spin-kickstarts.git;a=blob_plain;f=fedora-live-base.ks;hb=HEAD' -O fedora-live-base.ks
wget 'http://git.fedorahosted.org/git/spin-kickstarts.git?p=spin-kickstarts.git;a=blob_plain;f=fedora-livecd-desktop.ks;hb=HEAD' -O fedora-livecd-desktop.ks

3. Create a new testday kickstart template fedora-livecd-testday.ks in the same directory, with this content:

%include fedora-livecd-desktop.ks

repo --name jlaska --baseurl http://jlaska.fedorapeople.org/repos/testday
repo --name awilliam --baseurl http://adamwill.fedorapeople.org/nouveau

%packages
gdb
strace
ltrace
rendercheck
libdrm
-olpc-logos

# rebrand test spins
fedora-logos
-generic-logos
%end 

%post
# Set Test_Day:Current as default browser homepage
cat << EOF > /usr/lib*/firefox*/browserconfig.properties
browser.startup.homepage=https://fedoraproject.org/wiki/Test_Day:Current
EOF

# Create a .desktop link for Test Day
mkdir -p /etc/skel/Desktop
cat << EOF > /etc/skel/Desktop/testday.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Participate in a Test Day
Type=Link
URL=https://fedoraproject.org/wiki/Test_Day:Current
Icon=gnome-fs-bookmark
EOF
%end

3. Create the live image:

livecd-creator -c fedora-livecd-testday.ks --cache /var/cache/live -f "testday-`date +%Y%m%d`"

Solving problems

Rawhide repository broken

If current rawhide repository is broken and the livecd can't be built, and you have access to some mirror with older rawhide snapshot, you may edit fedora-livecd-testday.ks and redefine the rawhide repository after the %include line, for example looking like this:

repo --name=rawhide --baseurl=protocol:/path-to-older-rawhide-repository/$basearch/os/

In the worst case you can base the whole livecd on Fedora 11 packages with this definition:

# not really rawhide, overriden with F11 'released' repo
repo --name=rawhide --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-11&arch=$basearch
repo --name=updates --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f11&arch=$basearch

Don't forget to comment out these lines when rawhide repository gets fixed.

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

Also modify the the fedora-livecd-testday.ks file and after %include line add a directive

selinux --permissive

Now the build should run fine.

Using the Live Image

Ideas For Improvement

  1. Create a .desktop file with a Test Day URL on the Desktop
  2. Make browser default homepage http://fedoraproject.org/wiki/Test_Day:Current (suggested by User:sgallagh)
  3. Setup a test day .repo for the running live image (suggested by User:sgallagh)