pipeline { agent { dockerfile true } triggers { upstream(upstreamProjects: 's464937-training/training', threshold: hudson.model.Result.SUCCESS) } parameters { buildSelector(defaultSelector: lastSuccessful(), description: 'Which build to use for copying artifacts', name: 'BUILD_SELECTOR') gitParameter branchFilter: 'origin/(.*)', defaultValue: 'training', name: 'BRANCH', type: 'PT_BRANCH' } stages { stage('Clone Repository') { steps { git branch: 'evaluation', url: "https://git.wmi.amu.edu.pl/s464937/ium_464937" } } stage('Copy Dataset Artifacts') { steps { copyArtifacts filter: 'data/dev.csv,data/test.csv,data/train.csv', projectName: 'z-s464937-create-dataset', selector: buildParameter('BUILD_SELECTOR') } } stage('Copy Training Artifacts') { steps { copyArtifacts filter: 'powerlifting_model.h5', projectName: 's464937-training/' + params.BRANCH, selector: buildParameter('BUILD_SELECTOR') } } stage('Copy Evaluation Artifacts') { steps { copyArtifacts filter: 'metrics.txt', projectName: '_s464937-evaluation/evaluation', selector: buildParameter('BUILD_SELECTOR'), optional: true } } stage("Run predictions") { steps { sh "chmod +x ./predict.py" sh "python3 ./predict.py" archiveArtifacts artifacts: 'powerlifting_test_predictions.csv', onlyIfSuccessful: true } } stage('Run metrics') { steps { sh 'chmod +x ./metrics.py' sh "python3 ./metrics.py ${currentBuild.number}" } } stage('Run plot') { steps { sh 'chmod +x ./plot.py' sh 'python3 ./plot.py' } } stage('Archive Artifacts') { steps { archiveArtifacts artifacts: '*', onlyIfSuccessful: true } } } }