pipeline { agent any parameters { string(name: 'IMAGE_NAME', defaultValue: '', description: 'IMAGE_NAME') string(name: 'GWBT_RELEASE_ID', defaultValue: '', description: 'GWBT_RELEASE_ID') string(name: 'GWBT_RELEASE_BODY', defaultValue: '', description: 'GWBT_RELEASE_BODY') } stages { stage('Zip image') { steps { echo 'Zip image' sh "zip $BUILD_DIRECTORY/$IMAGE_NAME.zip $BUILD_DIRECTORY/$IMAGE_NAME" echo 'End of Zipping' } } stage('Upload image') { environment { CONFIG_FILE = 'coex-ci.conf' } steps { echo 'Upload image' parameters { string(name: 'IMAGE_LINK', defaultValue: '$($WORKSPACE/image/yadisk.py $BUILD_DIRECTORY/$CONFIG_FILE $BUILD_DIRECTORY/$IMAGE_NAME.zip)', description: 'IMAGE_NAME') } echo 'End of Upload' } } stage('Send image to TESTER') { steps { echo 'Send image' sh "# TODO" echo 'End of Send image' } } stage('Burn to MicroSD') { steps { echo 'Start Burn' sh "# dd of=/dev/sda if=$BUILD_DIRECTORY/$IMAGE_NAME" echo 'End of Burn' } } stage('Publish image') { environment { CONFIG_FILE = 'coex-ci.conf' } steps { echo 'Start Publish' sh "$WORKSPACE/image/git_release.py $BUILD_DIRECTORY/$CONFIG_FILE ${params.GWBT_RELEASE_ID} ${params.GWBT_RELEASE_BODY} $IMAGE_NAME $IMAGE_LINK $(du -sh $BUILD_DIRECTORY/$IMAGE_NAME.zip | awk '{ print $1 }')" echo 'End of Publish' } } } environment { BUILD_DIRECTORY = '/home/pi/temp' } }