plate-tool/Jenkinsfile

41 lines
854 B
Groovy

pipeline {
agent any
stages {
stage('Build') {
steps {
sh '''
. "$HOME/.cargo/env"
trunk build --release --public-url "cool-stuff/plate-tool-beta/"
'''
}
}
stage('Archive') {
steps {
zip zipFile: "dist.zip", archive: true, dir: "dist/"
archiveArtifacts artifacts: "dist.zip", fingerprint: true
}
}
stage('Transfer') {
steps {
sh 'echo "put -r dist/" | sftp oracle'
}
}
stage('Deploy') {
steps {
sh '''
ssh oracle "sudo rm -rf /usr/share/nginx/html/plate-tool-beta/ && sudo mv dist /usr/share/nginx/html/plate-tool-beta"
'''
}
}
}
post {
always {
cleanWs(notFailBuild: true,
deleteDirs: true,
cleanWhenNotBuilt: false,
patterns: [[pattern: 'target/', type: 'EXCLUDE']])
}
}
}