pipeline { agent any // triggers { // upstream(upstreamProjects: "s426206-train/master", // threshold: hudson.model.Result.SUCCESS) // } parameters { buildSelector( defaultSelector: lastSuccessful(), description: 'Which build to use for copying artifacts for training', name: 'BUILD_SELECTOR_TRAINING') buildSelector( defaultSelector: lastSuccessful(), description: 'Which build to use for copying artifacts for dataset', name: 'BUILD_SELECTOR_DATASET') buildSelector( defaultSelector: lastSuccessful(), description: 'Which build to use for copying artifacts for evaluation', name: 'BUILD_SELECTOR_EVALUATION') gitParameter branch: '', branchFilter: 'origin/(.*)', defaultValue: 'master', description: '', name: 'BRANCH', quickFilterEnabled: false, selectedValue: 'NONE', sortMode: 'NONE', tagFilter: '*', type: 'PT_BRANCH' } stages { stage('checkout') { steps { checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[url: 'https://git.wmi.amu.edu.pl/s426206/ium_426206.git']]]) } } stage('Copy artifact') { steps { copyArtifacts filter: 'model.pt', fingerprintArtifacts: false, projectName: 's426206-training/${BRANCH}', selector: buildParameter('BUILD_SELECTOR_TRAINING') copyArtifacts filter: 'val_dataset.pt', fingerprintArtifacts: false, projectName: 's426206-create-dataset', selector: buildParameter('BUILD_SELECTOR_DATASET') copyArtifacts filter: 'metrics.tsv', fingerprintArtifacts: false, optional: true, projectName: 's426206-evaluation/master', selector: buildParameter('BUILD_SELECTOR_EVALUATION') } } stage('docker') { steps { script { def img = docker.build('rokoch/ium:01') img.inside { sh 'chmod +x evaluation.py plot.py' sh 'python3 ./evaluation.py >> metrics.tsv' sh 'python3 ./plot.py' } } } } stage('end') { steps { //Zarchiwizuj wynik archiveArtifacts 'metrics.tsv, plot.png' } } } post { success { //Wysłanie maila emailext body: 'Success evaluation', subject: 's426206 evaluation', to: '26ab8f35.uam.onmicrosoft.com@emea.teams.ms' } unstable { emailext body: 'Unstable evaluation', subject: 's426206 evaluation', to: '26ab8f35.uam.onmicrosoft.com@emea.teams.ms' } failure { emailext body: 'Failure evaluation', subject: 's426206 evaluation', to: '26ab8f35.uam.onmicrosoft.com@emea.teams.ms' } changed { emailext body: 'Changed evaluation', subject: 's426206 evaluation', to: '26ab8f35.uam.onmicrosoft.com@emea.teams.ms' } } }