{"action":"created","issue":{"url":"https://api.github.com/repos/mesosphere/marathon-ui/issues/666","repository_url":"https://api.github.com/repos/mesosphere/marathon-ui","labels_url":"https://api.github.com/repos/mesosphere/marathon-ui/issues/666/labels{/name}","comments_url":"https://api.github.com/repos/mesosphere/marathon-ui/issues/666/comments","events_url":"https://api.github.com/repos/mesosphere/marathon-ui/issues/666/events","html_url":"https://github.com/mesosphere/marathon-ui/pull/666","id":137574026,"number":666,"title":"Feature- 3243 Simplify ports management","user":{"login":"aldipower","id":859154,"avatar_url":"https://avatars.githubusercontent.com/u/859154?v=3","gravatar_id":"","url":"https://api.github.com/users/aldipower","html_url":"https://github.com/aldipower","followers_url":"https://api.github.com/users/aldipower/followers","following_url":"https://api.github.com/users/aldipower/following{/other_user}","gists_url":"https://api.github.com/users/aldipower/gists{/gist_id}","starred_url":"https://api.github.com/users/aldipower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aldipower/subscriptions","organizations_url":"https://api.github.com/users/aldipower/orgs","repos_url":"https://api.github.com/users/aldipower/repos","events_url":"https://api.github.com/users/aldipower/events{/privacy}","received_events_url":"https://api.github.com/users/aldipower/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/mesosphere/marathon-ui/labels/in%20progress","name":"in progress","color":"ededed"}],"state":"open","locked":false,"assignee":{"login":"philipnrmn","id":2989362,"avatar_url":"https://avatars.githubusercontent.com/u/2989362?v=3","gravatar_id":"","url":"https://api.github.com/users/philipnrmn","html_url":"https://github.com/philipnrmn","followers_url":"https://api.github.com/users/philipnrmn/followers","following_url":"https://api.github.com/users/philipnrmn/following{/other_user}","gists_url":"https://api.github.com/users/philipnrmn/gists{/gist_id}","starred_url":"https://api.github.com/users/philipnrmn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipnrmn/subscriptions","organizations_url":"https://api.github.com/users/philipnrmn/orgs","repos_url":"https://api.github.com/users/philipnrmn/repos","events_url":"https://api.github.com/users/philipnrmn/events{/privacy}","received_events_url":"https://api.github.com/users/philipnrmn/received_events","type":"User","site_admin":false},"milestone":null,"comments":2,"created_at":"2016-03-01T13:26:20Z","updated_at":"2016-03-03T17:41:10Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/mesosphere/marathon-ui/pulls/666","html_url":"https://github.com/mesosphere/marathon-ui/pull/666","diff_url":"https://github.com/mesosphere/marathon-ui/pull/666.diff","patch_url":"https://github.com/mesosphere/marathon-ui/pull/666.patch"},"body":"DANGEROUS - THIS IS PR #666\r\n\r\nThis closes https://github.com/mesosphere/marathon/issues/3243\r\nand takes the new portDefinitons-handling into account https://github.com/mesosphere/marathon/pull/3302 https://github.com/mesosphere/marathon/issues/3263 .\r\n\r\nThe PR removes the obsolete docker-portMappings and ports form and model fields.\r\nIt introduces the new portDefinitions-field to the model and form, that combines those old features with new additions like a \"name\"-property.\r\n\r\nThe port definition structure can't be handled, because it contains labels:\r\n![ports1](https://cloud.githubusercontent.com/assets/859154/13428053/375191fc-dfb8-11e5-9f92-333ca6c7b916.png)\r\n\r\nRandomly assigned ports in Docker-HOST-mode:\r\n![ports2](https://cloud.githubusercontent.com/assets/859154/13428054/3751c06e-dfb8-11e5-8478-7d9566477ff0.png)\r\n\r\nOne port is manually set:\r\n![ports3](https://cloud.githubusercontent.com/assets/859154/13428052/3750fa1c-dfb8-11e5-8b1e-22c9edfef434.png)\r\n\r\nDocker-BRIDGE-mode can't randomly assign the container port:\r\n![ports4](https://cloud.githubusercontent.com/assets/859154/13428056/375259a2-dfb8-11e5-8b25-d1f76f502a87.png)\r\n\r\nThe portDefinitions will be translated to a Docker-portMapping behind the scenes if in bridge mode:\r\n![ports5](https://cloud.githubusercontent.com/assets/859154/13428055/37521c26-dfb8-11e5-89e8-ab2b06b14d1e.png)\r\n\r\nA CGROUP-container looks the same like Docker-HOST-mode:\r\n![ports6](https://cloud.githubusercontent.com/assets/859154/13428051/3750fef4-dfb8-11e5-96f1-3b02ba6fb7bc.png)\r\n\r\nThe new portDefinitions:\r\n![ports7](https://cloud.githubusercontent.com/assets/859154/13428057/3764e9a0-dfb8-11e5-9059-e5c6c2e39ed4.png)\r\n\r\n\r\nStill some tests are missing! Will add them during the review process."},"comment":{"url":"https://api.github.com/repos/mesosphere/marathon-ui/issues/comments/191879408","html_url":"https://github.com/mesosphere/marathon-ui/pull/666#issuecomment-191879408","issue_url":"https://api.github.com/repos/mesosphere/marathon-ui/issues/666","id":191879408,"user":{"login":"philipnrmn","id":2989362,"avatar_url":"https://avatars.githubusercontent.com/u/2989362?v=3","gravatar_id":"","url":"https://api.github.com/users/philipnrmn","html_url":"https://github.com/philipnrmn","followers_url":"https://api.github.com/users/philipnrmn/followers","following_url":"https://api.github.com/users/philipnrmn/following{/other_user}","gists_url":"https://api.github.com/users/philipnrmn/gists{/gist_id}","starred_url":"https://api.github.com/users/philipnrmn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipnrmn/subscriptions","organizations_url":"https://api.github.com/users/philipnrmn/orgs","repos_url":"https://api.github.com/users/philipnrmn/repos","events_url":"https://api.github.com/users/philipnrmn/events{/privacy}","received_events_url":"https://api.github.com/users/philipnrmn/received_events","type":"User","site_admin":false},"created_at":"2016-03-03T17:41:10Z","updated_at":"2016-03-03T17:41:10Z","body":"Beautiful work @aldipower :ship: "}}