workout/Jenkinsfile

27 lines
825 B
Groovy

pipeline {
agent any
stages {
stage('Build') {
steps {
sh 'docker build --pull -t workout:jenkins .'
}
}
stage('test') {
steps {
sh 'docker container stop pg || true'
sh 'docker container stop workout || true'
sh 'docker network create test_workout || true'
sh 'docker container run --rm --name pg --network test_workout -d postgres'
sh 'docker container run --rm --name workout --network test_workout -p 8000:8000 -e DATABASE_URL=postgres://postgres:postgres@pg:5432/postgres -e SECRET_KEY=secret -d workout:jenkins /bin/bash'
sh 'curl http://localhost:8000'
}
}
}
post {
always {
sh 'docker container stop pg'
sh 'docker container stop workout'
sh 'docker network remove test_workout'
}
}
}