daemonset controller should respect taints

This commit is contained in:
Mike Danese
2016-08-19 11:26:47 -07:00
parent ea805efa4f
commit 00f05b441e
2 changed files with 38 additions and 0 deletions

View File

@@ -583,3 +583,31 @@ func TestNodeAffinityDaemonLaunchesPods(t *testing.T) {
manager.dsStore.Add(daemon)
syncAndValidateDaemonSets(t, manager, daemon, podControl, 3, 0)
}
func TestNodeTaintDaemonDoesntLaunchIntolerantPods(t *testing.T) {
manager, podControl := newTestController()
node := newNode("", nil)
node.ObjectMeta.Annotations = map[string]string{
api.TaintsAnnotationKey: `[{"key":"dedictated","value":"master","effect":"NoSchedule"}]`,
}
manager.nodeStore.Store.Add(node)
daemon := newDaemonSet("foo")
manager.dsStore.Add(daemon)
syncAndValidateDaemonSets(t, manager, daemon, podControl, 0, 0)
}
func TestNodeTaintDaemonLaunchesTolerantPods(t *testing.T) {
manager, podControl := newTestController()
node := newNode("", nil)
node.ObjectMeta.Annotations = map[string]string{
api.TaintsAnnotationKey: `[{"key":"dedictated","value":"master","effect":"NoSchedule"}]`,
}
manager.nodeStore.Store.Add(node)
daemon := newDaemonSet("foo")
daemon.Spec.Template.ObjectMeta.Annotations = map[string]string{
api.TolerationsAnnotationKey: `[{"key":"dedictated","operator":"Equal","value":"master"}]`,
}
manager.dsStore.Add(daemon)
syncAndValidateDaemonSets(t, manager, daemon, podControl, 1, 0)
}