{"action":"created","comment":{"url":"https://api.github.com/repos/NetSys/quilt/pulls/comments/83971067","pull_request_review_id":4573274,"id":83971067,"diff_hunk":"@@ -325,6 +353,78 @@ func updateWorkerDBC(view db.Database, self db.Minion, etcdData storeData) {\n \n \t\tview.Commit(dbc)\n \t}\n+\n+\tif self.Subnet == \"\" {\n+\t\treturn\n+\t}\n+\tsubnet := ip.Parse(self.Subnet, ip.QuiltPrefix, ip.QuiltMask)\n+\n+\toldContainers := view.SelectFromContainer(nil)\n+\tnewIPMap, err := updateContainerIP(etcdData, oldContainers, subnet, self, store)\n+\tif err != nil {\n+\t\treturn\n+\t}\n+\n+\tfor _, c := range oldContainers {\n+\t\tif ipAddr, ok := newIPMap[strconv.Itoa(c.StitchID)]; ok && ipAddr != \"\" {","path":"minion/etcd/network.go","position":231,"original_position":209,"commit_id":"533733fe8d92663bb77137e4f9a48667afde8b89","original_commit_id":"b50aaded7a6bf3bb5808fd677c38fde90626003e","user":{"login":"ejj","id":620438,"avatar_url":"https://avatars.githubusercontent.com/u/620438?v=3","gravatar_id":"","url":"https://api.github.com/users/ejj","html_url":"https://github.com/ejj","followers_url":"https://api.github.com/users/ejj/followers","following_url":"https://api.github.com/users/ejj/following{/other_user}","gists_url":"https://api.github.com/users/ejj/gists{/gist_id}","starred_url":"https://api.github.com/users/ejj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ejj/subscriptions","organizations_url":"https://api.github.com/users/ejj/orgs","repos_url":"https://api.github.com/users/ejj/repos","events_url":"https://api.github.com/users/ejj/events{/privacy}","received_events_url":"https://api.github.com/users/ejj/received_events","type":"User","site_admin":false},"body":"Why would this ever happen?  Isn't the source of truth on the IP the database code? I.E. shouldn't a particular container's IP be fixed by the code that's doing the assignment?","created_at":"2016-10-18T23:18:33Z","updated_at":"2016-10-18T23:35:46Z","html_url":"https://github.com/NetSys/quilt/pull/547#discussion_r83971067","pull_request_url":"https://api.github.com/repos/NetSys/quilt/pulls/547","_links":{"self":{"href":"https://api.github.com/repos/NetSys/quilt/pulls/comments/83971067"},"html":{"href":"https://github.com/NetSys/quilt/pull/547#discussion_r83971067"},"pull_request":{"href":"https://api.github.com/repos/NetSys/quilt/pulls/547"}}},"pull_request":{"url":"https://api.github.com/repos/NetSys/quilt/pulls/547","id":88566103,"html_url":"https://github.com/NetSys/quilt/pull/547","diff_url":"https://github.com/NetSys/quilt/pull/547.diff","patch_url":"https://github.com/NetSys/quilt/pull/547.patch","issue_url":"https://api.github.com/repos/NetSys/quilt/issues/547","number":547,"state":"open","locked":false,"title":"Minion subnet","user":{"login":"mmussomele","id":8631959,"avatar_url":"https://avatars.githubusercontent.com/u/8631959?v=3","gravatar_id":"","url":"https://api.github.com/users/mmussomele","html_url":"https://github.com/mmussomele","followers_url":"https://api.github.com/users/mmussomele/followers","following_url":"https://api.github.com/users/mmussomele/following{/other_user}","gists_url":"https://api.github.com/users/mmussomele/gists{/gist_id}","starred_url":"https://api.github.com/users/mmussomele/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmussomele/subscriptions","organizations_url":"https://api.github.com/users/mmussomele/orgs","repos_url":"https://api.github.com/users/mmussomele/repos","events_url":"https://api.github.com/users/mmussomele/events{/privacy}","received_events_url":"https://api.github.com/users/mmussomele/received_events","type":"User","site_admin":false},"body":"This patch changes IP assignment so that each minion gets it's own subnet and assigns IPs locally.\r\n\r\nUnit tested and works on sparkPI.spec","created_at":"2016-10-09T02:38:04Z","updated_at":"2016-10-18T23:35:46Z","closed_at":null,"merged_at":null,"merge_commit_sha":"07b0bde21fcf88001926a456c1784092eb76121f","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/NetSys/quilt/pulls/547/commits","review_comments_url":"https://api.github.com/repos/NetSys/quilt/pulls/547/comments","review_comment_url":"https://api.github.com/repos/NetSys/quilt/pulls/comments{/number}","comments_url":"https://api.github.com/repos/NetSys/quilt/issues/547/comments","statuses_url":"https://api.github.com/repos/NetSys/quilt/statuses/533733fe8d92663bb77137e4f9a48667afde8b89","head":{"label":"mmussomele:minion-subnet","ref":"minion-subnet","sha":"533733fe8d92663bb77137e4f9a48667afde8b89","user":{"login":"mmussomele","id":8631959,"avatar_url":"https://avatars.githubusercontent.com/u/8631959?v=3","gravatar_id":"","url":"https://api.github.com/users/mmussomele","html_url":"https://github.com/mmussomele","followers_url":"https://api.github.com/users/mmussomele/followers","following_url":"https://api.github.com/users/mmussomele/following{/other_user}","gists_url":"https://api.github.com/users/mmussomele/gists{/gist_id}","starred_url":"https://api.github.com/users/mmussomele/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmussomele/subscriptions","organizations_url":"https://api.github.com/users/mmussomele/orgs","repos_url":"https://api.github.com/users/mmussomele/repos","events_url":"https://api.github.com/users/mmussomele/events{/privacy}","received_events_url":"https://api.github.com/users/mmussomele/received_events","type":"User","site_admin":false},"repo":{"id":59638410,"name":"quilt","full_name":"mmussomele/quilt","owner":{"login":"mmussomele","id":8631959,"avatar_url":"https://avatars.githubusercontent.com/u/8631959?v=3","gravatar_id":"","url":"https://api.github.com/users/mmussomele","html_url":"https://github.com/mmussomele","followers_url":"https://api.github.com/users/mmussomele/followers","following_url":"https://api.github.com/users/mmussomele/following{/other_user}","gists_url":"https://api.github.com/users/mmussomele/gists{/gist_id}","starred_url":"https://api.github.com/users/mmussomele/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmussomele/subscriptions","organizations_url":"https://api.github.com/users/mmussomele/orgs","repos_url":"https://api.github.com/users/mmussomele/repos","events_url":"https://api.github.com/users/mmussomele/events{/privacy}","received_events_url":"https://api.github.com/users/mmussomele/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mmussomele/quilt","description":"Quilt","fork":true,"url":"https://api.github.com/repos/mmussomele/quilt","forks_url":"https://api.github.com/repos/mmussomele/quilt/forks","keys_url":"https://api.github.com/repos/mmussomele/quilt/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mmussomele/quilt/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mmussomele/quilt/teams","hooks_url":"https://api.github.com/repos/mmussomele/quilt/hooks","issue_events_url":"https://api.github.com/repos/mmussomele/quilt/issues/events{/number}","events_url":"https://api.github.com/repos/mmussomele/quilt/events","assignees_url":"https://api.github.com/repos/mmussomele/quilt/assignees{/user}","branches_url":"https://api.github.com/repos/mmussomele/quilt/branches{/branch}","tags_url":"https://api.github.com/repos/mmussomele/quilt/tags","blobs_url":"https://api.github.com/repos/mmussomele/quilt/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mmussomele/quilt/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mmussomele/quilt/git/refs{/sha}","trees_url":"https://api.github.com/repos/mmussomele/quilt/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mmussomele/quilt/statuses/{sha}","languages_url":"https://api.github.com/repos/mmussomele/quilt/languages","stargazers_url":"https://api.github.com/repos/mmussomele/quilt/stargazers","contributors_url":"https://api.github.com/repos/mmussomele/quilt/contributors","subscribers_url":"https://api.github.com/repos/mmussomele/quilt/subscribers","subscription_url":"https://api.github.com/repos/mmussomele/quilt/subscription","commits_url":"https://api.github.com/repos/mmussomele/quilt/commits{/sha}","git_commits_url":"https://api.github.com/repos/mmussomele/quilt/git/commits{/sha}","comments_url":"https://api.github.com/repos/mmussomele/quilt/comments{/number}","issue_comment_url":"https://api.github.com/repos/mmussomele/quilt/issues/comments{/number}","contents_url":"https://api.github.com/repos/mmussomele/quilt/contents/{+path}","compare_url":"https://api.github.com/repos/mmussomele/quilt/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mmussomele/quilt/merges","archive_url":"https://api.github.com/repos/mmussomele/quilt/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mmussomele/quilt/downloads","issues_url":"https://api.github.com/repos/mmussomele/quilt/issues{/number}","pulls_url":"https://api.github.com/repos/mmussomele/quilt/pulls{/number}","milestones_url":"https://api.github.com/repos/mmussomele/quilt/milestones{/number}","notifications_url":"https://api.github.com/repos/mmussomele/quilt/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mmussomele/quilt/labels{/name}","releases_url":"https://api.github.com/repos/mmussomele/quilt/releases{/id}","deployments_url":"https://api.github.com/repos/mmussomele/quilt/deployments","created_at":"2016-05-25T06:53:25Z","updated_at":"2016-05-25T17:31:40Z","pushed_at":"2016-10-18T03:24:39Z","git_url":"git://github.com/mmussomele/quilt.git","ssh_url":"git@github.com:mmussomele/quilt.git","clone_url":"https://github.com/mmussomele/quilt.git","svn_url":"https://github.com/mmussomele/quilt","homepage":"","size":15894,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"NetSys:master","ref":"master","sha":"74e1c72823d1d623d05c19449900467b48bb434a","user":{"login":"NetSys","id":3665805,"avatar_url":"https://avatars.githubusercontent.com/u/3665805?v=3","gravatar_id":"","url":"https://api.github.com/users/NetSys","html_url":"https://github.com/NetSys","followers_url":"https://api.github.com/users/NetSys/followers","following_url":"https://api.github.com/users/NetSys/following{/other_user}","gists_url":"https://api.github.com/users/NetSys/gists{/gist_id}","starred_url":"https://api.github.com/users/NetSys/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NetSys/subscriptions","organizations_url":"https://api.github.com/users/NetSys/orgs","repos_url":"https://api.github.com/users/NetSys/repos","events_url":"https://api.github.com/users/NetSys/events{/privacy}","received_events_url":"https://api.github.com/users/NetSys/received_events","type":"Organization","site_admin":false},"repo":{"id":43390663,"name":"quilt","full_name":"NetSys/quilt","owner":{"login":"NetSys","id":3665805,"avatar_url":"https://avatars.githubusercontent.com/u/3665805?v=3","gravatar_id":"","url":"https://api.github.com/users/NetSys","html_url":"https://github.com/NetSys","followers_url":"https://api.github.com/users/NetSys/followers","following_url":"https://api.github.com/users/NetSys/following{/other_user}","gists_url":"https://api.github.com/users/NetSys/gists{/gist_id}","starred_url":"https://api.github.com/users/NetSys/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NetSys/subscriptions","organizations_url":"https://api.github.com/users/NetSys/orgs","repos_url":"https://api.github.com/users/NetSys/repos","events_url":"https://api.github.com/users/NetSys/events{/privacy}","received_events_url":"https://api.github.com/users/NetSys/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/NetSys/quilt","description":"Quilt","fork":false,"url":"https://api.github.com/repos/NetSys/quilt","forks_url":"https://api.github.com/repos/NetSys/quilt/forks","keys_url":"https://api.github.com/repos/NetSys/quilt/keys{/key_id}","collaborators_url":"https://api.github.com/repos/NetSys/quilt/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/NetSys/quilt/teams","hooks_url":"https://api.github.com/repos/NetSys/quilt/hooks","issue_events_url":"https://api.github.com/repos/NetSys/quilt/issues/events{/number}","events_url":"https://api.github.com/repos/NetSys/quilt/events","assignees_url":"https://api.github.com/repos/NetSys/quilt/assignees{/user}","branches_url":"https://api.github.com/repos/NetSys/quilt/branches{/branch}","tags_url":"https://api.github.com/repos/NetSys/quilt/tags","blobs_url":"https://api.github.com/repos/NetSys/quilt/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/NetSys/quilt/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/NetSys/quilt/git/refs{/sha}","trees_url":"https://api.github.com/repos/NetSys/quilt/git/trees{/sha}","statuses_url":"https://api.github.com/repos/NetSys/quilt/statuses/{sha}","languages_url":"https://api.github.com/repos/NetSys/quilt/languages","stargazers_url":"https://api.github.com/repos/NetSys/quilt/stargazers","contributors_url":"https://api.github.com/repos/NetSys/quilt/contributors","subscribers_url":"https://api.github.com/repos/NetSys/quilt/subscribers","subscription_url":"https://api.github.com/repos/NetSys/quilt/subscription","commits_url":"https://api.github.com/repos/NetSys/quilt/commits{/sha}","git_commits_url":"https://api.github.com/repos/NetSys/quilt/git/commits{/sha}","comments_url":"https://api.github.com/repos/NetSys/quilt/comments{/number}","issue_comment_url":"https://api.github.com/repos/NetSys/quilt/issues/comments{/number}","contents_url":"https://api.github.com/repos/NetSys/quilt/contents/{+path}","compare_url":"https://api.github.com/repos/NetSys/quilt/compare/{base}...{head}","merges_url":"https://api.github.com/repos/NetSys/quilt/merges","archive_url":"https://api.github.com/repos/NetSys/quilt/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/NetSys/quilt/downloads","issues_url":"https://api.github.com/repos/NetSys/quilt/issues{/number}","pulls_url":"https://api.github.com/repos/NetSys/quilt/pulls{/number}","milestones_url":"https://api.github.com/repos/NetSys/quilt/milestones{/number}","notifications_url":"https://api.github.com/repos/NetSys/quilt/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/NetSys/quilt/labels{/name}","releases_url":"https://api.github.com/repos/NetSys/quilt/releases{/id}","deployments_url":"https://api.github.com/repos/NetSys/quilt/deployments","created_at":"2015-09-29T19:52:32Z","updated_at":"2016-10-17T18:12:19Z","pushed_at":"2016-10-18T01:52:18Z","git_url":"git://github.com/NetSys/quilt.git","ssh_url":"git@github.com:NetSys/quilt.git","clone_url":"https://github.com/NetSys/quilt.git","svn_url":"https://github.com/NetSys/quilt","homepage":"","size":28530,"stargazers_count":32,"watchers_count":32,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":18,"mirror_url":null,"open_issues_count":6,"forks":18,"open_issues":6,"watchers":32,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/NetSys/quilt/pulls/547"},"html":{"href":"https://github.com/NetSys/quilt/pull/547"},"issue":{"href":"https://api.github.com/repos/NetSys/quilt/issues/547"},"comments":{"href":"https://api.github.com/repos/NetSys/quilt/issues/547/comments"},"review_comments":{"href":"https://api.github.com/repos/NetSys/quilt/pulls/547/comments"},"review_comment":{"href":"https://api.github.com/repos/NetSys/quilt/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/NetSys/quilt/pulls/547/commits"},"statuses":{"href":"https://api.github.com/repos/NetSys/quilt/statuses/533733fe8d92663bb77137e4f9a48667afde8b89"}}}}
{"actor":{"display_login":"ejj"}}