Jenkins 2.0 管道脚本 Docker 容器
下面是一个构建 Docker 容器的管道脚本示例,然后在其中运行测试。假设入口点是 manage.py
或 invoke
/ fabric
,并且可以使用 runtests
命令。
#!/usr/bin/groovy
node {
stage 'Checkout'
checkout scm
sh 'git submodule update --init --recursive'
imageName = 'mycontainer:build'
remotes = [
'dockerhub-account',
]
stage 'Build'
def djangoImage = docker.build imageName
stage 'Run Tests'
djangoImage.run('', 'runtests')
stage 'Push'
for (int i = 0; i < remotes.size(); i++) {
sh "docker tag ${imageName} ${remotes[i]}/${imageName}"
sh "docker push ${remotes[i]}/${imageName}"
}
}