Bug 476992 - Custom F10 spins leads to revisor crash due to F10-buildinstall
Summary: Custom F10 spins leads to revisor crash due to F10-buildinstall
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Fedora
Classification: Fedora
Component: revisor
Version: 10
Hardware: i386
OS: Linux
low
high
Target Milestone: ---
Assignee: Jeroen van Meeuwen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-12-18 15:09 UTC by Jean Visagie
Modified: 2009-04-15 07:34 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-04-15 07:34:08 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
revisor configs and rpms used (37.04 KB, text/plain)
2008-12-18 15:09 UTC, Jean Visagie
no flags Details
Modified buildinstall (4.59 KB, text/plain)
2009-04-06 11:05 UTC, Jean Visagie
no flags Details

Description Jean Visagie 2008-12-18 15:09:11 UTC
Created attachment 327330 [details]
revisor configs and rpms used

Description of problem:
I am trying to make a custom Fedora 10 spin with a minimalist set of packages. The iso creation continues until the F10-buildinstall encounters a problem.

Output:
SELinux on this host is disabled. Composed media will not have SELinux, and as a result the system you install from the composed media will not have SELinux either.
Reading configuration file /etc/revisor/revisor.conf                                                                                                                
The directories Revisor uses in /var/tmp/ already exist. This could possibly hold data from a previous run. Please remove or move them to a safe location, then confirm to continue. If you do not move or remove the files, Revisor will simply delete them.                                                                                                           
The directories Revisor uses in /srv/revisor/ViPr-4_0_0 already exist. This could possibly hold data from a previous run. Please remove or move them to a safe location, then confirm to continue. If you do not move or remove the files, Revisor will simply delete them.                                                                                             
You have not selected any of the basic repositories. Please make sure that one of 'fedora', 'core', 'base' or 'development', or an equivalent repository has been configured        
Could not retrieve mirrorlist http://192.168.1.96/mirrorlist?repo=rawhide&arch=i386 error was                                                                                       
[Errno 14] HTTP Error 404: Not Found                                                                                                                                                
Got an error from /usr/lib/revisor/scripts/F10-buildinstall (return code 1)                                                                                                         
Traceback (most recent call last):                                                                                                                                                  
  File "/usr/lib/python2.5/site-packages/revisor/modgui/ready_screen.py", line 145, in button_forward_clicked                                                                       
    self.gui.next()                                                                                                                                                                 
  File "/usr/lib/python2.5/site-packages/revisor/modgui/__init__.py", line 448, in next                                                                                             
    self.default[self.current]['disp'](self)                                                                                                                                        
  File "/usr/lib/python2.5/site-packages/revisor/modgui/__init__.py", line 315, in displayBuildMedia                                                                                
    self.BuildMedia.start()                                                                                                                                                         
  File "/usr/lib/python2.5/site-packages/revisor/modgui/build_media.py", line 65, in start                                                                                          
    self.base.lift_off()                                                                                                                                                            
  File "/usr/lib/python2.5/site-packages/revisor/base.py", line 1172, in lift_off                                                                                                   
    self.buildInstallationMedia()                                                                                                                                                   
  File "/usr/lib/python2.5/site-packages/revisor/base.py", line 1838, in buildInstallationMedia                                                                                     
    mypungi.ALL_workaround()                                                                                                                                                        
  File "/usr/lib/python2.5/site-packages/revisor/pungi.py", line 653, in ALL_workaround                                                                                             
    content = open(discinfofile, 'r').readlines()                                                                                                                                   
IOError: [Errno 2] No such file or directory: '/var/tmp/revisor-pungi/4/ViPr-4_0_0/i386/os/.discinfo'


Version-Release number of selected component (if applicable):
revisor-2.1.3-1.fc10.noarch
revisor-cli-2.1.3-1.fc10.noarch
revisor-comps-2.1.3-1.fc10.noarch
revisor-gui-2.1.3-1.fc10.noarch

How reproducible:
Happens every time.

