| 1 | #!/bin/bash
|
|---|
| 2 | #
|
|---|
| 3 | # Project Builder test suite
|
|---|
| 4 | #
|
|---|
| 5 | # $Id$
|
|---|
| 6 | #
|
|---|
| 7 | # Copyright B. Cornec 2007-2012
|
|---|
| 8 | # Provided under the GPL v2
|
|---|
| 9 |
|
|---|
| 10 | # First create a dummy account for testing
|
|---|
| 11 | # In order for this script to run well, you should have sudo access
|
|---|
| 12 |
|
|---|
| 13 | # You may have multiple distros here
|
|---|
| 14 | TESTVEDIST="debian-6-x86_64 ubuntu-12.04-i386 fedora-16-x86_64 opensuse-12.1-x86_64 mageia-2-i386 mandriva-2010.0-i386"
|
|---|
| 15 | # Only one VM is tested for now.
|
|---|
| 16 | TESTVMDIST="fedora-16-i386"
|
|---|
| 17 | TESTVMISO="/users/bruno/iso/Fedora-16-i386-DVD.iso"
|
|---|
| 18 | PBUSER=pbtest
|
|---|
| 19 | PBTEST="/home/$PBUSER"
|
|---|
| 20 | export PBPROJ=afio
|
|---|
| 21 |
|
|---|
| 22 | # Sub function to handle execution as pbtest
|
|---|
| 23 | # doesn't change to the home dir of the user as su - can't be used to get env var correct
|
|---|
| 24 | sudopbtest() {
|
|---|
| 25 |
|
|---|
| 26 | cmd=$1
|
|---|
| 27 | msg=$2
|
|---|
| 28 |
|
|---|
| 29 | if [ _"$cmd" == _"/tmp/pbtestcmd" ]; then
|
|---|
| 30 | echo "INFO (as $PBUSER): Now running `head -1 $cmd` [$msg]"
|
|---|
| 31 | else
|
|---|
| 32 | echo "INFO (as $PBUSER): Now running $cmd [$msg]"
|
|---|
| 33 | fi
|
|---|
| 34 | sudo -n -E su - $PBUSER -c "$cmd"
|
|---|
| 35 | ret=$?
|
|---|
| 36 | if [ $ret -ne 0 ] && [ _"$msg" == _"" ]; then
|
|---|
| 37 | echo "================================"
|
|---|
| 38 | echo "ERROR: Command $cmd failed: $ret"
|
|---|
| 39 | echo "================================"
|
|---|
| 40 | fi
|
|---|
| 41 | echo " "
|
|---|
| 42 | }
|
|---|
| 43 |
|
|---|
| 44 | sudocmd() {
|
|---|
| 45 | cmd=$1
|
|---|
| 46 |
|
|---|
| 47 | echo "INFO (as root): Now running $cmd"
|
|---|
| 48 | sudo -n $cmd
|
|---|
| 49 | ret=$?
|
|---|
| 50 | if [ $ret -ne 0 ]; then
|
|---|
| 51 | echo "================================"
|
|---|
| 52 | echo "ERROR: Command $cmd failed: $ret"
|
|---|
| 53 | echo "================================"
|
|---|
| 54 | fi
|
|---|
| 55 | echo " "
|
|---|
| 56 | }
|
|---|
| 57 |
|
|---|
| 58 |
|
|---|
| 59 | sudocmd "rm -rf $PBTEST/* $PBTEST/.??*"
|
|---|
| 60 | sudocmd "killall -u $PBUSER"
|
|---|
| 61 | sudocmd "userdel $PBUSER"
|
|---|
| 62 | #sudocmd "groupdel $PBUSER" 1
|
|---|
| 63 | sudocmd "useradd $PBUSER"
|
|---|
| 64 | sudocmd "grep -q $PBUSER /etc/sudoers"
|
|---|
| 65 | if [ $? -ne 0 ]; then
|
|---|
| 66 | cat > /tmp/sudoers << EOF
|
|---|
| 67 | Defaults env_keep += "PBPROJ"
|
|---|
| 68 | # This is for the $PBUSER account in the VE only
|
|---|
| 69 | $PBUSER ALL=NOPASSWD:/usr/sbin/chroot
|
|---|
| 70 | $PBUSER ALL=NOPASSWD:/usr/bin/rpmbootstrap
|
|---|
| 71 | $PBUSER ALL=NOPASSWD:/usr/sbin/debootstrap
|
|---|
| 72 | $PBUSER ALL=NOPASSWD:/bin/chmod
|
|---|
| 73 | $PBUSER ALL=NOPASSWD:/bin/cp
|
|---|
| 74 | $PBUSER ALL=NOPASSWD:/bin/rm
|
|---|
| 75 | $PBUSER ALL=NOPASSWD:/bin/tar
|
|---|
| 76 | $PBUSER ALL=NOPASSWD:/bin/mkdir
|
|---|
| 77 | $PBUSER ALL=NOPASSWD:/bin/chown
|
|---|
| 78 | EOF
|
|---|
| 79 | sudocmd "cat /etc/sudoers /tmp/sudoers > /tmp/sudoers2"
|
|---|
| 80 | sudocmd "chmod 440 /tmp/sudoers2"
|
|---|
| 81 | sudocmd "chown root:root /tmp/sudoers2"
|
|---|
| 82 | sudocmd "mv /tmp/sudoers2 /etc/sudoers"
|
|---|
| 83 | rm -f /tmp/sudoers /tmp/sudoers2
|
|---|
| 84 | fi
|
|---|
| 85 | # Force $PBUSER (for now pbuser hardcoded!) account passwd is $PBUSER
|
|---|
| 86 | sudocmd "perl -pi -e 's|^pbtest:.*|pbtest:$2a$08$2Q.tEty4v/fU0RyPeDelk.AjLAtXUXU3DpSs/l/8YrFmau1LJRCqC:15483:0:99999:7:::|' /etc/shadow"
|
|---|
| 87 | sudopbtest "echo export PBPROJ=$PBPROJ >> $PBTEST/.bash_profile"
|
|---|
| 88 | sudopbtest "env | grep PBPROJ"
|
|---|
| 89 |
|
|---|
| 90 | #Taken from Lab document originally
|
|---|
| 91 | # SVN repo setup
|
|---|
| 92 | sudopbtest "svnadmin create $PBTEST/svn"
|
|---|
| 93 | cat > /tmp/authz << EOF
|
|---|
| 94 | [/]
|
|---|
| 95 | $PBUSER = rw
|
|---|
| 96 | * = r
|
|---|
| 97 | EOF
|
|---|
| 98 | sudocmd "mv /tmp/authz $PBTEST/svn/conf/authz"
|
|---|
| 99 | cat > /tmp/passwd << EOF
|
|---|
| 100 | [users]
|
|---|
| 101 | $PBUSER = $PBUSER
|
|---|
| 102 | EOF
|
|---|
| 103 | sudocmd "mv /tmp/passwd $PBTEST/svn/conf/passwd"
|
|---|
| 104 | cat > /tmp/svnserve.conf << EOF
|
|---|
| 105 | [general]
|
|---|
| 106 | password-db = $PBTEST/svn/conf/passwd
|
|---|
| 107 | authz-db = authz
|
|---|
| 108 | anon-access = read
|
|---|
| 109 | auth-access = write
|
|---|
| 110 | realm = pb
|
|---|
| 111 | EOF
|
|---|
| 112 | sudocmd "mv /tmp/svnserve.conf $PBTEST/svn/conf/svnserve.conf"
|
|---|
| 113 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/svn/conf/authz $PBTEST/svn/conf/passwd $PBTEST/svn/conf/svnserve.conf"
|
|---|
| 114 | sudopbtest "killall svnserve" 1
|
|---|
| 115 | sudopbtest "svnserve -d -r $PBTEST/svn"
|
|---|
| 116 | sudopbtest "mkdir -p $PBTEST/{ftp,ve,vm,.ssh,pb}"
|
|---|
| 117 | sudopbtest "chmod 700 $PBTEST/.ssh"
|
|---|
| 118 |
|
|---|
| 119 | sudopbtest "pb -h"
|
|---|
| 120 | sudopbtest "pbdistrocheck"
|
|---|
| 121 | sudopbtest "pb clean 2>&1 > /dev/null" 1
|
|---|
| 122 |
|
|---|
| 123 | cat > /tmp/.pbrc << EOF
|
|---|
| 124 | # Projects
|
|---|
| 125 | pbconfurl afio = svn://localhost/pb/afio/pbconf
|
|---|
| 126 | pbdefdir default = \$ENV{'HOME'}/pb
|
|---|
| 127 | pbconfurl pb = svn://svn.project-builder.org/pb/pbconf
|
|---|
| 128 | pbconfdir pb = \$ENV{'HOME'}/pb/pbconf
|
|---|
| 129 | pburl pb = svn://svn.project-builder.org/pb
|
|---|
| 130 | pburl mondorescue = svn://svn.mondorescue.org/mondorescue/branches
|
|---|
| 131 | sshhost pb = localhost
|
|---|
| 132 | sshlogin pb = $PBUSER
|
|---|
| 133 | sshdir pb = \$ENV{'HOME'}/ftp
|
|---|
| 134 | #
|
|---|
| 135 | pbpackager default = Big Chief <bigchief@hp.com>
|
|---|
| 136 | vmport pb = 2200
|
|---|
| 137 | pbparallel pb = 6
|
|---|
| 138 | vepath default = $PBTEST/ve
|
|---|
| 139 | vmpath default = $PBTEST/vm
|
|---|
| 140 | EOF
|
|---|
| 141 | sudocmd "mv /tmp/.pbrc $PBTEST/.pbrc"
|
|---|
| 142 |
|
|---|
| 143 | cat > /tmp/.pbrc << EOF
|
|---|
| 144 | vmtype default = kvm
|
|---|
| 145 | vmcmd default = qemu-kvm
|
|---|
| 146 | vmsize fedora = 10G
|
|---|
| 147 | vmmonport default = 4000
|
|---|
| 148 | EOF
|
|---|
| 149 | echo "vmlist default = `echo $TESTVMDIST | sed 's/ /,/g'`" >> /tmp/.pbrc
|
|---|
| 150 | sudocmd "mv /tmp/.pbrc $PBTEST/vm/.pbrc"
|
|---|
| 151 |
|
|---|
| 152 | cat > /tmp/.pbrc << EOF
|
|---|
| 153 | vetype default = chroot
|
|---|
| 154 | verpmtype default = rpmbootstrap
|
|---|
| 155 | vedebtype default = debootstrap
|
|---|
| 156 | verebuild default = false
|
|---|
| 157 | veopt default =
|
|---|
| 158 | vesnap default = false
|
|---|
| 159 | velogin default = $PBUSER
|
|---|
| 160 | EOF
|
|---|
| 161 | echo "velist default = `echo $TESTVEDIST | sed 's/ /,/g'`" >> /tmp/.pbrc
|
|---|
| 162 | sudocmd "mv /tmp/.pbrc $PBTEST/ve/.pbrc"
|
|---|
| 163 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/.pbrc $PBTEST/ve/.pbrc $PBTEST/vm/.pbrc"
|
|---|
| 164 |
|
|---|
| 165 | sudopbtest "ssh-keygen -f $PBTEST/.ssh/id_rsa -t rsa -b 768 -v -N ''"
|
|---|
| 166 | sudopbtest "cp $PBTEST/.ssh/id_rsa.pub $PBTEST/.ssh/authorized_keys"
|
|---|
| 167 | sudopbtest "chmod 600 $PBTEST/.ssh/authorized_keys $PBTEST/.ssh/id_rsa.pub"
|
|---|
| 168 | sudopbtest "ssh localhost touch $PBTEST/ftp/README"
|
|---|
| 169 |
|
|---|
| 170 | # Create SVN conf files - doesn't work fully as it asks for a password - solved with PBVCSOPT
|
|---|
| 171 | sudopbtest "svn info 2>&1 > /dev/null" 1
|
|---|
| 172 | cat > /tmp/servers << EOF
|
|---|
| 173 | [global]
|
|---|
| 174 | store-passwords = yes
|
|---|
| 175 | store-plaintext-passwords = yes
|
|---|
| 176 | store-auth-creds = yes
|
|---|
| 177 | EOF
|
|---|
| 178 | sudocmd "mv /tmp/servers $PBTEST/.subversion/servers"
|
|---|
| 179 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/.subversion/servers"
|
|---|
| 180 |
|
|---|
| 181 | VCSOPT="--username $PBUSER --password $PBUSER"
|
|---|
| 182 |
|
|---|
| 183 | sudopbtest "svn import $PBTEST/pb svn://localhost/pb -m 'Initial creation of pb repo' $VCSOPT"
|
|---|
| 184 | sudopbtest "svn co svn://localhost/pb $PBTEST/pb"
|
|---|
| 185 | sudopbtest "touch $PBTEST/pb/README"
|
|---|
| 186 | sudopbtest "svn add $PBTEST/pb/README"
|
|---|
| 187 | sudopbtest "svn ci $VCSOPT -m 'add readme' $PBTEST/pb/README"
|
|---|
| 188 | sudopbtest "PBVCSOPT=\"$VCSOPT\" pb -r 2.5 newproj afio"
|
|---|
| 189 |
|
|---|
| 190 | grep -vE '^defpkgdir|^projver|^projtag|^pburl|^pbrepo|^shh' $PBTEST/pb/afio/pbconf/2.5/afio.pb > /tmp/afio.pb
|
|---|
| 191 | cat >> /tmp/afio.pb << EOF
|
|---|
| 192 | defpkgdir afio = dummy
|
|---|
| 193 | projver afio = 2.5
|
|---|
| 194 | projtag afio = 1
|
|---|
| 195 | pburl afio = ftp://ftp.project-builder.org/src/afio-2.5.tar.gz
|
|---|
| 196 | pbrepo afio = ftp://ftp.project-builder.org
|
|---|
| 197 | sshhost afio = localhost
|
|---|
| 198 | sshlogin afio = $PBUSER
|
|---|
| 199 | sshdir afio = \$ENV{'HOME'}/ftp
|
|---|
| 200 | EOF
|
|---|
| 201 | sudocmd "mv /tmp/afio.pb $PBTEST/pb/afio/pbconf/2.5/afio.pb"
|
|---|
| 202 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/pb/afio/pbconf/2.5/afio.pb"
|
|---|
| 203 | cat > /tmp/pbtestcmd << EOF
|
|---|
| 204 | perl -pi -e 's|testver\s+afio\s+=\s+true|testver\ afio\ =\ false|' $PBTEST/pb/afio/pbconf/2.5/afio.pb
|
|---|
| 205 | EOF
|
|---|
| 206 | chmod 755 /tmp/pbtestcmd
|
|---|
| 207 | sudopbtest /tmp/pbtestcmd
|
|---|
| 208 |
|
|---|
| 209 | grep -vE 'PBSRC|PBDESC|PBSUMMARY|PBURL|PBLOG' $PBTEST/pb/afio/pbconf/2.5/pbfilter/all.pbf > /tmp/all.pbf
|
|---|
| 210 | cat >> /tmp/all.pbf << EOF
|
|---|
| 211 | filter PBSRC = src/%{name}-%{version}.tar.gz
|
|---|
| 212 | filter PBDESC = afio is a cpio compatible archiver with extended features$/It can compress on a file by file basis.
|
|---|
| 213 | filter PBSUMMARY = afio is a cpio compatible archiver with extended features
|
|---|
| 214 | filter PBURL = http://www.boutell.com/lsm/lsmbyid.cgi/000462
|
|---|
| 215 | filter PBLOG = no
|
|---|
| 216 | EOF
|
|---|
| 217 | sudocmd "mv /tmp/all.pbf $PBTEST/pb/afio/pbconf/2.5/pbfilter/all.pbf"
|
|---|
| 218 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/pb/afio/pbconf/2.5/pbfilter/all.pbf"
|
|---|
| 219 |
|
|---|
| 220 | grep -vE 'PBGRP|PBLIC' $PBTEST/pb/afio/pbconf/2.5/pbfilter/rpm.pbf > /tmp/rpm.pbf
|
|---|
| 221 | cat >> /tmp/rpm.pbf << EOF
|
|---|
| 222 | filter PBGRP = Applications/Archiving
|
|---|
| 223 | filter PBLIC = Afio
|
|---|
| 224 | filter PBDEP = gcc
|
|---|
| 225 | EOF
|
|---|
| 226 | sudocmd "mv /tmp/rpm.pbf $PBTEST/pb/afio/pbconf/2.5/pbfilter/rpm.pbf"
|
|---|
| 227 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/pb/afio/pbconf/2.5/pbfilter/rpm.pbf "
|
|---|
| 228 |
|
|---|
| 229 | cat >> /tmp/deb.pbf << EOF
|
|---|
| 230 | filter PBGRP = utils
|
|---|
| 231 | filter PBLIC = Afio
|
|---|
| 232 | EOF
|
|---|
| 233 | sudocmd "mv /tmp/deb.pbf $PBTEST/pb/afio/pbconf/2.5/pbfilter/deb.pbf"
|
|---|
| 234 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/pb/afio/pbconf/2.5/pbfilter/deb.pbf "
|
|---|
| 235 |
|
|---|
| 236 | # First build
|
|---|
| 237 | sudopbtest "pb -r 2.5 sbx2build"
|
|---|
| 238 |
|
|---|
| 239 | cat > /tmp/pbtestcmd << EOF
|
|---|
| 240 | # Filtering $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 241 | perl -pi -e 's|%configure||' $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 242 | perl -pi -e 's|make %{\?_smp_mflags}|make %{\?_smp_mflags}\nchmod 644 script*/*|' $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 243 | perl -pi -e 's|make DESTDIR=.*|mkdir -p %{buildroot}%{_bindir}\nmkdir -p %{buildroot}%{_mandir}/man1\ninstall -p -m 755 afio %{buildroot}%{_bindir}\ninstall -p -m 644 afio.1 %{buildroot}%{_mandir}/man1|' $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 244 | perl -pi -e 's|%doc ChangeLog|%doc HISTORY PORTING README SCRIPTS ANNOUNCE-2.5 perl.artistic.license|' $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 245 | perl -pi -e 's|%doc INSTALL COPYING README AUTHORS NEWS|%doc afio.lsm script1 script2 script3 script4\n%{_bindir}/%{name}\n%{_mandir}/man1/%{name}.1*|' $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 246 | perl -pi -e 's|^#Requires:|Requires:|' $PBTEST/pb/afio/pbconf/2.5/afio/rpm/afio.spec
|
|---|
| 247 | EOF
|
|---|
| 248 | chmod 755 /tmp/pbtestcmd
|
|---|
| 249 | sudopbtest /tmp/pbtestcmd
|
|---|
| 250 |
|
|---|
| 251 | cat > /tmp/pbcl << EOF
|
|---|
| 252 | # $Id$
|
|---|
| 253 |
|
|---|
| 254 | AFIO CHANGES
|
|---|
| 255 |
|
|---|
| 256 | 2.5 (2009-12-03)
|
|---|
| 257 | - First packages created
|
|---|
| 258 | EOF
|
|---|
| 259 | sudocmd "mv /tmp/pbcl $PBTEST/pb/afio/pbconf/2.5/afio/pbcl"
|
|---|
| 260 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/pb/afio/pbconf/2.5/afio/pbcl"
|
|---|
| 261 | sudopbtest "svn add $PBTEST/pb/afio/pbconf/2.5/afio/pbcl"
|
|---|
| 262 | sudopbtest "svn ci -m 'Adding pbcl for afio' $VCSOPT $PBTEST/pb"
|
|---|
| 263 |
|
|---|
| 264 | sudopbtest "pb sbx2pkg"
|
|---|
| 265 | rpm -qilvp $PBTEST/pb/afio/build/RPMS/x86_64/afio-2.5*
|
|---|
| 266 |
|
|---|
| 267 | cat > /tmp/pbtestcmd << EOF
|
|---|
| 268 | # Filtering $PBTEST/pb/afio/pbconf/2.5/afio/deb/control
|
|---|
| 269 | perl -pi -e 's|,\s*PBDEP||' $PBTEST/pb/afio/pbconf/2.5/afio/deb/control
|
|---|
| 270 | sed -i '/Recommends: PBREC/d' $PBTEST/pb/afio/pbconf/2.5/afio/deb/control
|
|---|
| 271 | sed -i '/Suggests: PBSUG/d' $PBTEST/pb/afio/pbconf/2.5/afio/deb/control
|
|---|
| 272 | EOF
|
|---|
| 273 | chmod 755 /tmp/pbtestcmd
|
|---|
| 274 | sudopbtest /tmp/pbtestcmd
|
|---|
| 275 |
|
|---|
| 276 | cat > /tmp/afio.docs << EOF
|
|---|
| 277 | HISTORY
|
|---|
| 278 | PORTING
|
|---|
| 279 | README
|
|---|
| 280 | SCRIPTS
|
|---|
| 281 | ANNOUNCE-2.5
|
|---|
| 282 | perl.artistic.license
|
|---|
| 283 | afio.lsm
|
|---|
| 284 | script1
|
|---|
| 285 | script2
|
|---|
| 286 | script3
|
|---|
| 287 | script4
|
|---|
| 288 | EOF
|
|---|
| 289 | sudocmd "mv /tmp/afio.docs $PBTEST/pb/afio/pbconf/2.5/afio/deb/afio.docs"
|
|---|
| 290 | sudocmd "chown ${PBUSER}:$PBUSER $PBTEST/pb/afio/pbconf/2.5/afio/deb/afio.docs "
|
|---|
| 291 |
|
|---|
| 292 | cat > /tmp/pbtestcmd << EOF
|
|---|
| 293 | # Filtering $PBTEST/pb/afio/pbconf/2.5/afio/deb/rules
|
|---|
| 294 | perl -pi -e 's|config.status: configure|config.status: Makefile|' $PBTEST/pb/afio/pbconf/2.5/afio/deb/rules
|
|---|
| 295 | perl -pi -e 's|dh_installchangelogs ChangeLog|dh_installchangelogs debian/changelog|' $PBTEST/pb/afio/pbconf/2.5/afio/deb/rules
|
|---|
| 296 | perl -pi -e 's|\\\$(MAKE) install.*|mkdir -p \\\$(CURDIR)/debian/\\\$(PACKAGE_NAME)/usr/bin \\\$(CURDIR)/debian/\\\$(PACKAGE_NAME)/usr/share/man/man1|' $PBTEST/pb/afio/pbconf/2.5/afio/deb/rules
|
|---|
| 297 | perl -pi -e 's|# - copy html manual to temporary location for renaming|install -p -m 755 afio \\\$(CURDIR)/debian/\\\$(PACKAGE_NAME)/usr/bin ; install -p -m 644 afio.1 \\\$(CURDIR)/debian/\\\$(PACKAGE_NAME)/usr/share/man/man1|' $PBTEST/pb/afio/pbconf/2.5/afio/deb/rules
|
|---|
| 298 | sed -i -e '/\.\/configure /d' $PBTEST/pb/afio/pbconf/2.5/afio/deb/rules
|
|---|
| 299 | EOF
|
|---|
| 300 | chmod 755 /tmp/pbtestcmd
|
|---|
| 301 | sudopbtest /tmp/pbtestcmd
|
|---|
| 302 |
|
|---|
| 303 |
|
|---|
| 304 | #dpkg -I ~ftp/pub/afio/test/debian/5.0/afio_2.5-0.20091204131057_i386.deb
|
|---|
| 305 | #dpkg -x ~ftp/pub/afio/test/debian/5.0/afio_2.5-0.20091204131057_i386.deb /tmp/x ; ls -lR /tmp/x
|
|---|
| 306 |
|
|---|
| 307 | sudopbtest "pb getconf"
|
|---|
| 308 | # test also with pb
|
|---|
| 309 | sudopbtest "pb -p pb -r devel getconf"
|
|---|
| 310 | sudopbtest "pb -p pb -r devel sbx2pkg"
|
|---|
| 311 | sudopbtest "pb -p pb build2ssh"
|
|---|
| 312 | sudopbtest "pb -p pb pkg2ssh"
|
|---|
| 313 |
|
|---|
| 314 | for d in $TESTVEDIST; do
|
|---|
| 315 | sudopbtest "PATH=${PATH}:/sbin:/usr/sbin pb -p pb -m $d newve"
|
|---|
| 316 | sudopbtest "pb -p pb -m $d sbx2setupve"
|
|---|
| 317 | sudopbtest "pb -p pb -m $d snapve"
|
|---|
| 318 | sudopbtest "pb -m $d sbx2ve"
|
|---|
| 319 | # Cleaning VE to use the snapshot
|
|---|
| 320 | dd=`echo $d | cut -d'-' -f1`
|
|---|
| 321 | vv=`echo $d | cut -d'-' -f2`
|
|---|
| 322 | aa=`echo $d | cut -d'-' -f3`
|
|---|
| 323 | if [ -f "$PBTEST/ve/$dd/$vv/$aa/proc/cpuinfo" ]; then
|
|---|
| 324 | sudocmd "umount $PBTEST/ve/$dd/$vv/$aa/proc"
|
|---|
| 325 | fi
|
|---|
| 326 | sudocmd "rm -rf $PBTEST/ve/$dd/$vv/$aa"
|
|---|
| 327 | sudopbtest "pb -S -m $d sbx2ve"
|
|---|
| 328 | done
|
|---|
| 329 |
|
|---|
| 330 | sudopbtest "svn ci $VCSOPT -m 'sync before newver' $PBTEST/pb"
|
|---|
| 331 | sudopbtest "PBVCSOPT=\"$VCSOPT\" pb -r 2.5 -V 2.6 newver"
|
|---|
| 332 | sudopbtest "pb clean"
|
|---|
| 333 |
|
|---|
| 334 | # need tobe part of group video for KVM
|
|---|
| 335 | sudocmd "grep -q $PBUSER /etc/group"
|
|---|
| 336 | if [ $? -ne 0 ]; then
|
|---|
| 337 | sudocmd "perl -pi -e 's|^(video:.*)$|$1,|' /etc/shadow"
|
|---|
| 338 | fi
|
|---|
| 339 | d=mageia-2-i386
|
|---|
| 340 | sudopbtest "qemu-img create -f qcow2 $PBTEST/vm/$d.qemu 72G"
|
|---|
| 341 | sudopbtest "qemu-kvm -m 1024 -kernel /pub/mageia/distrib/2/i586/isolinux/alt0/vmlinuz -initrd /pub/mageia/distrib/2/i586/isolinux/alt0/all.rdz -append "ramdisk_size=128000 root=/dev/ram3 kickstart=http://192.168.8.55/pub/ks/guerrero/ks.pl automatic=method:http,server:192.168.8.55,directory:/pub/mageia/distrib/2/i586,network:dhcp" -drive file=$PBTEST/vm/$d.qemu,if=virtio,media=disk -redir tcp:2200:10.0.2.15:22"
|
|---|
| 342 | sudopbtest "pb -p pb -m $d sbx2setupvm"
|
|---|
| 343 | sudopbtest "pb -p pb -m $d snapvm"
|
|---|
| 344 | sudopbtest "pb -m $d sbx2vm"
|
|---|
| 345 |
|
|---|
| 346 |
|
|---|
| 347 | # test also with MOndoRescue
|
|---|
| 348 | pb -p mondorescue -r branches/3.0 cms2pkg
|
|---|
| 349 |
|
|---|
| 350 | # cleanup
|
|---|
| 351 | sudopbtest "killall svnserve" 1
|
|---|
| 352 |
|
|---|