Move composed to a folder
This commit is contained in:
31
compose/misc/Jenkinsfile.v2
Executable file
31
compose/misc/Jenkinsfile.v2
Executable file
@@ -0,0 +1,31 @@
|
||||
node {
|
||||
def commit_id
|
||||
stage('Preparation') {
|
||||
checkout scm
|
||||
sh "git rev-parse --short HEAD > .git/commit-id"
|
||||
commit_id = readFile('.git/commit-id').trim()
|
||||
}
|
||||
stage('test') {
|
||||
def myTestContainer = docker.image('node:4.6')
|
||||
myTestContainer.pull()
|
||||
myTestContainer.inside {
|
||||
sh 'npm install --only=dev'
|
||||
sh 'npm test'
|
||||
}
|
||||
}
|
||||
stage('test with a DB') {
|
||||
def mysql = docker.image('mysql').run("-e MYSQL_ALLOW_EMPTY_PASSWORD=yes")
|
||||
def myTestContainer = docker.image('node:4.6')
|
||||
myTestContainer.pull()
|
||||
myTestContainer.inside("--link ${mysql.id}:mysql") { // using linking, mysql will be available at host: mysql, port: 3306
|
||||
sh 'npm install --only=dev'
|
||||
sh 'npm test'
|
||||
}
|
||||
mysql.stop()
|
||||
}
|
||||
stage('docker build/push') {
|
||||
docker.withRegistry('https://index.docker.io/v1/', 'dockerhub') {
|
||||
def app = docker.build("wardviaene/docker-nodejs-demo:${commit_id}", '.').push()
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user