【发布时间】:2021-08-02 22:09:42
【问题描述】:
我正在使用 Jenkins 声明式管道,想知道是否有任何方法可以仅定期触发特定阶段。
我的意思是当我们检查 SCM 时,管道会触发,但是对于我们的某些项目来说,第 2 阶段花费的时间太长。因此,我不想等待这个阶段,而是希望每天运行这个阶段,但仍将这个阶段保留在 jenkinsfile 中。
有什么方法可以实现吗?这样做的最佳方法是什么?
stage('Stage 1') {
steps {
script {
// do something
)
}
}
}
stage('Stage 2') {
triggers {
cron('H H 0 0 0')
}
steps {
script {
// do something
)
}
}
}
stage('Stage 2') {
steps {
script {
// do something
)
}
}
}
【问题讨论】:
-
我提供的解决方案对你有用吗
-
@Altaf,我现在正在尝试,但令人困惑的是管道是如何触发的?我的意思是如何在不触发的情况下启动它?我希望它需要在没有 SCM 的情况下触发,例如
triggers{}正在做什么 -
@seumral : 您可以从构建触发器部分下的 jenkins 配置中触发,因此您不需要在管道脚本中添加它
-
@Altaf,所以它会只触发这个阶段还是完整的管道?
标签: jenkins jenkins-pipeline jenkins-declarative-pipeline