node { stage('Preparation') { properties([ parameters([ string( defaultValue: 'login', description: 'Kaggle username', name: 'KAGGLE_USERNAME', trim: false ), password( defaultValue: '', description: 'Kaggle token taken from kaggle.json file, as described in https://github.com/Kaggle/kaggle-api#api-credentials', name: 'KAGGLE_KEY' ), string( defaultValue: '7999', description: 'Cut off value', name: 'CUT', trim: false ) ]) ]) } stage('checkout: Check out from version control') { checkout scm } stage('sh: Shell Script') { // Run the maven build withEnv(["KAGGLE_USERNAME=${params.KAGGLE_USERNAME}", "KAGGLE_KEY=${params.KAGGLE_KEY}" ]) { def cut = ${params.CUT} sh 'kaggle datasets download -d mssmartypants/water-quality > output.txt' sh 'unzip -o water-quality.zip >> output.txt' sh 'python3 create_dataset.py ${cut} >> output.txt' archiveArtifacts artifacts: 'waterQuality.csv, output.txt' } } }