{"action":"created","issue":{"url":"https://api.github.com/repos/convox/rack/issues/469","repository_url":"https://api.github.com/repos/convox/rack","labels_url":"https://api.github.com/repos/convox/rack/issues/469/labels{/name}","comments_url":"https://api.github.com/repos/convox/rack/issues/469/comments","events_url":"https://api.github.com/repos/convox/rack/issues/469/events","html_url":"https://github.com/convox/rack/pull/469","id":142449359,"number":469,"title":"Let CF implement SSL updates","user":{"login":"anthonyrisinger","id":202141,"avatar_url":"https://avatars.githubusercontent.com/u/202141?v=3","gravatar_id":"","url":"https://api.github.com/users/anthonyrisinger","html_url":"https://github.com/anthonyrisinger","followers_url":"https://api.github.com/users/anthonyrisinger/followers","following_url":"https://api.github.com/users/anthonyrisinger/following{/other_user}","gists_url":"https://api.github.com/users/anthonyrisinger/gists{/gist_id}","starred_url":"https://api.github.com/users/anthonyrisinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anthonyrisinger/subscriptions","organizations_url":"https://api.github.com/users/anthonyrisinger/orgs","repos_url":"https://api.github.com/users/anthonyrisinger/repos","events_url":"https://api.github.com/users/anthonyrisinger/events{/privacy}","received_events_url":"https://api.github.com/users/anthonyrisinger/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2016-03-21T19:38:27Z","updated_at":"2016-03-29T00:53:13Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/convox/rack/pulls/469","html_url":"https://github.com/convox/rack/pull/469","diff_url":"https://github.com/convox/rack/pull/469.diff","patch_url":"https://github.com/convox/rack/pull/469.patch"},"body":"Let CF perform the update instead of trying to do it manually. If all good, delete the old cert.\r\n\r\nI just realized `UpdateStack` doesn't wait for the update, so a CF rollback could fail if the cert is deleted out-of-band... the delete goroutine maybe needs to wait for the stack update to complete before trying to drop the old cert? I should note this problem exists right now, this patch doesn't make things worse it just delegates the work to CF.\r\n\r\nIn the future it might be nice to just tag the cert (and maybe other resources) as orphaned and allow some future garbage collector (the monitor process? a cron process?) to clean it up. This would be nice for things like certificates because CF does not actually create them, therefore it does not clean them up. Same concept applies to S3 buckets that CF refuses to drop... they could be tagged as orphaned.\r\n\r\n## Release Playbook\r\n- [x] Rebase against master\r\n- [x] Pass checks\r\n- [ ] Release branch ()\r\n- [ ] Pass CI ()\r\n- [ ] Code review\r\n- [ ] Merge into master\r\n- [ ] Release master ()\r\n- [ ] Pass CI ()\r\n- [ ] Update dev and testing racks\r\n- [ ] Publish release\r\n- [ ] Release CLI\r\n"},"comment":{"url":"https://api.github.com/repos/convox/rack/issues/comments/202648345","html_url":"https://github.com/convox/rack/pull/469#issuecomment-202648345","issue_url":"https://api.github.com/repos/convox/rack/issues/469","id":202648345,"user":{"login":"nzoschke","id":147410,"avatar_url":"https://avatars.githubusercontent.com/u/147410?v=3","gravatar_id":"","url":"https://api.github.com/users/nzoschke","html_url":"https://github.com/nzoschke","followers_url":"https://api.github.com/users/nzoschke/followers","following_url":"https://api.github.com/users/nzoschke/following{/other_user}","gists_url":"https://api.github.com/users/nzoschke/gists{/gist_id}","starred_url":"https://api.github.com/users/nzoschke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nzoschke/subscriptions","organizations_url":"https://api.github.com/users/nzoschke/orgs","repos_url":"https://api.github.com/users/nzoschke/repos","events_url":"https://api.github.com/users/nzoschke/events{/privacy}","received_events_url":"https://api.github.com/users/nzoschke/received_events","type":"User","site_admin":false},"created_at":"2016-03-29T00:53:13Z","updated_at":"2016-03-29T00:53:13Z","body":"I don't think there's a way to have CF update resources on delete. I do think you can see from the CF api if resources were retained though...."}}