pipeline { agent any parameters { buildSelector( defaultSelector: lastSuccessful(), description: 'Which build to use for copying artifacts', name: 'BUILD_SELECTOR' ) string( defaultValue: '1000', description: 'CUTOFF', name: 'CUTOFF', trim: false ) } stages { stage('Copy artifacts') { steps { script { copyArtifacts fingerprintArtifacts: true, projectName: 'z-s464906-create-dataset', selector: buildParameter('BUILD_SELECTOR') } } post { success { echo 'Artifacts copied successfully.' } } } stage('Set execute permission') { steps { script { sh 'chmod +x data_processing.sh' } } } stage('Run shell script') { steps { script { sh './calculate_stats.sh' } } post { success { archiveArtifacts artifacts: 'stats.txt', allowEmptyArchive: true } } } } }