Jenkins DSL:

* Enable SCM-retry to see if that helps against the frequent SVN update failures
* Add a POI-DSL-Test-Environment to have this Job also defined via DSL

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1808525 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Dominik Stadler 2017-09-16 09:08:45 +00:00
parent 51826d781b
commit 9ed85b0484

View File

@ -102,7 +102,7 @@ def jdkMapping = [
'IBMJDK': 'IBM 1.8 64-bit (on Ubuntu only)',
]
def shellEx(def context, String cmd, def poijob) {
static def shellEx(def context, String cmd, def poijob) {
if (poijob.windows) {
context.batchFile(cmd)
} else {
@ -143,7 +143,7 @@ def sonarDesc = '''
'''
def shellCmdsUnix =
'''# show which files are currently modified in the working copy
'''# show which files are currently modified in the working copy
svn status
# print out information about which exact version of java we are using
@ -157,7 +157,7 @@ POIJOBSHELL
exit 0'''
def shellCmdsWin =
'''@echo off
'''@echo off
:: show which files are currently modified in the working copy
svn status
@ -215,6 +215,8 @@ poijobs.each { poijob ->
url << 'http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN'
}
}
checkoutRetryCount(3)
triggers {
scm(trigger)
}
@ -387,6 +389,63 @@ poijobs.each { poijob ->
}
}
matrixJob('POI-DSL-Test-Environment') {
description(
'''
Check installed version of Java/Ant on all build-nodes
This job is used to verify which machines actually have the required programs installed.
Unfortunately we often see builds break because of changes/new machines...'''
)
/*throttleConcurrentBuilds {
maxPerNode(1)
maxTotal(1)
}*/
logRotator {
numToKeep(5)
artifactNumToKeep(1)
}
axes {
jdk(
'JDK 1.8 (latest)',
'OpenJDK 8 (on Ubuntu only) ', // blank is required here until the name in the Jenkins instance is fixed!
'IBM 1.8 64-bit (on Ubuntu only)',
'JDK 1.9 (latest)',
'JDK 9 b181',
'JDK 9 b181 (unlimited security)'
)
label(
'beam1,beam2,beam3,beam4,beam5,beam6,beam7,beam8,' +
'freebsd1,' +
'H0,H1,H10,H11,H12,H13,H14,H15,H16,H17,H18,H19,H2,H20,H21,H22,H23,H24,H25,H26,H27,H3,H4,H5,H6,H7,H8,H9,' +
'qnode1,qnode2,qnode3,' +
'ubuntu-1,ubuntu-2,ubuntu-4,ubuntu-5,ubuntu-6,ubuntu-eu2,ubuntu-eu3,ubuntu-ppc64le,ubuntu-us1,' +
'windows-2012-1,windows-2012-2,windows-2012-3'
)
}
steps {
/*if (poijob.windows) {
context.batchFile(cmd)
} else {*/
shell('''
which javac
javac -version
echo '<?xml version="1.0"?><project name="POI Build" default="test"><target name="test"><echo>Using Ant: ${ant.version} from ${ant.home}</echo></target></project>' > build.xml
''')
//}
ant {
antInstallation(defaultAnt)
}
}
publishers {
mailer('centic@poi.apache.org' /* defaultEmail */, false, false)
}
}
/* I tried to put the view into a sub-folder/sub-view, but failed, there are multiple related
plugins so this is all a bit confusing :(, see also https://issues.apache.org/jira/browse/INFRA-14002
dashboardView("P/POI-new") {
@ -410,23 +469,23 @@ dashboardView("P/POI-new") {
// Job selection
jobs {*/
//regex(/.*POI.*/)
/*}
//regex(/.*POI.*/)
/*}
// Layout
topPortlets {
// Layout
topPortlets {
jenkinsJobsList {
displayName('POI jobs')
}
}
leftPortlets {
}
leftPortlets {
testStatisticsChart()
}
rightPortlets {
}
rightPortlets {
testTrendChart()
}
bottomPortlets {
}
bottomPortlets {
testStatisticsGrid()
buildStatistics()
}
}
}*/