source: trunk/tools/mkqemu @ 537

Last change on this file since 537 was 537, checked in by bcornec, 13 years ago

merge -r 526:534 $SVN_M/branches/stable

  • Property svn:executable set to *
File size: 2.0 KB
Line 
1#!/bin/bash
2#
3# $Id$
4#
5# Script allowing mondo packages production on various distributions with qemu
6#
7
8if [ _"$1" == _"" ]; then
9    echo "Syntax: mkqemu [mondo version] ([vm].. )"
10    exit -1
11fi
12
13if [ _"$2" == _"" ]; then
14    export SVN_VM="mdk101 mdk102 mdv2006 rh73 rh9 fc4 fc5 rhel3 rhel4 suse10 sles9 debian31 slackware102 gentoo"
15else
16    export SVN_VM="$2"
17fi
18
19cat > /tmp/mkmondo << EOF
20#!/bin/bash
21
22export SVN_HOME=\$HOME/mondo/svn/branches
23export SVN_SSH="ssh -l bcornec"
24export SVN_EDITOR=vim
25export LANG="C"
26export LANGUAGE="C"
27export LC_ALL="C"
28
29if [ -d \$SVN_HOME/$1 ]; then
30    cd \$SVN_HOME/$1
31    svn up
32    if [ \$? != 0 ]; then
33            echo "Verify SVN installation"
34            exit -1
35    fi
36else
37    mkdir -p \$SVN_HOME
38    cd \$SVN_HOME
39    svn co svn+ssh://bcornec@svn.berlios.de/svnroot/repos/mondorescue/branches/$1 $1
40    if [ \$? != 0 ]; then
41            echo "Verify SVN installation"
42            exit -1
43    fi
44fi
45echo \$SVN_VM | grep -q "debian"
46if [ \$? -eq 0 ]; then
47    \$SVN_HOME/$1/tools/mkdeb < /dev/null
48else
49    echo \$SVN_VM | grep -q "slack"
50    if [ \$? -eq 0 ]; then
51        \$SVN_HOME/$1/tools/mkslack < /dev/null
52    else
53        echo \$SVN_VM | grep -q "gentoo"
54        if [ \$? -eq 0 ]; then
55            \$SVN_HOME/$1/tools/mkemerge < /dev/null
56        else
57            \$SVN_HOME/$1/tools/mkrpm < /dev/null
58        fi
59    fi
60fi
61\$SVN_HOME/$1/tools/mkdeliv
62EOF
63
64ipvm=10.0.2.15
65
66for m in $SVN_VM; do
67    sp=22`host $m.mondo.musique-ancienne.org | cut -d. -f7`
68    vmp=0
69    if [ ! -f /users/vmplayer/$m.qemu ]; then
70            echo "VM unaccessible. Verify NFS mount"
71            exit -1
72    fi
73    ps auxww | grep qemu | grep -v grep | grep -q /users/vmplayer/$m.qemu
74    if [ $? -ne 0 ]; then
75        # Virtual machine alreday started
76        vmp=1
77        qemu -m 256 $QEMUOPT -redir tcp:${sp}:${ipvm}:22 /users/vmplayer/$m.qemu &
78        sleep 300
79    fi
80    scp -P $sp /tmp/mkmondo bruno@localhost:
81    ssh -p $sp bruno@localhost "chmod 755 ./mkmondo ; ./mkmondo" | tee /tmp/mkvm.log
82    if [ $vmp -eq 1 ]; then
83        ssh -p $sp root@localhost "halt -p"
84        sleep 300
85        proces=`ps auxww | grep qemu | grep -v grep | grep -q /users/vmplayer/$m.qemu | awk '{print $2}'`
86        if [ "$proces" != "" ]; then
87            kill $proces
88        fi
89    fi
90done
Note: See TracBrowser for help on using the repository browser.