Moved hal to Jenkins pipeline
This commit is contained in:
parent
89c65fb61f
commit
893122e111
2 changed files with 63 additions and 20 deletions
43
Jenkinsfile
vendored
Executable file
43
Jenkinsfile
vendored
Executable file
|
|
@ -0,0 +1,43 @@
|
|||
// Jenkinsfile (Pipeline Script)
|
||||
node {
|
||||
// Configure environment
|
||||
env.JAVA_HOME = tool name: 'JDK8'
|
||||
env.REPO_URL = "repo.koc.se/hal.git" //scm.getUserRemoteConfigs()[0].getUrl()
|
||||
env.BUILD_NAME = "BUILD-" + env.BUILD_ID
|
||||
|
||||
|
||||
checkout scm
|
||||
|
||||
stage('Build') {
|
||||
sh 'ant clean'
|
||||
sh 'ant build'
|
||||
}
|
||||
|
||||
stage('Test') {
|
||||
try {
|
||||
sh 'ant test'
|
||||
} finally {
|
||||
step([$class: 'JUnitResultArchiver', testResults: 'build/reports/*.xml'])
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
stage('Package') {
|
||||
sh 'ant package'
|
||||
archiveArtifacts artifacts: 'build/release/*', fingerprint: true
|
||||
|
||||
// Tag artifact
|
||||
withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'f8e5f6c6-4adb-4ab2-bb5d-1c8535dff491',
|
||||
usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {
|
||||
sh "git tag ${env.BUILD_NAME}"
|
||||
sh "git push 'https://${USERNAME}:${PASSWORD}@${env.REPO_URL}' ${env.BUILD_NAME}"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//stage('Deploy') {
|
||||
// input message: 'Deploy?', submitter: 'ziver'
|
||||
// node {
|
||||
// sh 'ant deploy'
|
||||
// }
|
||||
//}
|
||||
40
build.xml
40
build.xml
|
|
@ -8,13 +8,13 @@
|
|||
<property name="srcDir" value="${gitRoot}/src" />
|
||||
<property name="testDir" value="${gitRoot}/test" />
|
||||
<property name="libDir" value="${gitRoot}/lib" />
|
||||
<property name="buildRoot" value="${gitRoot}/build" />
|
||||
<property name="buildDir" value="${buildRoot}/production" />
|
||||
<property name="buildTestDir" value="${buildRoot}/test" />
|
||||
<property name="releaseDir" value="${buildRoot}/release" />
|
||||
<property name="reportsDir" value="${buildRoot}/reports" />
|
||||
<property name="outputRoot" value="${gitRoot}/build" />
|
||||
<property name="buildDir" value="${outputRoot}/production" />
|
||||
<property name="buildTestDir" value="${outputRoot}/test" />
|
||||
<property name="releaseDir" value="${outputRoot}/release" />
|
||||
<property name="reportsDir" value="${outputRoot}/reports" />
|
||||
|
||||
<!--define standard arduments for javac-->
|
||||
<!--define standard arguments for javac-->
|
||||
<presetdef name="javac">
|
||||
<javac includeantruntime="false" />
|
||||
</presetdef>
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
<!-- ________________________ EXECUTION TARGETS ________________________ -->
|
||||
|
||||
<target name="run" depends="release">
|
||||
<target name="run" depends="package">
|
||||
<java fork="true" failonerror="true" classname="se.hal.HalServer">
|
||||
<classpath>
|
||||
<pathelement path="${releaseDir}/hal.jar"/>
|
||||
|
|
@ -46,7 +46,7 @@
|
|||
</java>
|
||||
</target>
|
||||
|
||||
<target name="remote-debug" depends="release">
|
||||
<target name="remote-debug" depends="package">
|
||||
<java fork="true" failonerror="true" classname="se.hal.HalServer">
|
||||
<jvmarg value="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" />
|
||||
<classpath>
|
||||
|
|
@ -74,22 +74,11 @@
|
|||
<!--clean all build paths-->
|
||||
<target name="clean">
|
||||
<delete includeemptydirs="true" failonerror="false">
|
||||
<fileset dir="${buildRoot}" includes="**/*"/>
|
||||
<fileset dir="${outputRoot}" includes="**/*"/>
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
<!--build product code-->
|
||||
<target name="release" depends="build">
|
||||
<copy file="${gitRoot}/hal.conf.example" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/hal-default.db" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/logging.properties" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/run.sh" todir="${releaseDir}" />
|
||||
<copydir src="${libDir}" dest="${releaseDir}/lib"
|
||||
excludes="junit-*.jar,hamcrest-*.jar" />
|
||||
<copydir src="resource/web" dest="${releaseDir}/resource/web" />
|
||||
<jar destfile="${releaseDir}/hal.jar" basedir="${buildDir}" />
|
||||
</target>
|
||||
|
||||
<target name="build" depends="build-dependencies">
|
||||
<mkdir dir="${buildDir}" />
|
||||
<javac srcdir="${srcDir}" destdir="${buildDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
||||
|
|
@ -122,6 +111,17 @@
|
|||
</copy>
|
||||
</target>
|
||||
|
||||
<target name="package" depends="build">
|
||||
<copy file="${gitRoot}/hal.conf.example" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/hal-default.db" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/logging.properties" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/run.sh" todir="${releaseDir}" />
|
||||
<copydir src="${libDir}" dest="${releaseDir}/lib"
|
||||
excludes="junit-*.jar,hamcrest-*.jar" />
|
||||
<copydir src="resource/web" dest="${releaseDir}/resource/web" />
|
||||
<jar destfile="${releaseDir}/hal.jar" basedir="${buildDir}" />
|
||||
</target>
|
||||
|
||||
|
||||
<!-- ________________________ UTILITY TARGETS ________________________ -->
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue