{"action":"created","comment":{"url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/comments/92608393","pull_request_review_id":13126953,"id":92608393,"diff_hunk":"@@ -0,0 +1,14 @@\n+# Unit Testing\n+\n+Make a python virtual environment, install the requirements with:\n+\n+    mkvirtualenv hatool -p python2","path":"files/default/README.md","position":5,"original_position":5,"commit_id":"0edf27c6b77ea78d957025e03059d03e90d63784","original_commit_id":"196e91e077e08316352bbc4da1165e6f662cba1d","user":{"login":"matelakat","id":1521690,"avatar_url":"https://avatars.githubusercontent.com/u/1521690?v=3","gravatar_id":"","url":"https://api.github.com/users/matelakat","html_url":"https://github.com/matelakat","followers_url":"https://api.github.com/users/matelakat/followers","following_url":"https://api.github.com/users/matelakat/following{/other_user}","gists_url":"https://api.github.com/users/matelakat/gists{/gist_id}","starred_url":"https://api.github.com/users/matelakat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matelakat/subscriptions","organizations_url":"https://api.github.com/users/matelakat/orgs","repos_url":"https://api.github.com/users/matelakat/repos","events_url":"https://api.github.com/users/matelakat/events{/privacy}","received_events_url":"https://api.github.com/users/matelakat/received_events","type":"User","site_admin":false},"body":"I'm removing those steps, and just assuming the reader is capable of creating an environment.","created_at":"2016-12-15T13:30:10Z","updated_at":"2016-12-15T13:30:10Z","html_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network/pull/9#discussion_r92608393","pull_request_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9","_links":{"self":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/comments/92608393"},"html":{"href":"https://github.com/SUSE-Cloud/cookbook-openstack-network/pull/9#discussion_r92608393"},"pull_request":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9"}}},"pull_request":{"url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9","id":98141069,"html_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network/pull/9","diff_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network/pull/9.diff","patch_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network/pull/9.patch","issue_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues/9","number":9,"state":"open","locked":false,"title":"Use the least busy agent as destination","user":{"login":"matelakat","id":1521690,"avatar_url":"https://avatars.githubusercontent.com/u/1521690?v=3","gravatar_id":"","url":"https://api.github.com/users/matelakat","html_url":"https://github.com/matelakat","followers_url":"https://api.github.com/users/matelakat/followers","following_url":"https://api.github.com/users/matelakat/following{/other_user}","gists_url":"https://api.github.com/users/matelakat/gists{/gist_id}","starred_url":"https://api.github.com/users/matelakat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matelakat/subscriptions","organizations_url":"https://api.github.com/users/matelakat/orgs","repos_url":"https://api.github.com/users/matelakat/repos","events_url":"https://api.github.com/users/matelakat/events{/privacy}","received_events_url":"https://api.github.com/users/matelakat/received_events","type":"User","site_admin":false},"body":"This change allows people to select which agent to use as a destination while moving routers. By default the choice was random. This patch changes the default to select always the least busy agent. The least busy agent has the smallest number of routers on it. If people want the random behaviour, they can select it with the --agent-selection-mode=random command line switch.\r\n\r\nThe new method first asks for the list of routers on each of the target agents, and saves this information in a cache. Each time when an agent is picked, the method is assuming that the move was successful, and maintains it's internal state accordingly. The cache of routers per agent will expire after 5 minutes, in which case neutron will be queried again.\r\n\r\nPlease note that this work is based on #7 ","created_at":"2016-12-15T12:24:55Z","updated_at":"2016-12-15T13:30:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"30468d89123751bbfb206dd2f9ed732c0bd736cf","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9/commits","review_comments_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9/comments","review_comment_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/comments{/number}","comments_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues/9/comments","statuses_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/statuses/0edf27c6b77ea78d957025e03059d03e90d63784","head":{"label":"matelakat:least-busy-agent","ref":"least-busy-agent","sha":"0edf27c6b77ea78d957025e03059d03e90d63784","user":{"login":"matelakat","id":1521690,"avatar_url":"https://avatars.githubusercontent.com/u/1521690?v=3","gravatar_id":"","url":"https://api.github.com/users/matelakat","html_url":"https://github.com/matelakat","followers_url":"https://api.github.com/users/matelakat/followers","following_url":"https://api.github.com/users/matelakat/following{/other_user}","gists_url":"https://api.github.com/users/matelakat/gists{/gist_id}","starred_url":"https://api.github.com/users/matelakat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matelakat/subscriptions","organizations_url":"https://api.github.com/users/matelakat/orgs","repos_url":"https://api.github.com/users/matelakat/repos","events_url":"https://api.github.com/users/matelakat/events{/privacy}","received_events_url":"https://api.github.com/users/matelakat/received_events","type":"User","site_admin":false},"repo":{"id":75310820,"name":"cookbook-openstack-network","full_name":"matelakat/cookbook-openstack-network","owner":{"login":"matelakat","id":1521690,"avatar_url":"https://avatars.githubusercontent.com/u/1521690?v=3","gravatar_id":"","url":"https://api.github.com/users/matelakat","html_url":"https://github.com/matelakat","followers_url":"https://api.github.com/users/matelakat/followers","following_url":"https://api.github.com/users/matelakat/following{/other_user}","gists_url":"https://api.github.com/users/matelakat/gists{/gist_id}","starred_url":"https://api.github.com/users/matelakat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matelakat/subscriptions","organizations_url":"https://api.github.com/users/matelakat/orgs","repos_url":"https://api.github.com/users/matelakat/repos","events_url":"https://api.github.com/users/matelakat/events{/privacy}","received_events_url":"https://api.github.com/users/matelakat/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/matelakat/cookbook-openstack-network","description":"Chef Cookbook - OpenStack Network","fork":true,"url":"https://api.github.com/repos/matelakat/cookbook-openstack-network","forks_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/forks","keys_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/teams","hooks_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/hooks","issue_events_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/issues/events{/number}","events_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/events","assignees_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/assignees{/user}","branches_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/branches{/branch}","tags_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/tags","blobs_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/git/refs{/sha}","trees_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/statuses/{sha}","languages_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/languages","stargazers_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/stargazers","contributors_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/contributors","subscribers_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/subscribers","subscription_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/subscription","commits_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/commits{/sha}","git_commits_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/git/commits{/sha}","comments_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/comments{/number}","issue_comment_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/issues/comments{/number}","contents_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/contents/{+path}","compare_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/merges","archive_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/downloads","issues_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/issues{/number}","pulls_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/pulls{/number}","milestones_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/milestones{/number}","notifications_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/labels{/name}","releases_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/releases{/id}","deployments_url":"https://api.github.com/repos/matelakat/cookbook-openstack-network/deployments","created_at":"2016-12-01T16:25:08Z","updated_at":"2016-12-01T16:25:10Z","pushed_at":"2016-12-15T12:18:57Z","git_url":"git://github.com/matelakat/cookbook-openstack-network.git","ssh_url":"git@github.com:matelakat/cookbook-openstack-network.git","clone_url":"https://github.com/matelakat/cookbook-openstack-network.git","svn_url":"https://github.com/matelakat/cookbook-openstack-network","homepage":"http://openstack.org","size":893,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":false,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"neutron-ha-tool-maintenance"}},"base":{"label":"SUSE-Cloud:neutron-ha-tool-maintenance","ref":"neutron-ha-tool-maintenance","sha":"a8ca35c10d2cb9f6c0b7cb214d9decdb9ec1c651","user":{"login":"SUSE-Cloud","id":1553906,"avatar_url":"https://avatars.githubusercontent.com/u/1553906?v=3","gravatar_id":"","url":"https://api.github.com/users/SUSE-Cloud","html_url":"https://github.com/SUSE-Cloud","followers_url":"https://api.github.com/users/SUSE-Cloud/followers","following_url":"https://api.github.com/users/SUSE-Cloud/following{/other_user}","gists_url":"https://api.github.com/users/SUSE-Cloud/gists{/gist_id}","starred_url":"https://api.github.com/users/SUSE-Cloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SUSE-Cloud/subscriptions","organizations_url":"https://api.github.com/users/SUSE-Cloud/orgs","repos_url":"https://api.github.com/users/SUSE-Cloud/repos","events_url":"https://api.github.com/users/SUSE-Cloud/events{/privacy}","received_events_url":"https://api.github.com/users/SUSE-Cloud/received_events","type":"Organization","site_admin":false},"repo":{"id":53420028,"name":"cookbook-openstack-network","full_name":"SUSE-Cloud/cookbook-openstack-network","owner":{"login":"SUSE-Cloud","id":1553906,"avatar_url":"https://avatars.githubusercontent.com/u/1553906?v=3","gravatar_id":"","url":"https://api.github.com/users/SUSE-Cloud","html_url":"https://github.com/SUSE-Cloud","followers_url":"https://api.github.com/users/SUSE-Cloud/followers","following_url":"https://api.github.com/users/SUSE-Cloud/following{/other_user}","gists_url":"https://api.github.com/users/SUSE-Cloud/gists{/gist_id}","starred_url":"https://api.github.com/users/SUSE-Cloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SUSE-Cloud/subscriptions","organizations_url":"https://api.github.com/users/SUSE-Cloud/orgs","repos_url":"https://api.github.com/users/SUSE-Cloud/repos","events_url":"https://api.github.com/users/SUSE-Cloud/events{/privacy}","received_events_url":"https://api.github.com/users/SUSE-Cloud/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network","description":"Chef Cookbook - OpenStack Network","fork":true,"url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network","forks_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/forks","keys_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/keys{/key_id}","collaborators_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/teams","hooks_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/hooks","issue_events_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues/events{/number}","events_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/events","assignees_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/assignees{/user}","branches_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/branches{/branch}","tags_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/tags","blobs_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/git/refs{/sha}","trees_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/git/trees{/sha}","statuses_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/statuses/{sha}","languages_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/languages","stargazers_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/stargazers","contributors_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/contributors","subscribers_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/subscribers","subscription_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/subscription","commits_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/commits{/sha}","git_commits_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/git/commits{/sha}","comments_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/comments{/number}","issue_comment_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues/comments{/number}","contents_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/contents/{+path}","compare_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/compare/{base}...{head}","merges_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/merges","archive_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/downloads","issues_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues{/number}","pulls_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls{/number}","milestones_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/milestones{/number}","notifications_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/labels{/name}","releases_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/releases{/id}","deployments_url":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/deployments","created_at":"2016-03-08T14:48:28Z","updated_at":"2016-03-08T14:48:29Z","pushed_at":"2016-12-15T12:24:55Z","git_url":"git://github.com/SUSE-Cloud/cookbook-openstack-network.git","ssh_url":"git@github.com:SUSE-Cloud/cookbook-openstack-network.git","clone_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network.git","svn_url":"https://github.com/SUSE-Cloud/cookbook-openstack-network","homepage":"http://openstack.org","size":872,"stargazers_count":0,"watchers_count":0,"language":"Ruby","has_issues":false,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":5,"mirror_url":null,"open_issues_count":4,"forks":5,"open_issues":4,"watchers":0,"default_branch":"neutron-ha-tool-maintenance"}},"_links":{"self":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9"},"html":{"href":"https://github.com/SUSE-Cloud/cookbook-openstack-network/pull/9"},"issue":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues/9"},"comments":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/issues/9/comments"},"review_comments":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9/comments"},"review_comment":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/pulls/9/commits"},"statuses":{"href":"https://api.github.com/repos/SUSE-Cloud/cookbook-openstack-network/statuses/0edf27c6b77ea78d957025e03059d03e90d63784"}}}}
{"actor":{"display_login":"matelakat"}}