我想在由 Kubernetes 插件动态旋转的 Jenkins 从 pod 上应用容忍度。我看到 Kubernetes 插件没有在 Jenkins UI 上提供任何选项来添加容忍度,如下图所示。谁能告诉我,在这种情况下,如何将容忍度添加到从属 pod(由 kubernetes 插件生成)。
P.S.:- 我不想使用标签,我非常想使用容忍度。而且我不确定是否要在 Jenkinsfile 中添加 podTemplate 并在此 podTemplate 中指定容忍度。因为这将迫使我对每个工作的 Jenkinsfile 做同样的事情,如果多个开发人员准备他们各自的管道,这很乏味而且不可能。
最佳答案
实际上,您可以直接向 jenkins 中的配置添加污点。
https://github.com/jenkinsci/kubernetes-plugin/pull/311#issuecomment-386342776
您可以将其添加到容器下的“pod 的原始 yaml”中,并相应地更新标签的条件。
我自己用过,确实有效。
(这是来自上面链接的 yaml)
apiVersion: v1
kind: Pod
metadata:
labels:
jenkins/kube-default: true
app: jenkins
component: agent
spec:
nodeSelector:
werkint.com/entity: other
tolerations:
- key: werkint.com/entity
operator: Equal
value: other
effect: NoSchedule
关于jenkins - 在 Jenkins 上的 Kubernetes 插件中为 pod 模板设置污点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49010909/