Diff
checker
文本
文本
图像
文档
Excel
文件夹
Legal
Enterprise
桌面版
定价
登录
下载 Diffchecker 桌面版
比较文本
查找两个文本文件之间的差异
工具
历史
实时编辑器
隐藏空白更改
折叠未更改行
关闭换行
视图
拆分
统一
比对精度
智能
单词
字符
文本样式
更改外观
语法高亮
选择语法
忽略
文本转换
转到第一个差异
编辑输入
Diffchecker Desktop
运行Diffchecker最安全的方式。获取Diffchecker桌面应用:您的差异永远不会离开您的电脑!
获取桌面版
Untitled diff
创建于
8年前
差异永不过期
清除
导出
分享
解释
94 删除
行
总计
删除
字符
总计
删除
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
278 行
全部复制
20 添加
行
总计
添加
字符
总计
添加
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
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="ok"
SKIP_MESSAGE="ok"
REVELANT_VERSION=1
REVELANT_VERSION=1
if [ "$NODEJS_MAJOR_VERSION" -lt "6" ]; then
if [ "$NODEJS_MAJOR_VERSION" -lt "6" ]; 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="ok # skipped s390 not supported for versions less than 6, skipping"
SKIP_MESSAGE="ok # skipped s390 not supported for versions less than 6, skipping"
fi
fi
RELEVANT_SUITE=1
RELEVANT_SUITE=1
if [ "$CI_JS_SUITES" = "v8-updates" ] && [ "$NODEJS_MAJOR_VERSION" -lt "11" ]; then
if [ "$CI_JS_SUITES" = "v8-updates" ] && [ "$NODEJS_MAJOR_VERSION" -lt "11" ]; then
RELEVANT_SUITE=
RELEVANT_SUITE=
fi
fi
if [ "$TEST_ARGS" = "--worker" ] && [ "$NODEJS_MAJOR_VERSION" -lt "10" ]; then
if [ "$TEST_ARGS" = "--worker" ] && [ "$NODEJS_MAJOR_VERSION" -lt "10" ]; then
RELEVANT_SUITE=
RELEVANT_SUITE=
fi
fi
JOBS=$(getconf _NPROCESSORS_ONLN)
JOBS=$(getconf _NPROCESSORS_ONLN)
if [ $REVELANT_VERSION ] && [ $RELEVANT_SUITE ]; then
if [ $REVELANT_VERSION ] && [ $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't get failures
# fake out so we don't get failures
mkdir out
mkdir out
echo "1..1" >test.tap
echo "1..1" >test.tap
echo "ok 1 # skip $SKIP_MESSAGE" >> test.tap
echo "ok 1 # skip $SKIP_MESSAGE" >> test.tap
echo " ---" >> test.tap
echo " ---" >> test.tap
echo " duration_ms: 4.925" >> test.tap
echo " duration_ms: 4.925" >> test.tap
echo " ..." >> test.tap
echo " ..." >> 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 >> ${DIAGFILE}
<command>mkdir out/junit
|| true
echo >> ${DIAGFILE}
tap2junit -i test.tap -o out/junit/test.xml || true
</command>
echo >> ${DIAGFILE}
TS="`date`"
echo $TS
echo $TS >> ${DIAGFILE}
echo "After building" >> ${DIAGFILE}
echo $BUILD_TAG >> ${DIAGFILE}
echo $BUILD_URL >> ${DIAGFILE}
echo $NODE_NAME >> ${DIAGFILE}
echo >> ${DIAGFILE}
echo "netstat -anp" >> ${DIAGFILE}
netstat -anp >> ${DIAGFILE} 2>&1 || true
echo >> ${DIAGFILE}
echo "netstat -gn" >> ${DIAGFILE}
netstat -gn >> ${DIAGFILE} 2>&1 || true
echo >> ${DIAGFILE}
echo "ps auxww" >> ${DIAGFILE}
ps auxww >> ${DIAGFILE} 2>&1 || true
mv ${DIAGFILE} ${DIAGFILE}-OLD
|| true
tail -c 20000000 ${DIAGFILE}-OLD > ${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

set -x

if [ -f "test.tap" ]; then
mkdir out/junit || true
tap2junit -i test.tap -o out/junit/test.xml || true
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>
已保存差异
原始文本
打开文件
<?xml version='1.1' encoding='UTF-8'?> <matrix-project plugin="matrix-project@1.13"> <actions/> <description></description> <keepDependencies>false</keepDependencies> <properties> <com.coravy.hudson.plugins.github.GithubProjectProperty plugin="github@1.29.2"> <projectUrl>https://github.com/nodejs/node/</projectUrl> <displayName></displayName> </com.coravy.hudson.plugins.github.GithubProjectProperty> <com.sonyericsson.rebuild.RebuildSettings plugin="rebuild@1.28"> <autoRebuild>false</autoRebuild> <rebuildDisabled>false</rebuildDisabled> </com.sonyericsson.rebuild.RebuildSettings> <hudson.model.ParametersDefinitionProperty> <parameterDefinitions> <hudson.model.StringParameterDefinition> <name>GITHUB_ORG</name> <description>The user/org of the GitHub repo</description> <defaultValue>nodejs</defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>REPO_NAME</name> <description>The name of the repo</description> <defaultValue>node</defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>GIT_REMOTE_REF</name> <description>The remote portion of the Git refspec to fetch and test</description> <defaultValue>refs/heads/master</defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>REBASE_ONTO</name> <description>Optionally, rebase onto the given ref before testing. Leave blank to skip rebasing.</description> <defaultValue></defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <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> <defaultValue></defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.BooleanParameterDefinition> <name>IGNORE_FLAKY_TESTS</name> <description>Mark the build as unstable instead of failure if only flaky tests fail</description> <defaultValue>false</defaultValue> </hudson.model.BooleanParameterDefinition> <hudson.model.StringParameterDefinition> <name>CONFIG_FLAGS</name> <description>Add arguments to ./configure.</description> <defaultValue></defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>CI_JS_SUITES</name> <description>Suites to run tools/test.py for, separated by spaces</description> <defaultValue>internet</defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>TEST_ARGS</name> <description>Additional arguments to pass to `python tools/test.py`</description> <defaultValue>--worker</defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition plugin="nodelabelparameter@1.7.2"> <name>PLATFORM_LABEL</name> <description></description> <defaultValue>ubuntu1604-64</defaultValue> <allNodesMatchingLabel>false</allNodesMatchingLabel> <triggerIfResult>allCases</triggerIfResult> <nodeEligibility class="org.jvnet.jenkins.plugins.nodelabelparameter.node.AllNodeEligibility"/> </org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition> </parameterDefinitions> </hudson.model.ParametersDefinitionProperty> <hudson.plugins.throttleconcurrents.ThrottleJobProperty plugin="throttle-concurrents@2.0.1"> <maxConcurrentPerNode>0</maxConcurrentPerNode> <maxConcurrentTotal>0</maxConcurrentTotal> <categories class="java.util.concurrent.CopyOnWriteArrayList"/> <throttleEnabled>false</throttleEnabled> <throttleOption>project</throttleOption> <limitOneJobWithMatchingParams>false</limitOneJobWithMatchingParams> <matrixOptions> <throttleMatrixBuilds>true</throttleMatrixBuilds> <throttleMatrixConfigurations>false</throttleMatrixConfigurations> </matrixOptions> <paramsToUseForLimit></paramsToUseForLimit> </hudson.plugins.throttleconcurrents.ThrottleJobProperty> </properties> <scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0-beta2"> <configVersion>2</configVersion> <userRemoteConfigs> <hudson.plugins.git.UserRemoteConfig> <name>origin</name> <refspec>+refs/heads/*:refs/remotes/origin/* +$GIT_REMOTE_REF:refs/remotes/origin/_jenkins_local_branch</refspec> <url>git@github.com:$GITHUB_ORG/$REPO_NAME.git</url> <credentialsId>96d5f81c-e9ad-45f7-ba5d-bc8107c0ae2c</credentialsId> </hudson.plugins.git.UserRemoteConfig> </userRemoteConfigs> <branches> <hudson.plugins.git.BranchSpec> <name>refs/heads/_jenkins_local_branch</name> </hudson.plugins.git.BranchSpec> </branches> <doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations> <browser class="hudson.plugins.git.browser.GithubWeb"> <url>https://github.com/nodejs/node</url> </browser> <submoduleCfg class="list"/> <extensions> <hudson.plugins.git.extensions.impl.CleanCheckout/> <hudson.plugins.git.extensions.impl.CloneOption> <shallow>false</shallow> <noTags>true</noTags> <reference>/data/iojs/git/io.js.reference</reference> <timeout>20</timeout> <depth>0</depth> <honorRefspec>false</honorRefspec> </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"> <exportNodejsVersion>true</exportNodejsVersion> </org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension> </extensions> </scm> <assignedNode>jenkins-workspace</assignedNode> <canRoam>false</canRoam> <disabled>false</disabled> <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding> <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding> <triggers/> <concurrentBuild>true</concurrentBuild> <axes/> <builders> <hudson.tasks.Shell> <command>curl https://raw.githubusercontent.com/nodejs/build/master/jenkins/scripts/node-test-commit-pre.sh | bash</command> </hudson.tasks.Shell> <hudson.tasks.Shell> <command>#/bin/bash echo $NODE_NAME rm -rf build git clone https://github.com/nodejs/build.git . ./build/jenkins/scripts/select-compiler.sh SKIP_MESSAGE="ok" REVELANT_VERSION=1 if [ "$NODEJS_MAJOR_VERSION" -lt "6" ]; then REVELANT_VERSION= # 390 is only supported on v6 and later for now SKIP_MESSAGE="ok # skipped s390 not supported for versions less than 6, skipping" fi RELEVANT_SUITE=1 if [ "$CI_JS_SUITES" = "v8-updates" ] && [ "$NODEJS_MAJOR_VERSION" -lt "11" ]; then RELEVANT_SUITE= fi if [ "$TEST_ARGS" = "--worker" ] && [ "$NODEJS_MAJOR_VERSION" -lt "10" ]; then RELEVANT_SUITE= fi JOBS=$(getconf _NPROCESSORS_ONLN) if [ $REVELANT_VERSION ] && [ $RELEVANT_SUITE ]; then NODE_TEST_DIR=${HOME}/node-tmp NODE_COMMON_PORT=15000 PYTHON=python FLAKY_TESTS=$FLAKY_TESTS_MODE 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 else # fake out so we don't get failures mkdir out echo "1..1" >test.tap echo "ok 1 # skip $SKIP_MESSAGE" >> test.tap echo " ---" >> test.tap echo " duration_ms: 4.925" >> test.tap echo " ..." >> test.tap fi</command> </hudson.tasks.Shell> <hudson.tasks.Shell> <command># Diagnostics set +x DIAGFILE=${HOME}/jenkins_diagnostics.txt echo >> ${DIAGFILE} echo >> ${DIAGFILE} echo >> ${DIAGFILE} TS="`date`" echo $TS echo $TS >> ${DIAGFILE} echo "After building" >> ${DIAGFILE} echo $BUILD_TAG >> ${DIAGFILE} echo $BUILD_URL >> ${DIAGFILE} echo $NODE_NAME >> ${DIAGFILE} echo >> ${DIAGFILE} echo "netstat -anp" >> ${DIAGFILE} netstat -anp >> ${DIAGFILE} 2>&1 || true echo >> ${DIAGFILE} echo "netstat -gn" >> ${DIAGFILE} netstat -gn >> ${DIAGFILE} 2>&1 || true echo >> ${DIAGFILE} echo "ps auxww" >> ${DIAGFILE} ps auxww >> ${DIAGFILE} 2>&1 || true mv ${DIAGFILE} ${DIAGFILE}-OLD || true tail -c 20000000 ${DIAGFILE}-OLD > ${DIAGFILE} || true rm ${DIAGFILE}-OLD || true set -x pgrep node || true </command> </hudson.tasks.Shell> </builders> <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
 
 set -x
 
 if [ -f "test.tap" ]; then
 mkdir out/junit || true
 tap2junit -i test.tap -o out/junit/test.xml || true
 fi</script> </hudson.plugins.postbuildtask.TaskProperties> </tasks> </hudson.plugins.postbuildtask.PostbuildTask> <hudson.tasks.junit.JUnitResultArchiver plugin="junit@1.24"> <testResults>out/junit/*.xml</testResults> <keepLongStdio>false</keepLongStdio> <healthScaleFactor>1.0</healthScaleFactor> <allowEmptyResults>true</allowEmptyResults> </hudson.tasks.junit.JUnitResultArchiver> </publishers> <buildWrappers> <hudson.plugins.build__timeout.BuildTimeoutWrapper plugin="build-timeout@1.19"> <strategy class="hudson.plugins.build_timeout.impl.NoActivityTimeOutStrategy"> <timeoutSecondsString>900</timeoutSecondsString> </strategy> <operationList> <hudson.plugins.build__timeout.operations.FailOperation/> </operationList> </hudson.plugins.build__timeout.BuildTimeoutWrapper> <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> <executionStrategy class="hudson.matrix.DefaultMatrixExecutionStrategyImpl"> <runSequentially>false</runSequentially> </executionStrategy> </matrix-project>
更改后文本
打开文件
<?xml version='1.1' encoding='UTF-8'?> <project> <actions/> <description></description> <keepDependencies>false</keepDependencies> <properties> <com.coravy.hudson.plugins.github.GithubProjectProperty plugin="github@1.29.2"> <projectUrl>https://github.com/nodejs/node/</projectUrl> <displayName></displayName> </com.coravy.hudson.plugins.github.GithubProjectProperty> <com.sonyericsson.rebuild.RebuildSettings plugin="rebuild@1.28"> <autoRebuild>false</autoRebuild> <rebuildDisabled>false</rebuildDisabled> </com.sonyericsson.rebuild.RebuildSettings> <hudson.model.ParametersDefinitionProperty> <parameterDefinitions> <hudson.model.StringParameterDefinition> <name>GITHUB_ORG</name> <description>The user/org of the GitHub repo</description> <defaultValue>nodejs</defaultValue> <trim>true</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>REPO_NAME</name> <description>The name of the repo</description> <defaultValue>node</defaultValue> <trim>true</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>GIT_REMOTE_REF</name> <description>The remote portion of the Git refspec to fetch and test</description> <defaultValue>refs/heads/master</defaultValue> <trim>true</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>REBASE_ONTO</name> <description>Optionally, rebase onto the given ref before testing. Leave blank to skip rebasing.</description> <defaultValue></defaultValue> <trim>true</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>POST_REBASE_SHA1_CHECK</name> <description></description> <defaultValue>After rebasing, check that the resulting commit sha1 matches the given one. If left blank, no check is performed.</defaultValue> <trim>true</trim> </hudson.model.StringParameterDefinition> <hudson.model.BooleanParameterDefinition> <name>IGNORE_FLAKY_TESTS</name> <description>Mark the build as unstable instead of failure if only flaky tests fail</description> <defaultValue>false</defaultValue> </hudson.model.BooleanParameterDefinition> <hudson.model.StringParameterDefinition> <name>CONFIG_FLAGS</name> <description>Add arguments to ./configure</description> <defaultValue></defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>CI_JS_SUITES</name> <description>Suites to run tools/test.py for, separated by spaces (e.g. internet)</description> <defaultValue></defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <hudson.model.StringParameterDefinition> <name>TEST_ARGS</name> <description>Additional arguments to pass to `python tools/test.py` (e.g. --worker)</description> <defaultValue></defaultValue> <trim>false</trim> </hudson.model.StringParameterDefinition> <org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition plugin="nodelabelparameter@1.7.2"> <name>PLATFORM_LABEL</name> <description></description> <defaultValue>ubuntu1604-64</defaultValue> <allNodesMatchingLabel>false</allNodesMatchingLabel> <triggerIfResult>allCases</triggerIfResult> <nodeEligibility class="org.jvnet.jenkins.plugins.nodelabelparameter.node.AllNodeEligibility"/> </org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterDefinition> </parameterDefinitions> </hudson.model.ParametersDefinitionProperty> <hudson.plugins.throttleconcurrents.ThrottleJobProperty plugin="throttle-concurrents@2.0.1"> <maxConcurrentPerNode>0</maxConcurrentPerNode> <maxConcurrentTotal>0</maxConcurrentTotal> <categories class="java.util.concurrent.CopyOnWriteArrayList"/> <throttleEnabled>false</throttleEnabled> <throttleOption>project</throttleOption> <limitOneJobWithMatchingParams>false</limitOneJobWithMatchingParams> <paramsToUseForLimit></paramsToUseForLimit> </hudson.plugins.throttleconcurrents.ThrottleJobProperty> </properties> <scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0-beta2"> <configVersion>2</configVersion> <userRemoteConfigs> <hudson.plugins.git.UserRemoteConfig> <name>origin</name> <refspec>+$GIT_REMOTE_REF:refs/remotes/origin/_jenkins_local_branch</refspec> <url>git@github.com:$GITHUB_ORG/$REPO_NAME.git</url> <credentialsId>96d5f81c-e9ad-45f7-ba5d-bc8107c0ae2c</credentialsId> </hudson.plugins.git.UserRemoteConfig> </userRemoteConfigs> <branches> <hudson.plugins.git.BranchSpec> <name>refs/heads/_jenkins_local_branch</name> </hudson.plugins.git.BranchSpec> </branches> <doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations> <browser class="hudson.plugins.git.browser.GithubWeb"> <url></url> </browser> <submoduleCfg class="list"/> <extensions> <hudson.plugins.git.extensions.impl.CleanCheckout/> <hudson.plugins.git.extensions.impl.CloneOption> <shallow>false</shallow> <noTags>true</noTags> <reference>/data/iojs/git/io.js.reference</reference> <timeout>20</timeout> <depth>0</depth> <honorRefspec>false</honorRefspec> </hudson.plugins.git.extensions.impl.CloneOption> <org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension plugin="node-version-jenkins-plugin@1.0-SNAPSHOT"> <exportNodejsVersion>true</exportNodejsVersion> </org.nodejs.jenkinsplugins.nodeversion.NodeVersionExtension> </extensions> </scm> <canRoam>true</canRoam> <disabled>false</disabled> <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding> <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding> <triggers/> <concurrentBuild>true</concurrentBuild> <customWorkspace>node-test-commit-custom-suites</customWorkspace> <builders> <hudson.tasks.Shell> <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> <command>#/bin/bash echo $NODE_NAME rm -rf build git clone https://github.com/nodejs/build.git . ./build/jenkins/scripts/select-compiler.sh SKIP_MESSAGE="ok" REVELANT_VERSION=1 if [ "$NODEJS_MAJOR_VERSION" -lt "6" ]; then REVELANT_VERSION= # 390 is only supported on v6 and later for now SKIP_MESSAGE="ok # skipped s390 not supported for versions less than 6, skipping" fi RELEVANT_SUITE=1 if [ "$CI_JS_SUITES" = "v8-updates" ] && [ "$NODEJS_MAJOR_VERSION" -lt "11" ]; then RELEVANT_SUITE= fi if [ "$TEST_ARGS" = "--worker" ] && [ "$NODEJS_MAJOR_VERSION" -lt "10" ]; then RELEVANT_SUITE= fi JOBS=$(getconf _NPROCESSORS_ONLN) if [ $REVELANT_VERSION ] && [ $RELEVANT_SUITE ]; then NODE_TEST_DIR=${HOME}/node-tmp NODE_COMMON_PORT=15000 PYTHON=python FLAKY_TESTS=$FLAKY_TESTS_MODE 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 else # fake out so we don't get failures mkdir out echo "1..1" >test.tap echo "ok 1 # skip $SKIP_MESSAGE" >> test.tap echo " ---" >> test.tap echo " duration_ms: 4.925" >> test.tap echo " ..." >> test.tap fi</command> </hudson.tasks.Shell> <hudson.tasks.Shell> <command>curl https://raw.githubusercontent.com/nodejs/build/master/jenkins/scripts/node-test-commit-diagnostics.sh | bash -ex -s after</command> </hudson.tasks.Shell> <hudson.tasks.Shell> <command>mkdir out/junit || true tap2junit -i test.tap -o out/junit/test.xml || true</command> </hudson.tasks.Shell> </builders> <publishers> <hudson.tasks.junit.JUnitResultArchiver plugin="junit@1.24"> <testResults>out/junit/*.xml</testResults> <keepLongStdio>true</keepLongStdio> <healthScaleFactor>1.0</healthScaleFactor> <allowEmptyResults>true</allowEmptyResults> </hudson.tasks.junit.JUnitResultArchiver> </publishers> <buildWrappers> <hudson.plugins.build__timeout.BuildTimeoutWrapper plugin="build-timeout@1.19"> <strategy class="hudson.plugins.build_timeout.impl.NoActivityTimeOutStrategy"> <timeoutSecondsString>900</timeoutSecondsString> </strategy> <operationList> <hudson.plugins.build__timeout.operations.FailOperation/> </operationList> </hudson.plugins.build__timeout.BuildTimeoutWrapper> <hudson.plugins.timestamper.TimestamperBuildWrapper plugin="timestamper@1.8.10"/> </buildWrappers> </project>
查找差异