QA/Test Days/Live Image

From FedoraProject

< QA | Test Days
Revision as of 12:12, 19 August 2009 by Kparal (Talk | contribs)

Jump to: navigation, search
QA.png


Contents

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.

Note.png
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

%packages
gdb
strace
ltrace
libdrm
pidgin
mc
vim
nano
wget
xorg-x11-apps
gtk-recordmydesktop
gconf-editor
gimp
# save some space
-empathy
-@games
-brasero*
-sound-juicer
-gthumb
-gnome-backgrounds
-desktop-backgrounds*
-evolution
# brand as fedora test spin
fedora-logos
-generic-logos
%end

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

# Create a .desktop link for Test Day wiki
mkdir -p /etc/skel/Desktop
cat << EOF > /etc/skel/Desktop/testday-wiki.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

# Create a .desktop link for Test Day IRC chat
cat << EOF > /etc/skel/Desktop/testday-irc.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Connect to a Test Day chat
Type=Link
URL=http://webchat.freenode.net/?channels=fedora-test-day
Icon=gnome-fs-bookmark
EOF

# Add gnome-terminal shortcut to desktop
cp /usr/share/applications/gnome-terminal.desktop /etc/skel/Desktop
%end

3. Create the live image:

livecd-creator -c fedora-livecd-testday.ks --cache /var/cache/live -f "testday-`date +%Y%m%d`"
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 <...>.

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

If that doesn't help, you may also modify the fedora-livecd-testday.ks file and after %include line add a directive

selinux --permissive

Now the build should run fine.

Further references

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)