55 lines
2.0 KiB
Plaintext
55 lines
2.0 KiB
Plaintext
pipeline {
|
|
agent {
|
|
docker {
|
|
image 'mikolajk/ium:mlflow'
|
|
args '-v /mlruns:/mlruns'
|
|
}
|
|
}
|
|
parameters{
|
|
gitParameter branchFilter: 'origin/(.*)', defaultValue: 'master', name: 'BRANCH', type: 'PT_BRANCH'
|
|
buildSelector(
|
|
defaultSelector: lastSuccessful(),
|
|
description: 'Which build to use for copying artifacts',
|
|
name: 'BUILD_SELECTOR'
|
|
)
|
|
}
|
|
stages {
|
|
stage('Copy prev build artifact') {
|
|
steps {
|
|
script {
|
|
if (currentBuild.previousBuild) {
|
|
try {
|
|
copyArtifacts(projectName: currentBuild.projectName,
|
|
selector: specific("${currentBuild.previousBuild.number}"))
|
|
def previousFile = readFile(file: "trainResults.csv")
|
|
echo("The current build is ${currentBuild.number}")
|
|
echo("The previous build artifact was: ${previousFile}")
|
|
} catch(err) {
|
|
// ignore error
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stage('Copy') {
|
|
steps {
|
|
copyArtifacts projectName: 's444417-create-dataset'
|
|
copyArtifacts projectName: "s444417-training/${params.BRANCH}/", selector: buildParameter('BUILD_SELECTOR'), optional: true
|
|
sh 'python3 ./src/evalScript.py'
|
|
archiveArtifacts 'trainResults.csv, metrics.png'
|
|
script {
|
|
metric = sh (
|
|
script: 'tail -1 trainResults.csv',
|
|
returnStdout: true
|
|
).trim()
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
post {
|
|
always {
|
|
emailext body: "${currentBuild.currentResult}, (number, loss): ${metric}", subject: 's444417-evaluation build status', to: 'e19191c5.uam.onmicrosoft.com@emea.teams.ms'
|
|
}
|
|
}
|
|
} |