{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/71895","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/71895/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/71895/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/71895/events","html_url":"https://github.com/kubernetes/kubernetes/pull/71895","id":389078342,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM3MTY1Nzky","number":71895,"title":"Support IPVS graceful termination when deleting a service","user":{"login":"lbernail","id":5391707,"node_id":"MDQ6VXNlcjUzOTE3MDc=","avatar_url":"https://avatars1.githubusercontent.com/u/5391707?v=4","gravatar_id":"","url":"https://api.github.com/users/lbernail","html_url":"https://github.com/lbernail","followers_url":"https://api.github.com/users/lbernail/followers","following_url":"https://api.github.com/users/lbernail/following{/other_user}","gists_url":"https://api.github.com/users/lbernail/gists{/gist_id}","starred_url":"https://api.github.com/users/lbernail/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lbernail/subscriptions","organizations_url":"https://api.github.com/users/lbernail/orgs","repos_url":"https://api.github.com/users/lbernail/repos","events_url":"https://api.github.com/users/lbernail/events{/privacy}","received_events_url":"https://api.github.com/users/lbernail/received_events","type":"User","site_admin":false},"labels":[{"id":755527763,"node_id":"MDU6TGFiZWw3NTU1Mjc3NjM=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/area/ipvs","name":"area/ipvs","color":"0052cc","default":false},{"id":477397086,"node_id":"MDU6TGFiZWw0NzczOTcwODY=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/cncf-cla:%20yes","name":"cncf-cla: yes","color":"bfe5bf","default":false},{"id":105146071,"node_id":"MDU6TGFiZWwxMDUxNDYwNzE=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/kind/bug","name":"kind/bug","color":"e11d21","default":false},{"id":573014062,"node_id":"MDU6TGFiZWw1NzMwMTQwNjI=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/needs-ok-to-test","name":"needs-ok-to-test","color":"b60205","default":false},{"id":1111992057,"node_id":"MDU6TGFiZWwxMTExOTkyMDU3","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/needs-priority","name":"needs-priority","color":"ededed","default":false},{"id":200149833,"node_id":"MDU6TGFiZWwyMDAxNDk4MzM=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/release-note","name":"release-note","color":"c2e0c6","default":false},{"id":116712108,"node_id":"MDU6TGFiZWwxMTY3MTIxMDg=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/sig/network","name":"sig/network","color":"d2b48c","default":false},{"id":253450978,"node_id":"MDU6TGFiZWwyNTM0NTA5Nzg=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/size/L","name":"size/L","color":"ee9900","default":false}],"state":"open","locked":false,"assignee":{"login":"m1093782566","id":4953962,"node_id":"MDQ6VXNlcjQ5NTM5NjI=","avatar_url":"https://avatars1.githubusercontent.com/u/4953962?v=4","gravatar_id":"","url":"https://api.github.com/users/m1093782566","html_url":"https://github.com/m1093782566","followers_url":"https://api.github.com/users/m1093782566/followers","following_url":"https://api.github.com/users/m1093782566/following{/other_user}","gists_url":"https://api.github.com/users/m1093782566/gists{/gist_id}","starred_url":"https://api.github.com/users/m1093782566/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/m1093782566/subscriptions","organizations_url":"https://api.github.com/users/m1093782566/orgs","repos_url":"https://api.github.com/users/m1093782566/repos","events_url":"https://api.github.com/users/m1093782566/events{/privacy}","received_events_url":"https://api.github.com/users/m1093782566/received_events","type":"User","site_admin":false},"assignees":[{"login":"m1093782566","id":4953962,"node_id":"MDQ6VXNlcjQ5NTM5NjI=","avatar_url":"https://avatars1.githubusercontent.com/u/4953962?v=4","gravatar_id":"","url":"https://api.github.com/users/m1093782566","html_url":"https://github.com/m1093782566","followers_url":"https://api.github.com/users/m1093782566/followers","following_url":"https://api.github.com/users/m1093782566/following{/other_user}","gists_url":"https://api.github.com/users/m1093782566/gists{/gist_id}","starred_url":"https://api.github.com/users/m1093782566/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/m1093782566/subscriptions","organizations_url":"https://api.github.com/users/m1093782566/orgs","repos_url":"https://api.github.com/users/m1093782566/repos","events_url":"https://api.github.com/users/m1093782566/events{/privacy}","received_events_url":"https://api.github.com/users/m1093782566/received_events","type":"User","site_admin":false}],"milestone":null,"comments":2,"created_at":"2018-12-09T23:35:08Z","updated_at":"2018-12-10T02:41:06Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/71895","html_url":"https://github.com/kubernetes/kubernetes/pull/71895","diff_url":"https://github.com/kubernetes/kubernetes/pull/71895.diff","patch_url":"https://github.com/kubernetes/kubernetes/pull/71895.patch"},"body":"/kind bug\r\n\r\n**What this PR does / why we need it**:\r\nTrigger graceful termination for all real servers when a service is deleted\r\nUnbind addresses only when the VS is finally deleted\r\n\r\n**Which issue(s) this PR fixes**:\r\nFixes #71894\r\n\r\n**Special notes for your reviewer**:\r\nI moved address unbinding from `cleanLegacyBindAddr` to `cleanLegacyService` to use the same termination logic\r\nI modified tests accordingly: use a fake proxier in `TestCleanLegacyService` to be able to test for addresses bound, and add excludeCIDR to `NewFakeProxier` to cover the same tests.\r\n \r\nI'm not sure if this is the best solution but we can use it as a basis for discussion.\r\n\r\n**Does this PR introduce a user-facing change?**:\r\n```release-note\r\nSupport graceful termination with IPVS when deleting a service\r\n```\r\n\r\n/sig network\r\n/area ipvs\r\n/assign @m1093782566\r\ncc @Lion-Wei "},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/445637783","html_url":"https://github.com/kubernetes/kubernetes/pull/71895#issuecomment-445637783","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/71895","id":445637783,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0NTYzNzc4Mw==","user":{"login":"m1093782566","id":4953962,"node_id":"MDQ6VXNlcjQ5NTM5NjI=","avatar_url":"https://avatars1.githubusercontent.com/u/4953962?v=4","gravatar_id":"","url":"https://api.github.com/users/m1093782566","html_url":"https://github.com/m1093782566","followers_url":"https://api.github.com/users/m1093782566/followers","following_url":"https://api.github.com/users/m1093782566/following{/other_user}","gists_url":"https://api.github.com/users/m1093782566/gists{/gist_id}","starred_url":"https://api.github.com/users/m1093782566/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/m1093782566/subscriptions","organizations_url":"https://api.github.com/users/m1093782566/orgs","repos_url":"https://api.github.com/users/m1093782566/repos","events_url":"https://api.github.com/users/m1093782566/events{/privacy}","received_events_url":"https://api.github.com/users/m1093782566/received_events","type":"User","site_admin":false},"created_at":"2018-12-10T02:41:06Z","updated_at":"2018-12-10T02:41:06Z","author_association":"MEMBER","body":"/ok-to-test"}}
{"actor":{"display_login":"m1093782566"}}