summaryrefslogtreecommitdiffstats
path: root/jenkins
diff options
context:
space:
mode:
authorAndreas Beeker <kiwiwings@apache.org>2017-07-31 18:21:48 +0000
committerAndreas Beeker <kiwiwings@apache.org>2017-07-31 18:21:48 +0000
commit1b7630a2e2ab14b5eab1d2085c4a22e1c8632bf0 (patch)
tree7b1e9f4ac01bf6db4d32373db19585c189f31d97 /jenkins
parent6c64f70189bbf2827b8833e29cb62301e21e5d27 (diff)
downloadpoi-1b7630a2e2ab14b5eab1d2085c4a22e1c8632bf0.tar.gz
poi-1b7630a2e2ab14b5eab1d2085c4a22e1c8632bf0.zip
Job DSL fix windows call / retrieve findbugs via powershell
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1803559 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'jenkins')
-rw-r--r--jenkins/create_jobs.groovy69
1 files changed, 48 insertions, 21 deletions
diff --git a/jenkins/create_jobs.groovy b/jenkins/create_jobs.groovy
index 8ea7f38d88..bd2e766606 100644
--- a/jenkins/create_jobs.groovy
+++ b/jenkins/create_jobs.groovy
@@ -65,11 +65,14 @@ def poijobs = [
],
[ name: 'POI-DSL-SonarQube-Gradle', jdk: '1.8', trigger: 'H 9 * * *', gradle: true, sonar: true, skipcigame: true
],
- [ name: 'POI-DSL-Windows-1.6', jdk: '1.6', trigger: 'H */12 * * *', skipcigame: true, windows: true, slaves: 'Windows', email: 'kiwiwings@apache.org'
+ [ name: 'POI-DSL-Windows-1.6', jdk: '1.6', trigger: 'H */12 * * *', skipcigame: true, windows: true, slaves: 'Windows', email: 'kiwiwings@apache.org',
+ addShell: 'if not exist lib/findbugs-noUpdateChecks-2.0.3.zip powershell -Command wget -Uri "http://downloads.sourceforge.net/project/findbugs/findbugs/2.0.3/findbugs-noUpdateChecks-2.0.3.zip?download=" -OutFile lib/findbugs-noUpdateChecks-2.0.3.zip -UserAgent [Microsoft.PowerShell.Commands.PSUsergAgent]::Chrome'
],
- [ name: 'POI-DSL-Windows-1.7', jdk: '1.7', trigger: 'H */12 * * *', skipcigame: true, windows: true, slaves: 'Windows', email: 'kiwiwings@apache.org'
+ [ name: 'POI-DSL-Windows-1.7', jdk: '1.7', trigger: 'H */12 * * *', skipcigame: true, windows: true, slaves: 'Windows',
+ disabled: true
],
- [ name: 'POI-DSL-Windows-1.8', jdk: '1.8', trigger: 'H */12 * * *', skipcigame: true, windows: true, slaves: 'Windows', email: 'kiwiwings@apache.org'
+ [ name: 'POI-DSL-Windows-1.8', jdk: '1.8', trigger: 'H */12 * * *', skipcigame: true, windows: true, slaves: 'Windows',
+ disabled: true
],
]
@@ -90,6 +93,14 @@ def jdkMapping = [
'IBMJDK': 'IBM 1.8 64-bit (on Ubuntu only)',
]
+def shellEx(def context, String cmd, def poijob) {
+ if (poijob.windows) {
+ context.batchFile(cmd)
+ } else {
+ context.shell(cmd)
+ }
+}
+
poijobs.each { poijob ->
def jdkKey = poijob.jdk ?: defaultJdk
def trigger = poijob.trigger ?: defaultTrigger
@@ -169,22 +180,38 @@ for more details about the DSL.</b>
scm(trigger)
}
- def shellcmds = '# show which files are currently modified in the working copy\n' +
- 'svn status\n' +
- '\n' +
- '# print out information about which exact version of java we are using\n' +
- 'echo Java-Home: $JAVA_HOME\n' +
- 'ls -al $JAVA_HOME/\n' +
- '$JAVA_HOME/bin/java -version\n' +
- '\n' +
- (poijob.shell ?: '') + '\n' +
- '# ignore any error message\n' +
- 'exit 0\n'
+ def shellCmdsUnix =
+'''# show which files are currently modified in the working copy
+svn status
+
+# print out information about which exact version of java we are using
+echo Java-Home: $JAVA_HOME
+ls -al $JAVA_HOME/
+$JAVA_HOME/bin/java -version
+'''+(poijob.shell ?: '')+
+'''# ignore any error message
+exit 0'''
+
+ def shellCmdsWin =
+'''@echo off
+:: show which files are currently modified in the working copy
+svn status
+
+:: print out information about which exact version of java we are using
+echo Java-Home: %JAVA_HOME%
+dir "%JAVA_HOME%"
+"%JAVA_HOME%/bin/java" -version
+'''+(poijob.shell ?: '')+
+'''
+:: ignore any error message
+exit 0'''
+
+ def shellcmds = (poijob.windows) ? shellCmdsWin : shellCmdsUnix
// Create steps and publishers depending on the type of Job that is selected
if(poijob.maven) {
steps {
- shell(shellcmds)
+ shellEx(delegate, shellcmds, poijob)
maven {
goals('clean')
rootPOM('sonar/pom.xml')
@@ -220,7 +247,7 @@ for more details about the DSL.</b>
}
} else if (poijob.javadoc) {
steps {
- shell(shellcmds)
+ shellEx(delegate, shellcmds, poijob)
ant {
targets(['clean', 'javadocs'] + (poijob.properties ?: []))
prop('coverage.enabled', true)
@@ -228,7 +255,7 @@ for more details about the DSL.</b>
//properties(poijob.properties ?: '')
antInstallation(antRT)
}
- shell('zip -r build/javadocs.zip build/tmp/site/build/site/apidocs')
+ shellEx(delegate, 'zip -r build/javadocs.zip build/tmp/site/build/site/apidocs', poijob)
}
publishers {
if (!poijob.skipcigame) {
@@ -240,7 +267,7 @@ for more details about the DSL.</b>
}
} else if (poijob.apicheck) {
steps {
- shell(shellcmds)
+ shellEx(delegate, shellcmds, poijob)
gradle {
tasks('japicmp')
useWrapper(false)
@@ -257,7 +284,7 @@ for more details about the DSL.</b>
}
} else if(poijob.sonar) {
steps {
- shell(shellcmds)
+ shellEx(delegate, shellcmds, poijob)
gradle {
switches('-PenableSonar')
switches('-Dsonar.host.url=$SONAR_HOST_URL')
@@ -275,9 +302,9 @@ for more details about the DSL.</b>
}
} else {
steps {
- shell(shellcmds)
+ shellEx(delegate, shellcmds, poijob)
if(poijob.addShell) {
- shell(poijob.addShell)
+ shellEx(delegate, poijob.addShell, poijob)
}
// For Jobs that should still have the default set of publishers we can configure different steps here
if(poijob.gradle) {