Jos*_*hua 4 jenkins docker dockerfile jenkins-pipeline
Jenkins 使用Declarative Pipeline Syntax如何Dockerfile.ci从 SCM (Git)获取 Dockerfile(在本例中),因为agent块是在所有阶段之前执行的?
pipeline {
agent {
dockerfile {
filename 'Dockerfile.ci'
}
}
stage ('Checkout') {
steps {
git(
url: 'https://www.github.com/...',
credentialsId: 'CREDENTIALS',
branch: "develop"
)
}
}
[...]
}
Run Code Online (Sandbox Code Playgroud)
在我看到的所有示例中,Dockerfile 似乎已经存在于工作区中。
小智 5
您可以尝试分别为每个阶段声明代理,对于结帐阶段,您可以为其他阶段使用一些默认代理和 docker 代理。
pipeline {
agent none
stage ('Checkout') {
agent any
steps {
git(
url: 'https://www.github.com/...',
credentialsId: 'CREDENTIALS',
branch: "develop"
)
}
}
stage ('Build') {
agent {
dockerfile {
filename 'Dockerfile.ci'
}
steps {
[...]
}
}
}
[...]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6104 次 |
| 最近记录: |