Steps to Reproduce:
1. Copy wanted rpm's into a folder /var/www/html/yum/f10/i386/base/
2. Create a repository with command: createrepo -g /mnt/repodata/Fedora-10-comps.xml /var/www/html/yum/f10//i386/base/ (Fedora 10 DVD mounted to /mnt/)
3. Start apache daemon
4. Modify /etc/revisor/revisor.conf (Attached)
5. Create revisor config in /etc/revisor/conf.d (Attached)
6. Start revisor
7. Select custom spin config
8. Proceed through revisor without specifying a kickstart file
9. At package selection -> got list and select all and continue
10. Revisor pops up error 'Got an error from /usr/lib/revisor/scripts/F10-buildinstall (return code 1)'
  
Actual results:
Got an error from /usr/lib/revisor/scripts/F10-buildinstall (return code 1)

Expected results:
A working iso


Additional info:
Host machine is Fedora 10. First got an error that stated I need to have gail included. Did a yum update on revisor and this went away. Also attached is a list of the rpm's I used. (All were copied from the Fedora 10 DVD)

Comment 1 Fedora Admin XMLRPC Client 2009-02-01 00:05:56 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 2 Jeroen van Meeuwen 2009-02-01 01:34:42 UTC
Please run:

yum -d9 -c /path/to/modified/conf list

Where /path/to/modified/conf is the path to the modified YUM configuration file probably somewhere in /etc/revisor/conf.d/

Comment 3 Jean Visagie 2009-04-06 11:05:49 UTC
Created attachment 338314 [details]
Modified buildinstall

script failed because of missing buildinstall function import. Also removed repo command line option because it is not used in rest of script, or stuff broke (can't remember which)

Comment 4 Jean Visagie 2009-04-06 11:06:46 UTC
I actually made custom distro using just buildinstall, but I had to modify the buildinstall in the 'anaconda-11.4.1.62-1.i386' package. Please find it attached.

Comment 5 Jeroen van Meeuwen 2009-04-09 09:45:44 UTC
Sorry, this new buildinstall doesn't work for Revisor.

If you're looking to change something, it'll probably be in this section:

==
UPD_INSTROOT=./upd-instroot
MK_IMAGES=./mk-images
MK_TREEINFO=./maketreeinfo.py
MK_STAMP=./makestamp.py
BUILDINSTALL=./buildinstall
BUILDINSTALL_FUNCTIONS=./buildinstall.functions

for f in $UPD_INSTROOT $MK_IMAGES $MK_STAMP $MK_TREEINFO $BUILDINSTALL $BUILDINSTALL_FUNCTIONS; do
    if [ -n "$UPDATES" -a -f $UPDATES/usr/lib/anaconda-runtime/$f ]; then
	cp -a $UPDATES/usr/lib/anaconda-runtime/$f* $BUILDINSTDIR/
    elif [ ! -f $f ]; then
	cp -a $BUILDINSTDIR/usr/lib/anaconda-runtime/$f* $BUILDINSTDIR/
    else
	cp -a $f* $BUILDINSTDIR/
    fi
done

UPD_INSTROOT=$BUILDINSTDIR/upd-instroot
MK_IMAGES=$BUILDINSTDIR/mk-images
MK_TREEINFO=$BUILDINSTDIR/maketreeinfo.py
MK_STAMP=$BUILDINSTDIR/makestamp.py
BUILDINSTALL=$BUILDINSTDIR/buildinstall
==

Also, please attach the changes you made using diff or something, not the entire file.

Comment 6 Jean Visagie 2009-04-09 10:24:04 UTC
Here are the diffs

76c76
<         if [ -z "$REPO" ]; then
---
>         #if [ -z "$REPO" ]; then
78,80c78,80
<         else
<             EXTRA_REPOS="$EXTRA_REPOS $1"
<         fi
---
>         #else
>         #    EXTRA_REPOS="$EXTRA_REPOS $1"
>         #fi
179a180
> BUILDINSTALL_FUNCTIONS=./buildinstall.functions
181c182
< for f in $UPD_INSTROOT $MK_IMAGES $MK_STAMP $MK_TREEINFO $BUILDINSTALL; do
---
> for f in $UPD_INSTROOT $MK_IMAGES $MK_STAMP $MK_TREEINFO $BUILDINSTALL $BUILDINSTALL_FUNCTIONS; do

Is buildinstall used at all for anaconda image creation? Or are the anaconda images created by hand?

Comment 7 Jeroen van Meeuwen 2009-04-12 10:34:02 UTC
buildinstall and buildinstall.functions are essential to the anaconda image creation process.


Note You need to log in before you can comment on or make changes to this bug.