{"action":"created","issue":{"url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller/issues/107","repository_url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller","labels_url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller/issues/107/labels{/name}","comments_url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller/issues/107/comments","events_url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller/issues/107/events","html_url":"https://github.com/GoogleCloudPlatform/metacontroller/issues/107","id":366471381,"node_id":"MDU6SXNzdWUzNjY0NzEzODE=","number":107,"title":"Multiple hook targets for a DecoratorController","user":{"login":"grantr","id":680,"node_id":"MDQ6VXNlcjY4MA==","avatar_url":"https://avatars3.githubusercontent.com/u/680?v=4","gravatar_id":"","url":"https://api.github.com/users/grantr","html_url":"https://github.com/grantr","followers_url":"https://api.github.com/users/grantr/followers","following_url":"https://api.github.com/users/grantr/following{/other_user}","gists_url":"https://api.github.com/users/grantr/gists{/gist_id}","starred_url":"https://api.github.com/users/grantr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grantr/subscriptions","organizations_url":"https://api.github.com/users/grantr/orgs","repos_url":"https://api.github.com/users/grantr/repos","events_url":"https://api.github.com/users/grantr/events{/privacy}","received_events_url":"https://api.github.com/users/grantr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-10-03T18:34:35Z","updated_at":"2018-10-22T17:49:30Z","closed_at":null,"author_association":"MEMBER","body":"I'm considering a routing use case for Metacontroller in which a StatefulSet of routing agents wish to receive webhooks containing objects that describe the routing table. The routing agents wish to avoid coordinating amongst themselves, so they each want to receive all updates so they can build the full routing table.\r\n\r\nThis could be accomplished manually by creating an identical DecoratorController object for each replica, but then the user has to keep track of the scale of the StatefulSet and create or delete objects when that changes. It would be convenient if DecoratorController could specify a Service name and send webhooks to **all** matching endpoints.\r\n\r\nIt would be especially convenient if Metacontroller also added the list of currently known endpoints to the DecoratorController's status. Then each webhook payload would contain a list of all known endpoints, allowing routing agents to identify their place in the list (by inspecting the `Host` header) and subdivide the routing space using consistent hashing or a similar method."},"comment":{"url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller/issues/comments/431913263","html_url":"https://github.com/GoogleCloudPlatform/metacontroller/issues/107#issuecomment-431913263","issue_url":"https://api.github.com/repos/GoogleCloudPlatform/metacontroller/issues/107","id":431913263,"node_id":"MDEyOklzc3VlQ29tbWVudDQzMTkxMzI2Mw==","user":{"login":"grantr","id":680,"node_id":"MDQ6VXNlcjY4MA==","avatar_url":"https://avatars3.githubusercontent.com/u/680?v=4","gravatar_id":"","url":"https://api.github.com/users/grantr","html_url":"https://github.com/grantr","followers_url":"https://api.github.com/users/grantr/followers","following_url":"https://api.github.com/users/grantr/following{/other_user}","gists_url":"https://api.github.com/users/grantr/gists{/gist_id}","starred_url":"https://api.github.com/users/grantr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grantr/subscriptions","organizations_url":"https://api.github.com/users/grantr/orgs","repos_url":"https://api.github.com/users/grantr/repos","events_url":"https://api.github.com/users/grantr/events{/privacy}","received_events_url":"https://api.github.com/users/grantr/received_events","type":"User","site_admin":false},"created_at":"2018-10-22T17:49:30Z","updated_at":"2018-10-22T17:49:30Z","author_association":"MEMBER","body":"I thought about this more over the weekend and realized it might make more sense as a separate webhook type `watch` in addition to `sync` and `finalize`. It doesn't make sense to allow fanned out recipients to update objects, since those updates will likely cause a resource version conflict."}}
{"actor":{"display_login":"grantr"}}