lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uwe Schindler (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (LUCENE-8106) Add script to attempt to reproduce failing tests from a Jenkins log
Date Wed, 21 Feb 2018 22:40:00 GMT

    [ https://issues.apache.org/jira/browse/LUCENE-8106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16372126#comment-16372126
] 

Uwe Schindler edited comment on LUCENE-8106 at 2/21/18 10:39 PM:
-----------------------------------------------------------------

That's now the Jenkins script:

{code:bash}
set -x # Log commands

TMPFILE=`mktemp`
trap "rm -f $TMPFILE" EXIT   # Delete the temp file on SIGEXIT

curl -o $TMPFILE "${BUILD_URL}consoleText"

if grep --quiet 'reproduce with' $TMPFILE ; then

    # Preserve original build output
    mv lucene/build lucene/build.orig
    mv solr/build solr/build.orig

    PYTHON32_EXE=`grep "^[[:space:]]*python32\.exe[[:space:]]*=" ~/lucene.build.properties
| cut -d'=' -f2`
    [ -z $PYTHON32_EXE ] && PYTHON32_EXE=python3
    GIT_EXE=`grep "^[[:space:]]*git\.exe[[:space:]]*=" ~/lucene.build.properties | cut -d'='
-f2`
    [ -n $GIT_EXE ] && export PATH=$GIT_EXE:$PATH
    export ANT_HOME=$ANT_1_8_2_HOME
    export PATH=$ANT_HOME/bin:$PATH
    $PYTHON32_EXE -u dev-tools/scripts/reproduceJenkinsFailures.py --no-fetch file://$TMPFILE
    
    # Preserve repro build output
    mv lucene/build lucene/build.repro
    mv solr/build solr/build.repro

    # Restore original build output
    mv lucene/build.orig lucene/build
    mv solr/build.orig solr/build
fi
{code}


was (Author: thetaphi):
That's now the Jenkins script:

{code:bash}
set -x # Log commands

TMPFILE=`mktemp`
trap "rm -f $TMPFILE" EXIT   # Delete the temp file on SIGEXIT

curl -o $TMPFILE "$BUILD_URL/consoleText"

if grep --quiet 'reproduce with' $TMPFILE ; then

    # Preserve original build output
    mv lucene/build lucene/build.orig
    mv solr/build solr/build.orig

    PYTHON32_EXE=`grep "^[[:space:]]*python32\.exe[[:space:]]*=" ~/lucene.build.properties
| cut -d'=' -f2`
    [ -z $PYTHON32_EXE ] && PYTHON32_EXE=python3
    GIT_EXE=`grep "^[[:space:]]*git\.exe[[:space:]]*=" ~/lucene.build.properties | cut -d'='
-f2`
    [ -n $GIT_EXE ] && export PATH=$GIT_EXE:$PATH
    export ANT_HOME=$ANT_1_8_2_HOME
    export PATH=$ANT_HOME/bin:$PATH
    $PYTHON32_EXE -u dev-tools/scripts/reproduceJenkinsFailures.py --no-fetch file://$TMPFILE
    
    # Preserve repro build output
    mv lucene/build lucene/build.repro
    mv solr/build solr/build.repro

    # Restore original build output
    mv lucene/build.orig lucene/build
    mv solr/build.orig solr/build
fi
{code}

> Add script to attempt to reproduce failing tests from a Jenkins log
> -------------------------------------------------------------------
>
>                 Key: LUCENE-8106
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8106
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Steve Rowe
>            Assignee: Steve Rowe
>            Priority: Major
>             Fix For: master (8.0), 7.3
>
>         Attachments: LUCENE-8106-part2.patch, LUCENE-8106.patch, LUCENE-8106.patch
>
>
> This script will be runnable from a downstream job triggered by an upstream failing Jenkins
job, passing log location info between the two.
> The script will also be runnable manually from a developer's cmdline.
> From the script help:
> {noformat}
> Usage:
>      python3 -u reproduceJenkinsFailures.py URL
> Must be run from a Lucene/Solr git workspace. Downloads the Jenkins
> log pointed to by the given URL, parses it for Git revision and failed
> Lucene/Solr tests, checks out the Git revision in the local workspace,
> groups the failed tests by module, then runs
> 'ant test -Dtest.dups=5 -Dtests.class="*.test1[|*.test2[...]]" ...'
> in each module of interest, failing at the end if any of the runs fails.
> To control the maximum number of concurrent JVMs used for each module's
> test run, set 'tests.jvms', e.g. in ~/lucene.build.properties
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message