{"action":"opened","issue":{"url":"https://api.github.com/repos/heptio/sonobuoy/issues/255","repository_url":"https://api.github.com/repos/heptio/sonobuoy","labels_url":"https://api.github.com/repos/heptio/sonobuoy/issues/255/labels{/name}","comments_url":"https://api.github.com/repos/heptio/sonobuoy/issues/255/comments","events_url":"https://api.github.com/repos/heptio/sonobuoy/issues/255/events","html_url":"https://github.com/heptio/sonobuoy/issues/255","id":297498996,"number":255,"title":"Use a more clever daemonset driver","user":{"login":"chuckha","id":98927,"avatar_url":"https://avatars0.githubusercontent.com/u/98927?v=4","gravatar_id":"","url":"https://api.github.com/users/chuckha","html_url":"https://github.com/chuckha","followers_url":"https://api.github.com/users/chuckha/followers","following_url":"https://api.github.com/users/chuckha/following{/other_user}","gists_url":"https://api.github.com/users/chuckha/gists{/gist_id}","starred_url":"https://api.github.com/users/chuckha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chuckha/subscriptions","organizations_url":"https://api.github.com/users/chuckha/orgs","repos_url":"https://api.github.com/users/chuckha/repos","events_url":"https://api.github.com/users/chuckha/events{/privacy}","received_events_url":"https://api.github.com/users/chuckha/received_events","type":"User","site_admin":false},"labels":[{"id":656498656,"url":"https://api.github.com/repos/heptio/sonobuoy/labels/p2%20-%20Long-term%20Important","name":"p2 - Long-term Important","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-02-15T15:59:53Z","updated_at":"2018-02-15T15:59:53Z","closed_at":null,"author_association":"OWNER","body":"The k8s DaemonSet [requires the pod spec to have a restartPolicy of always][daemonset]. When a daemonset plugin is finished we have to make it sleep forever or else the daemonset will simply rerun it over and over until the aggregator shuts down the daemonset.\r\n\r\nA few approaches we could consider:\r\n\r\nAfter a pod finishes, we could create a taint on the node and evict the pod (but this requires existing pod eviction which is an alpha feature as of 1.9)\r\n\r\nWe could work around the alpha feature requirement by making a taint and deleting the pod manually.\r\n\r\nAlternatively we could launch a Pod directly onto each node and then our Daemonset driver would be a for loop around our Job driver.\r\n\r\nI'm sure there are many other approaches as well.\r\n\r\n[daemonset]: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/#pod-template"}}
{"actor":{"display_login":"chuckha"}}