Untitled diff

创建于 差异永不过期
94 删除
278
20 添加
209
<?xml version='1.1' encoding='UTF-8'?>
<?xml version='1.1' encoding='UTF-8'?>
<matrix-project plugin="matrix-project@1.13">
<project>
<actions/>
<actions/>
<description></description>
<description></description>
<keepDependencies>false</keepDependencies>
<keepDependencies>false</keepDependencies>
<properties>
<properties>
<com.coravy.hudson.plugins.github.GithubProjectProperty plugin="github@1.29.2">
<com.coravy.hudson.plugins.github.GithubProjectProperty plugin="github@1.29.2">
<projectUrl>https://github.com/nodejs/node/</projectUrl>
<projectUrl>https://github.com/nodejs/node/</projectUrl>
<displayName></displayName>
<displayName></displayName>
</com.coravy.hudson.plugins.github.GithubProjectProperty>
</com.coravy.hudson.plugins.github.GithubProjectProperty>
<com.sonyericsson.rebuild.RebuildSettings plugin="rebuild@1.28">
<com.sonyericsson.rebuild.RebuildSettings plugin="rebuild@1.28">
<autoRebuild>false</autoRebuild>
<autoRebuild>false</autoRebuild>
<rebuildDisabled>false</rebuildDisabled>
<rebuildDisabled>false</rebuildDisabled>
</com.sonyericsson.rebuild.RebuildSettings>
</com.sonyericsson.rebuild.RebuildSettings>
<hudson.model.ParametersDefinitionProperty>
<hudson.model.ParametersDefinitionProperty>
<parameterDefinitions>
<parameterDefinitions>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>GITHUB_ORG</name>
<name>GITHUB_ORG</name>
<description>The user/org of the GitHub repo</description>
<description>The user/org of the GitHub repo</description>
<defaultValue>nodejs</defaultValue>
<defaultValue>nodejs</defaultValue>
<trim>false</trim>
<trim>true</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>REPO_NAME</name>
<name>REPO_NAME</name>
<description>The name of the repo</description>
<description>The name of the repo</description>
<defaultValue>node</defaultValue>
<defaultValue>node</defaultValue>
<trim>false</trim>
<trim>true</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>GIT_REMOTE_REF</name>
<name>GIT_REMOTE_REF</name>
<description>The remote portion of the Git refspec to fetch and test</description>
<description>The remote portion of the Git refspec to fetch and test</description>
<defaultValue>refs/heads/master</defaultValue>
<defaultValue>refs/heads/master</defaultValue>
<trim>false</trim>
<trim>true</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>REBASE_ONTO</name>
<name>REBASE_ONTO</name>
<description>Optionally, rebase onto the given ref before testing. Leave blank to skip rebasing.</description>
<description>Optionally, rebase onto the given ref before testing. Leave blank to skip rebasing.</description>
<defaultValue></defaultValue>
<defaultValue></defaultValue>
<trim>false</trim>
<trim>true</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>POST_REBASE_SHA1_CHECK</name>
<name>POST_REBASE_SHA1_CHECK</name>
<description>After rebasing, check that the resulting commit sha1 matches the given one. If left blank, no check is performed.</description>
<description></description>
<defaultValue></defaultValue>
<defaultValue>After rebasing, check that the resulting commit sha1 matches the given one. If left blank, no check is performed.</defaultValue>
<trim>false</trim>
<trim>true</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.BooleanParameterDefinition>
<hudson.model.BooleanParameterDefinition>
<name>IGNORE_FLAKY_TESTS</name>
<name>IGNORE_FLAKY_TESTS</name>
<description>Mark the build as unstable instead of failure if only flaky tests fail</description>
<description>Mark the build as unstable instead of failure if only flaky tests fail</description>
<defaultValue>false</defaultValue>
<defaultValue>false</defaultValue>
</hudson.model.BooleanParameterDefinition>
</hudson.model.BooleanParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>CONFIG_FLAGS</name>
<name>CONFIG_FLAGS</name>
<description>Add arguments to ./configure.</description>
<description>Add arguments to ./configure</description>
<defaultValue></defaultValue>
<defaultValue></defaultValue>
<trim>false</trim>
<trim>false</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>CI_JS_SUITES</name>
<name>CI_JS_SUITES</name>
<description>Suites to run tools/test.py for, separated by spaces</description>
<description>Suites to run tools/test.py for, separated by spaces (e.g. internet)</description>
<defaultValue>internet</defaultValue>
<defaultValue></defaultValue>
<trim>false</trim>
<trim>false</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<hudson.model.StringParameterDefinition>
<name>TEST_ARGS</name>
<name>TEST_ARGS</name>
<description>Additional arguments to pass to `python tools/test.py`</description>
<description>Additional arguments to pass to `python tools/test.py` (e.g. --worker)</description>
<defaultValue>--worker</defaultValue>
<defaultValue></defaultValue>
<trim>false</trim>
<trim>false</trim>
</hudson.model.StringParameterDefinition>
</hudson.model.StringParameterDefinition>
<org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition plugin="nodelabelparameter@1.7.2">
<org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition plugin="nodelabelparameter@1.7.2">
<name>PLATFORM_LABEL</name>
<name>PLATFORM_LABEL</name>
<description></description>
<description></description>
<defaultValue>ubuntu1604-64</defaultValue>
<defaultValue>ubuntu1604-64</defaultValue>
<allNodesMatchingLabel>false</allNodesMatchingLabel>
<allNodesMatchingLabel>false</allNodesMatchingLabel>
<triggerIfResult>allCases</triggerIfResult>
<triggerIfResult>allCases</triggerIfResult>
<nodeEligibility class="org.jvnet.jenkins.plugins.nodelabelparameter.node.AllNodeEligibility"/>
<nodeEligibility class="org.jvnet.jenkins.plugins.nodelabelparameter.node.AllNodeEligibility"/>
</org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition>
</org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition>
</parameterDefinitions>
</parameterDefinitions>
</hudson.model.ParametersDefinitionProperty>
</hudson.model.ParametersDefinitionProperty>
<hudson.plugins.throttleconcurrents.ThrottleJobProperty plugin="throttle-concurrents@2.0.1">
<hudson.plugins.throttleconcurrents.ThrottleJobProperty plugin="throttle-concurrents@2.0.1">
<maxConcurrentPerNode>0</maxConcurrentPerNode>
<maxConcurrentPerNode>0</maxConcurrentPerNode>
<maxConcurrentTotal>0</maxConcurrentTotal>
<maxConcurrentTotal>0</maxConcurrentTotal>
<categories class="java.util.concurrent.CopyOnWriteArrayList"/>
<categories class="java.util.concurrent.CopyOnWriteArrayList"/>
<throttleEnabled>false</throttleEnabled>
<throttleEnabled>false</throttleEnabled>
<throttleOption>project</throttleOption>
<throttleOption>project</throttleOption>
<limitOneJobWithMatchingParams>false</limitOneJobWithMatchingParams>
<limitOneJobWithMatchingParams>false</limitOneJobWithMatchingParams>
<matrixOptions>
<throttleMatrixBuilds>true</throttleMatrixBuilds>
<throttleMatrixConfigurations>false</throttleMatrixConfigurations>
</matrixOptions>
<paramsToUseForLimit></paramsToUseForLimit>
<paramsToUseForLimit></paramsToUseForLimit>
</hudson.plugins.throttleconcurrents.ThrottleJobProperty>
</hudson.plugins.throttleconcurrents.ThrottleJobProperty>
</properties>
</properties>
<scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0-beta2">
<scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0-beta2">
<configVersion>2</configVersion>
<configVersion>2</configVersion>
<userRemoteConfigs>
<userRemoteConfigs>
<hudson.plugins.git.UserRemoteConfig>
<hudson.plugins.git.UserRemoteConfig>
<name>origin</name>
<name>origin</name>
<refspec>+refs/heads/*:refs/remotes/origin/* +$GIT_REMOTE_REF:refs/remotes/origin/_jenkins_local_branch</refspec>
<refspec>+$GIT_REMOTE_REF:refs/remotes/origin/_jenkins_local_branch</refspec>
<url>git@github.com:$GITHUB_ORG/$REPO_NAME.git</url>
<url>git@github.com:$GITHUB_ORG/$REPO_NAME.git</url>
<credentialsId>96d5f81c-e9ad-45f7-ba5d-bc8107c0ae2c</credentialsId>
<credentialsId>96d5f81c-e9ad-45f7-ba5d-bc8107c0ae2c</credentialsId>
</hudson.plugins.git.UserRemoteConfig>
</hudson.plugins.git.UserRemoteConfig>
</userRemoteConfigs>
</userRemoteConfigs>
<branches>
<branches>
<hudson.plugins.git.BranchSpec>
<hudson.plugins.git.BranchSpec>
<name>refs/heads/_jenkins_local_branch</name>
<name>refs/heads/_jenkins_local_branch</name>
</hudson.plugins.git.BranchSpec>
</hudson.plugins.git.BranchSpec>
</branches>
</branches>
<doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
<doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
<browser class="hudson.plugins.git.browser.GithubWeb">
<browser class="hudson.plugins.git.browser.GithubWeb">
<url>https://github.com/nodejs/node</url>
<url></url>
</browser>
</browser>
<submoduleCfg class="list"/>
<submoduleCfg class="list"/>
<extensions>
<extensions>
<hudson.plugins.git.extensions.impl.CleanCheckout/>
<hudson.plugins.git.extensions.impl.CleanCheckout/>
<hudson.plugins.git.extensions.impl.CloneOption>
<hudson.plugins.git.extensions.impl.CloneOption>
<shallow>false</shallow>
<shallow>false</shallow>
<noTags>true</noTags>
<noTags>true</noTags>
<reference>/data/iojs/git/io.js.reference</reference>
<reference>/data/iojs/git/io.js.reference</reference>
<timeout>20</timeout>
<timeout>20</timeout>
<depth>0</depth>
<depth>0</depth>
<honorRefspec>false</honorRefspec>
<honorRefspec>false</honorRefspec>
</hudson.plugins.git.extensions.impl.CloneOption>
</hudson.plugins.git.extensions.impl.CloneOption>
<hudson.plugins.git.extensions.impl.ChangelogToBranch>
<options>
<compareRemote>origin</compareRemote>
<compareTarget>_jenkins_local_branch~1</compareTarget>
</options>
</hudson.plugins.git.extensions.impl.ChangelogToBranch>
<org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension plugin="node-version-jenkins-plugin@1.0-SNAPSHOT">
<org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension plugin="node-version-jenkins-plugin@1.0-SNAPSHOT">
<exportNodejsVersion>true</exportNodejsVersion>
<exportNodejsVersion>true</exportNodejsVersion>
</org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension>
</org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension>
</extensions>
</extensions>
</scm>
</scm>
<assignedNode>jenkins-workspace</assignedNode>
<canRoam>true</canRoam>
<canRoam>false</canRoam>
<disabled>false</disabled>
<disabled>false</disabled>
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
<triggers/>
<triggers/>
<concurrentBuild>true</concurrentBuild>
<concurrentBuild>true</concurrentBuild>
<axes/>
<customWorkspace>node-test-commit-custom-suites</customWorkspace>
<builders>
<builders>
<hudson.tasks.Shell>
<hudson.tasks.Shell>
<command>curl https://raw.githubusercontent.com/nodejs/build/master/jenkins/scripts/node-test-commit-pre.sh | bash</command>
<command>curl https://raw.githubusercontent.com/nodejs/build/master/jenkins/scripts/node-test-commit-pre.sh | bash -ex -s before</command>
</hudson.tasks.Shell>
</hudson.tasks.Shell>
<hudson.tasks.Shell>
<hudson.tasks.Shell>
<command>#/bin/bash
<command>#/bin/bash


echo $NODE_NAME
echo $NODE_NAME


rm -rf build
rm -rf build
git clone https://github.com/nodejs/build.git
git clone https://github.com/nodejs/build.git
. ./build/jenkins/scripts/select-compiler.sh
. ./build/jenkins/scripts/select-compiler.sh


SKIP_MESSAGE=&quot;ok&quot;
SKIP_MESSAGE=&quot;ok&quot;
REVELANT_VERSION=1
REVELANT_VERSION=1
if [ &quot;$NODEJS_MAJOR_VERSION&quot; -lt &quot;6&quot; ]; then
if [ &quot;$NODEJS_MAJOR_VERSION&quot; -lt &quot;6&quot; ]; then
REVELANT_VERSION=
REVELANT_VERSION=
# 390 is only supported on v6 and later for now
# 390 is only supported on v6 and later for now
SKIP_MESSAGE=&quot;ok # skipped s390 not supported for versions less than 6, skipping&quot;
SKIP_MESSAGE=&quot;ok # skipped s390 not supported for versions less than 6, skipping&quot;
fi
fi


RELEVANT_SUITE=1
RELEVANT_SUITE=1
if [ &quot;$CI_JS_SUITES&quot; = &quot;v8-updates&quot; ] &amp;&amp; [ &quot;$NODEJS_MAJOR_VERSION&quot; -lt &quot;11&quot; ]; then
if [ &quot;$CI_JS_SUITES&quot; = &quot;v8-updates&quot; ] &amp;&amp; [ &quot;$NODEJS_MAJOR_VERSION&quot; -lt &quot;11&quot; ]; then
RELEVANT_SUITE=
RELEVANT_SUITE=
fi
fi


if [ &quot;$TEST_ARGS&quot; = &quot;--worker&quot; ] &amp;&amp; [ &quot;$NODEJS_MAJOR_VERSION&quot; -lt &quot;10&quot; ]; then
if [ &quot;$TEST_ARGS&quot; = &quot;--worker&quot; ] &amp;&amp; [ &quot;$NODEJS_MAJOR_VERSION&quot; -lt &quot;10&quot; ]; then
RELEVANT_SUITE=
RELEVANT_SUITE=
fi
fi


JOBS=$(getconf _NPROCESSORS_ONLN)
JOBS=$(getconf _NPROCESSORS_ONLN)


if [ $REVELANT_VERSION ] &amp;&amp; [ $RELEVANT_SUITE ]; then
if [ $REVELANT_VERSION ] &amp;&amp; [ $RELEVANT_SUITE ]; then
NODE_TEST_DIR=${HOME}/node-tmp
NODE_TEST_DIR=${HOME}/node-tmp
NODE_COMMON_PORT=15000
NODE_COMMON_PORT=15000
PYTHON=python
PYTHON=python
FLAKY_TESTS=$FLAKY_TESTS_MODE
FLAKY_TESTS=$FLAKY_TESTS_MODE
make build-ci -j $JOBS
make build-ci -j $JOBS
python tools/test.py -j $JOBS -p tap --logfile test.tap --mode=release --flaky-tests=dontcare $TEST_ARGS $CI_JS_SUITES
python tools/test.py -j $JOBS -p tap --logfile test.tap --mode=release --flaky-tests=dontcare $TEST_ARGS $CI_JS_SUITES
else
else
# fake out so we don&apos;t get failures
# fake out so we don&apos;t get failures
mkdir out
mkdir out
echo &quot;1..1&quot; &gt;test.tap
echo &quot;1..1&quot; &gt;test.tap
echo &quot;ok 1 # skip $SKIP_MESSAGE&quot; &gt;&gt; test.tap
echo &quot;ok 1 # skip $SKIP_MESSAGE&quot; &gt;&gt; test.tap
echo &quot; ---&quot; &gt;&gt; test.tap
echo &quot; ---&quot; &gt;&gt; test.tap
echo &quot; duration_ms: 4.925&quot; &gt;&gt; test.tap
echo &quot; duration_ms: 4.925&quot; &gt;&gt; test.tap
echo &quot; ...&quot; &gt;&gt; test.tap
echo &quot; ...&quot; &gt;&gt; test.tap
fi</command>
fi</command>
</hudson.tasks.Shell>
</hudson.tasks.Shell>
<hudson.tasks.Shell>
<hudson.tasks.Shell>
<command># Diagnostics
<command>curl https://raw.githubusercontent.com/nodejs/build/master/jenkins/scripts/node-test-commit-diagnostics.sh | bash -ex -s after</command>
set +x
</hudson.tasks.Shell>
DIAGFILE=${HOME}/jenkins_diagnostics.txt
<hudson.tasks.Shell>
echo &gt;&gt; ${DIAGFILE}
<command>mkdir out/junit || true
echo &gt;&gt; ${DIAGFILE}
tap2junit -i test.tap -o out/junit/test.xml || true</command>
echo &gt;&gt; ${DIAGFILE}
TS=&quot;`date`&quot;
echo $TS
echo $TS &gt;&gt; ${DIAGFILE}
echo &quot;After building&quot; &gt;&gt; ${DIAGFILE}
echo $BUILD_TAG &gt;&gt; ${DIAGFILE}
echo $BUILD_URL &gt;&gt; ${DIAGFILE}
echo $NODE_NAME &gt;&gt; ${DIAGFILE}
echo &gt;&gt; ${DIAGFILE}
echo &quot;netstat -anp&quot; &gt;&gt; ${DIAGFILE}
netstat -anp &gt;&gt; ${DIAGFILE} 2&gt;&amp;1 || true
echo &gt;&gt; ${DIAGFILE}
echo &quot;netstat -gn&quot; &gt;&gt; ${DIAGFILE}
netstat -gn &gt;&gt; ${DIAGFILE} 2&gt;&amp;1 || true
echo &gt;&gt; ${DIAGFILE}
echo &quot;ps auxww&quot; &gt;&gt; ${DIAGFILE}
ps auxww &gt;&gt; ${DIAGFILE} 2&gt;&amp;1 || true
mv ${DIAGFILE} ${DIAGFILE}-OLD || true
tail -c 20000000 ${DIAGFILE}-OLD &gt; ${DIAGFILE} || true
rm ${DIAGFILE}-OLD || true
set -x
pgrep node || true
</command>
</hudson.tasks.Shell>
</hudson.tasks.Shell>
</builders>
</builders>
<publishers>
<publishers>
<hudson.plugins.textfinder.TextFinderPublisher plugin="text-finder@1.10">
<fileSet>test*</fileSet>
<regexp>^not ok</regexp>
<succeedIfFound>false</succeedIfFound>
<unstableIfFound>false</unstableIfFound>
<alsoCheckConsoleOutput>false</alsoCheckConsoleOutput>
</hudson.plugins.textfinder.TextFinderPublisher>
<hudson.plugins.postbuildtask.PostbuildTask plugin="postbuild-task@1.8">
<tasks>
<hudson.plugins.postbuildtask.TaskProperties>
<logTexts>
<hudson.plugins.postbuildtask.LogProperties>
<logText></logText>
<operator>OR</operator>
</hudson.plugins.postbuildtask.LogProperties>
</logTexts>
<EscalateStatus>false</EscalateStatus>
<RunIfJobSuccessful>false</RunIfJobSuccessful>
<script>#/bin/bash&#xd;
&#xd;
set -x&#xd;
&#xd;
if [ -f &quot;test.tap&quot; ]; then&#xd;
mkdir out/junit || true&#xd;
tap2junit -i test.tap -o out/junit/test.xml || true&#xd;
fi</script>
</hudson.plugins.postbuildtask.TaskProperties>
</tasks>
</hudson.plugins.postbuildtask.PostbuildTask>
<hudson.tasks.junit.JUnitResultArchiver plugin="junit@1.24">
<hudson.tasks.junit.JUnitResultArchiver plugin="junit@1.24">
<testResults>out/junit/*.xml</testResults>
<testResults>out/junit/*.xml</testResults>
<keepLongStdio>false</keepLongStdio>
<keepLongStdio>true</keepLongStdio>
<healthScaleFactor>1.0</healthScaleFactor>
<healthScaleFactor>1.0</healthScaleFactor>
<allowEmptyResults>true</allowEmptyResults>
<allowEmptyResults>true</allowEmptyResults>
</hudson.tasks.junit.JUnitResultArchiver>
</hudson.tasks.junit.JUnitResultArchiver>
</publishers>
</publishers>
<buildWrappers>
<buildWrappers>
<hudson.plugins.build__timeout.BuildTimeoutWrapper plugin="build-timeout@1.19">
<hudson.plugins.build__timeout.BuildTimeoutWrapper plugin="build-timeout@1.19">
<strategy class="hudson.plugins.build_timeout.impl.NoActivityTimeOutStrategy">
<strategy class="hudson.plugins.build_timeout.impl.NoActivityTimeOutStrategy">
<timeoutSecondsString>900</timeoutSecondsString>
<timeoutSecondsString>900</timeoutSecondsString>
</strategy>
</strategy>
<operationList>
<operationList>
<hudson.plugins.build__timeout.operations.FailOperation/>
<hudson.plugins.build__timeout.operations.FailOperation/>
</operationList>
</operationList>
</hudson.plugins.build__timeout.BuildTimeoutWrapper>
</hudson.plugins.build__timeout.BuildTimeoutWrapper>
<hudson.plugins.timestamper.TimestamperBuildWrapper plugin="timestamper@1.8.10"/>
<hudson.plugins.timestamper.TimestamperBuildWrapper plugin="timestamper@1.8.10"/>
<hudson.plugins.ansicolor.AnsiColorBuildWrapper plugin="ansicolor@0.5.2">
<colorMapName>xterm</colorMapName>
</hudson.plugins.ansicolor.AnsiColorBuildWrapper>
</buildWrappers>
</buildWrappers>
<executionStrategy class="hudson.matrix.DefaultMatrixExecutionStrategyImpl">
</project>
<runSequentially>false</runSequentially>

</executionStrategy>
</matrix-project>