{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/21552","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/21552/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/21552/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/21552/events","html_url":"https://github.com/kubernetes/kubernetes/pull/21552","id":134905008,"number":21552,"title":"Autoregister volume plugins","user":{"login":"jsafrane","id":1745006,"avatar_url":"https://avatars.githubusercontent.com/u/1745006?v=3","gravatar_id":"","url":"https://api.github.com/users/jsafrane","html_url":"https://github.com/jsafrane","followers_url":"https://api.github.com/users/jsafrane/followers","following_url":"https://api.github.com/users/jsafrane/following{/other_user}","gists_url":"https://api.github.com/users/jsafrane/gists{/gist_id}","starred_url":"https://api.github.com/users/jsafrane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsafrane/subscriptions","organizations_url":"https://api.github.com/users/jsafrane/orgs","repos_url":"https://api.github.com/users/jsafrane/repos","events_url":"https://api.github.com/users/jsafrane/events{/privacy}","received_events_url":"https://api.github.com/users/jsafrane/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/cla:%20yes","name":"cla: yes","color":"bfe5bf"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/size/XL","name":"size/XL","color":"ee5500"}],"state":"open","locked":false,"assignee":{"login":"smarterclayton","id":1163175,"avatar_url":"https://avatars.githubusercontent.com/u/1163175?v=3","gravatar_id":"","url":"https://api.github.com/users/smarterclayton","html_url":"https://github.com/smarterclayton","followers_url":"https://api.github.com/users/smarterclayton/followers","following_url":"https://api.github.com/users/smarterclayton/following{/other_user}","gists_url":"https://api.github.com/users/smarterclayton/gists{/gist_id}","starred_url":"https://api.github.com/users/smarterclayton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smarterclayton/subscriptions","organizations_url":"https://api.github.com/users/smarterclayton/orgs","repos_url":"https://api.github.com/users/smarterclayton/repos","events_url":"https://api.github.com/users/smarterclayton/events{/privacy}","received_events_url":"https://api.github.com/users/smarterclayton/received_events","type":"User","site_admin":false},"milestone":null,"comments":7,"created_at":"2016-02-19T16:17:53Z","updated_at":"2016-02-20T04:51:20Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/21552","html_url":"https://github.com/kubernetes/kubernetes/pull/21552","diff_url":"https://github.com/kubernetes/kubernetes/pull/21552.diff","patch_url":"https://github.com/kubernetes/kubernetes/pull/21552.patch"},"body":"We do not need list all volume plugins in various ProbeVolumePlugins functions. Let's use factories, as already implemented in AdmissionController plugins.\r\n\r\nAs side-effect, all volume plugins are created in the same way, with VolumeConfig instance. It is not used in most plugins, but those who need some configuration will find it there."},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/186508902","html_url":"https://github.com/kubernetes/kubernetes/pull/21552#issuecomment-186508902","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/21552","id":186508902,"user":{"login":"thockin","id":5595220,"avatar_url":"https://avatars.githubusercontent.com/u/5595220?v=3","gravatar_id":"","url":"https://api.github.com/users/thockin","html_url":"https://github.com/thockin","followers_url":"https://api.github.com/users/thockin/followers","following_url":"https://api.github.com/users/thockin/following{/other_user}","gists_url":"https://api.github.com/users/thockin/gists{/gist_id}","starred_url":"https://api.github.com/users/thockin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thockin/subscriptions","organizations_url":"https://api.github.com/users/thockin/orgs","repos_url":"https://api.github.com/users/thockin/repos","events_url":"https://api.github.com/users/thockin/events{/privacy}","received_events_url":"https://api.github.com/users/thockin/received_events","type":"User","site_admin":false},"created_at":"2016-02-20T04:51:20Z","updated_at":"2016-02-20T04:51:20Z","body":"Yeah, I don't think we should do this.  It's too magical.  Is there a pressing problem this is trying to solve?\r\n\r\nAside from the \"magic\", I am not convinced this works.  AFAICT Go's linker is a graph, starting at \"package main\" and including packages that are explicitly imported, recursively.  Maybe I am missing the place where SOMEBODY depends on `pkg/volume/empty_dir` causing it to be linked and `init()` to be called?"}}