{"action":"created","issue":{"url":"https://api.github.com/repos/brooklyncentral/advanced-networking/issues/26","labels_url":"https://api.github.com/repos/brooklyncentral/advanced-networking/issues/26/labels{/name}","comments_url":"https://api.github.com/repos/brooklyncentral/advanced-networking/issues/26/comments","events_url":"https://api.github.com/repos/brooklyncentral/advanced-networking/issues/26/events","html_url":"https://github.com/brooklyncentral/advanced-networking/pull/26","id":54792473,"number":26,"title":"vcloud-director NAT: adds micro-service","user":{"login":"aledsage","id":593113,"avatar_url":"https://avatars.githubusercontent.com/u/593113?v=3","gravatar_id":"","url":"https://api.github.com/users/aledsage","html_url":"https://github.com/aledsage","followers_url":"https://api.github.com/users/aledsage/followers","following_url":"https://api.github.com/users/aledsage/following{/other_user}","gists_url":"https://api.github.com/users/aledsage/gists{/gist_id}","starred_url":"https://api.github.com/users/aledsage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aledsage/subscriptions","organizations_url":"https://api.github.com/users/aledsage/orgs","repos_url":"https://api.github.com/users/aledsage/repos","events_url":"https://api.github.com/users/aledsage/events{/privacy}","received_events_url":"https://api.github.com/users/aledsage/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-01-19T17:41:49Z","updated_at":"2015-01-20T11:03:12Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/brooklyncentral/advanced-networking/pulls/26","html_url":"https://github.com/brooklyncentral/advanced-networking/pull/26","diff_url":"https://github.com/brooklyncentral/advanced-networking/pull/26.diff","patch_url":"https://github.com/brooklyncentral/advanced-networking/pull/26.patch"},"body":"- A micro-service that exposes add/remove NAT rules via REST,\r\n  and performs those actions with appropriate locking.\r\n  Thus multiple AMP instances can share this same micro-service\r\n  and do the required locking when multiple edits the NAT rules\r\n  are happening concurrently.\r\n- Separates the existing vcloud code into two modules:\r\n  - vcloud-director: contains only code to talk directly to vcloud\r\n  - vcloud-director-portforwarding: for use with SubnetTier;\r\n    talks to the vcloud-director (or to the micro-service)."},"comment":{"url":"https://api.github.com/repos/brooklyncentral/advanced-networking/issues/comments/70637515","html_url":"https://github.com/brooklyncentral/advanced-networking/pull/26#issuecomment-70637515","issue_url":"https://api.github.com/repos/brooklyncentral/advanced-networking/issues/26","id":70637515,"user":{"login":"aledsage","id":593113,"avatar_url":"https://avatars.githubusercontent.com/u/593113?v=3","gravatar_id":"","url":"https://api.github.com/users/aledsage","html_url":"https://github.com/aledsage","followers_url":"https://api.github.com/users/aledsage/followers","following_url":"https://api.github.com/users/aledsage/following{/other_user}","gists_url":"https://api.github.com/users/aledsage/gists{/gist_id}","starred_url":"https://api.github.com/users/aledsage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aledsage/subscriptions","organizations_url":"https://api.github.com/users/aledsage/orgs","repos_url":"https://api.github.com/users/aledsage/repos","events_url":"https://api.github.com/users/aledsage/events{/privacy}","received_events_url":"https://api.github.com/users/aledsage/received_events","type":"User","site_admin":false},"created_at":"2015-01-20T11:03:12Z","updated_at":"2015-01-20T11:03:12Z","body":"Thanks for reviewing.\r\n\r\n@andreaturli I think the micro-service is needed if there is any chance of concurrent NAT rule updates (rather than just if highly concurrent), because the vcloud-director API seems fundamentally broken on that front. There is no other rational for introducing this."}}