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