{"action":"created","issue":{"url":"https://api.github.com/repos/openshift/origin/issues/3483","labels_url":"https://api.github.com/repos/openshift/origin/issues/3483/labels{/name}","comments_url":"https://api.github.com/repos/openshift/origin/issues/3483/comments","events_url":"https://api.github.com/repos/openshift/origin/issues/3483/events","html_url":"https://github.com/openshift/origin/pull/3483","id":91820806,"number":3483,"title":"make deployments respect new status keys","user":{"login":"deads2k","id":8225098,"avatar_url":"https://avatars.githubusercontent.com/u/8225098?v=3","gravatar_id":"","url":"https://api.github.com/users/deads2k","html_url":"https://github.com/deads2k","followers_url":"https://api.github.com/users/deads2k/followers","following_url":"https://api.github.com/users/deads2k/following{/other_user}","gists_url":"https://api.github.com/users/deads2k/gists{/gist_id}","starred_url":"https://api.github.com/users/deads2k/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deads2k/subscriptions","organizations_url":"https://api.github.com/users/deads2k/orgs","repos_url":"https://api.github.com/users/deads2k/repos","events_url":"https://api.github.com/users/deads2k/events{/privacy}","received_events_url":"https://api.github.com/users/deads2k/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-06-29T14:27:29Z","updated_at":"2015-06-29T14:52:08Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/openshift/origin/pulls/3483","html_url":"https://github.com/openshift/origin/pull/3483","diff_url":"https://github.com/openshift/origin/pull/3483.diff","patch_url":"https://github.com/openshift/origin/pull/3483.patch"},"body":"The deployment controller is broken because it's setting a new status annotation, but looking at an old one to determine status.  This results in the controller getting stuck with deployments in running state:\r\n```\r\nI0629 09:37:41.983165   24673 controller.go:122] Failing deployment \"example/database-2\" because its deployer pod \"database-2-deploy\" disappeared\r\nI0629 09:37:41.994724   24673 controller.go:192] Updated deployment example/database-2 status from Running to Failed\r\nI0629 09:37:41.995724   24673 replication_controller.go:351] Finished syncing controller \"example/database-2\" (172.139µs)\r\nI0629 09:37:41.997417   24673 controller.go:122] Failing deployment \"example/database-2\" because its deployer pod \"database-2-deploy\" disappeared\r\nI0629 09:37:42.005396   24673 controller.go:192] Updated deployment example/database-2 status from Running to Failed\r\nI0629 09:37:42.005548   24673 replication_controller.go:351] Finished syncing controller \"example/database-2\" (169.6µs)\r\nI0629 09:37:42.008878   24673 controller.go:122] Failing deployment \"example/database-2\" because its deployer pod \"database-2-deploy\" disappeared\r\nI0629 09:37:42.016921   24673 replication_controller.go:351] Finished syncing controller \"example/database-2\" (176.462µs)\r\nI0629 09:37:42.018667   24673 controller.go:192] Updated deployment example/database-2 status from Running to Failed\r\nI0629 09:37:42.020571   24673 controller.go:122] Failing deployment \"example/database-2\" because its deployer pod \"database-2-deploy\" disappeared\r\nI0629 09:37:42.031217   24673 replication_controller.go:351] Finished syncing controller \"example/database-2\" (171.829µs)\r\nI0629 09:37:42.032111   24673 controller.go:192] Updated deployment example/database-2 status from Running to Failed\r\nI0629 09:37:42.034617   24673 controller.go:122] Failing deployment \"example/database-2\" because its deployer pod \"database-2-deploy\" disappeared\r\nI0629 09:37:42.046573   24673 replication_controller.go:351] Finished syncing controller \"example/database-2\" (164.056µs)\r\nI0629 09:37:42.047847   24673 controller.go:192] Updated deployment example/database-2 status from Running to Failed\r\n```\r\n\r\nWe should probably fix the deployment code to have an internal annotation and external serialization of that annotation for each version.  That would allow internal code to be agnostic of external serialization and still allow cross-talk between controllers running at different versions.\r\n\r\n@ironcladlou "},"comment":{"url":"https://api.github.com/repos/openshift/origin/issues/comments/116714530","html_url":"https://github.com/openshift/origin/pull/3483#issuecomment-116714530","issue_url":"https://api.github.com/repos/openshift/origin/issues/3483","id":116714530,"user":{"login":"ironcladlou","id":298299,"avatar_url":"https://avatars.githubusercontent.com/u/298299?v=3","gravatar_id":"","url":"https://api.github.com/users/ironcladlou","html_url":"https://github.com/ironcladlou","followers_url":"https://api.github.com/users/ironcladlou/followers","following_url":"https://api.github.com/users/ironcladlou/following{/other_user}","gists_url":"https://api.github.com/users/ironcladlou/gists{/gist_id}","starred_url":"https://api.github.com/users/ironcladlou/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ironcladlou/subscriptions","organizations_url":"https://api.github.com/users/ironcladlou/orgs","repos_url":"https://api.github.com/users/ironcladlou/repos","events_url":"https://api.github.com/users/ironcladlou/events{/privacy}","received_events_url":"https://api.github.com/users/ironcladlou/received_events","type":"User","site_admin":false},"created_at":"2015-06-29T14:52:08Z","updated_at":"2015-06-29T14:52:08Z","body":"@liggitt @smarterclayton this seems like a high priority."}}