This is how embedded parrot tests in smoke

mktest.pl at the end:

--8<---
            if (@harness) {
                local $ENV{PERL_SKIP_TTY_TEST} = 1;
                print TTY "\nExtending failures with Harness\n";
                print LOG "\n",
                    grep !m:\bFAILED tests\b: &&
                         !m:% okay$: => qx "./perl t/harness @harness";

                }
            }
        print TTY "\n";

        # Done with perl tests

        -f "../parrot-latest.tbz" or next;
        qx "gzip -d < ../parrot-latest.tar.gz | tar xf -";
        chdir "parrot" or next;
        $ENV{PERL5LIB} = "/pro/3gl/CPAN/perl-current/lib";
        qx "../perl -I../lib Configure.pl --default 2>>../parrot2.log";
        if (-f "Makefile") {
            qx "make test_prog 2>>../parrot2.log";
            if (open  LOG1, ">>../parrot1.log") {
                print LOG1 "Conf: $s_conf", "=" x 78, "\n";
                open  LOG2, ">>../parrot2.log";
                print LOG2 "Conf: $s_conf", "=" x 78, "\n";
                close LOG2;
                -x "test_prog" and print LOG1 qx "make test 2>>../parrot2.log";
                close LOG1;
                }
            }
        chdir "..";
        qx "rm -rf parrot";
        }
-->8---

And your smoke.sh rsync changes like

--8<---
#!/bin/sh

# This should be run with cron

# Change your base dir here
export PC
PC=${1:-/usr/CPAN/perl-current}
CF=${2:-smoke.cfg}

# Set other environmental values here

export PATH
PATH=`pwd`:$PATH

echo "Smoke $PC"
umask 0

cd $PC || exit 1
wget http://cvs.perl.org/snapshots/parrot/parrot-latest.tar.gz
mv parrot-latest.tar.gz ..

make -i distclean > /dev/null 2>&1
rsync -avz --delete rsync://ftp.linux.activestate.com/perl-current/ .

(mktest.pl $CF 2>&1) >mktest.log      || echo mktest.pl exited with exit code $?

mkovz.pl [EMAIL PROTECTED] $PC || echo mkovz.pl  exited with exit code $?
-->8---

This is just a little cut-n-paste and does not reflect *my* situation, but
just shows how I did it.

I also have no parrot1.log/parrot2.log parser. Mattia?

Just timed one go, which adds about 50 seconds to each go. For my machine that
would be about 4 x 14 x 50" = 46 minutes

-- 
H.Merijn Brand    Amsterdam Perl Mongers (http://www.amsterdam.pm.org/)
using perl-5.6.1, 5.7.1 & 629 on HP-UX 10.20 & 11.00, AIX 4.2, AIX 4.3,
  WinNT 4, Win2K pro & WinCE 2.11.  Smoking perl CORE: [EMAIL PROTECTED]
http:[EMAIL PROTECTED]/   [EMAIL PROTECTED]
send smoke reports to: [EMAIL PROTECTED], QA: http://qa.perl.org

Reply via email to