add jenkins files

This commit is contained in:
Timo Hocker 2019-12-20 13:27:02 +01:00
parent a174e49ae9
commit 8a97ad980d
2 changed files with 51 additions and 0 deletions

46
Jenkinsfile vendored Normal file
View File

@ -0,0 +1,46 @@
pipeline {
agent any
environment {
VERSION = VersionNumber([
versionNumberString:
'${BUILDS_ALL_TIME}',
versionPrefix: '1.0.',
worstResultForIncrement: 'SUCCESS'
])
publish = 0
}
stages {
stage('Setup') {
steps {
echo 'Setting up test environment'
sh 'npm ci'
sh 'nodejs jenkins.js ${VERSION}'
script {
currentBuild.displayName = env.VERSION
}
}
}
stage('Testing') {
steps {
echo 'Running tests...'
sh 'npm test'
}
}
}
post {
success {
script {
publish = sh script: "git log -1 | grep '\\[no publish\\]'", returnStatus: true
if (publish != 0) {
echo 'Deploying'
sh 'npm publish'
} else {
echo 'Build successful, Commit not marked for deploying'
currentBuild.result = "UNSTABLE"
}
}
}
}
}

5
jenkins.js Normal file
View File

@ -0,0 +1,5 @@
const fs = require('fs')
const pkg = JSON.parse(fs.readFileSync('package.json', 'utf-8'))
pkg.version = process.argv[2]
fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2))