mapgen/Jenkinsfile

63 lines
1.8 KiB
Plaintext
Raw Normal View History

2018-09-22 13:59:01 +03:00
#!groovy
2018-09-23 12:01:34 +03:00
def remote = [:]
remote.host = "oreolek.ru"
remote.name = remote.host
2018-09-23 13:25:40 +03:00
remote.allowAnyHosts = false
2018-09-23 12:01:34 +03:00
remote.knownHosts = "/var/lib/jenkins/.ssh/known_hosts"
2018-09-22 14:17:19 +03:00
node {
2018-09-22 13:59:01 +03:00
currentBuild.result = "SUCCESS";
try {
stage('Checkout'){
checkout scm
}
stage('Build'){
2018-09-22 14:19:43 +03:00
env.NODE_ENV = "development";
sh 'yarn install';
2018-09-22 17:26:17 +03:00
sh './node_modules/gulp/bin/gulp.js dist';
2018-09-22 13:59:01 +03:00
}
2018-09-23 12:01:34 +03:00
withCredentials([sshUserPrivateKey(
credentialsId: 'f8d69fad-cd63-43ca-8e4e-411f4cf8ac73',
keyFileVariable: 'identity',
passphraseVariable: 'passPhrase',
usernameVariable: 'userName'
)]) {
stage('Deploy'){
echo 'Copy to web server';
remote.user = userName
remote.passphrase = passPhrase
remote.identityFile = identity
2018-10-10 14:59:41 +03:00
sh 'rm -rf city_landscape'
sh 'mv dist city_landscape'
sshPut remote: remote, from: './city_landscape', into: '/var/www/oreolek/my_games/'
sh 'mv city_landscape dist'
2018-09-22 14:14:43 +03:00
}
2018-09-22 13:59:01 +03:00
}
stage('Cleanup'){
echo 'prune and cleanup';
2018-09-22 14:14:43 +03:00
sh 'npm prune';
2018-09-23 13:25:40 +03:00
sh 'rm -rf build dist';
2018-09-22 13:59:01 +03:00
emailext (
subject: "SUCCESSFUL: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
body: """<p>SUCCESSFUL: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
<p>Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"</p>""",
2018-09-22 14:14:43 +03:00
recipientProviders: [developers()]
);
2018-09-22 13:59:01 +03:00
}
2018-09-22 14:14:43 +03:00
}
catch (err) {
currentBuild.result = "FAILURE";
2018-09-23 13:30:41 +03:00
sh 'rm -rf build dist';
2018-09-22 13:59:01 +03:00
2018-09-22 14:14:43 +03:00
emailext (
subject: "FAILURE: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
body: """<p>FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
<p>Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"</p>""",
recipientProviders: [developers()]
)
throw err
2018-09-22 13:59:01 +03:00
}
2018-09-22 14:14:43 +03:00
}