{"action":"created","issue":{"url":"https://api.github.com/repos/apache/brooklyn-server/issues/37","repository_url":"https://api.github.com/repos/apache/brooklyn-server","labels_url":"https://api.github.com/repos/apache/brooklyn-server/issues/37/labels{/name}","comments_url":"https://api.github.com/repos/apache/brooklyn-server/issues/37/comments","events_url":"https://api.github.com/repos/apache/brooklyn-server/issues/37/events","html_url":"https://github.com/apache/brooklyn-server/pull/37","id":135996491,"number":37,"title":"Added start latch to BasicStartable and StartableApplication","user":{"login":"grkvlt","id":214870,"avatar_url":"https://avatars.githubusercontent.com/u/214870?v=3","gravatar_id":"","url":"https://api.github.com/users/grkvlt","html_url":"https://github.com/grkvlt","followers_url":"https://api.github.com/users/grkvlt/followers","following_url":"https://api.github.com/users/grkvlt/following{/other_user}","gists_url":"https://api.github.com/users/grkvlt/gists{/gist_id}","starred_url":"https://api.github.com/users/grkvlt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grkvlt/subscriptions","organizations_url":"https://api.github.com/users/grkvlt/orgs","repos_url":"https://api.github.com/users/grkvlt/repos","events_url":"https://api.github.com/users/grkvlt/events{/privacy}","received_events_url":"https://api.github.com/users/grkvlt/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2016-02-24T08:55:30Z","updated_at":"2016-03-03T18:49:37Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/brooklyn-server/pulls/37","html_url":"https://github.com/apache/brooklyn-server/pull/37","diff_url":"https://github.com/apache/brooklyn-server/pull/37.diff","patch_url":"https://github.com/apache/brooklyn-server/pull/37.patch"},"body":"Allows groups of components and applications to have their startup sequence controlled more easily. This includes only setting `service.isUp` to `true` on an `AbstractApplication` once it, and its children, have started. This is the same semantics as other entities, and allows a more consistent blueprint style.\r\n\r\nAlso reverts https://github.com/apache/brooklyn-server/commit/d7c3759a150f409d1674fdaf74117404d56a665d which prevents Clocker from re-using images."},"comment":{"url":"https://api.github.com/repos/apache/brooklyn-server/issues/comments/191910455","html_url":"https://github.com/apache/brooklyn-server/pull/37#issuecomment-191910455","issue_url":"https://api.github.com/repos/apache/brooklyn-server/issues/37","id":191910455,"user":{"login":"grkvlt","id":214870,"avatar_url":"https://avatars.githubusercontent.com/u/214870?v=3","gravatar_id":"","url":"https://api.github.com/users/grkvlt","html_url":"https://github.com/grkvlt","followers_url":"https://api.github.com/users/grkvlt/followers","following_url":"https://api.github.com/users/grkvlt/following{/other_user}","gists_url":"https://api.github.com/users/grkvlt/gists{/gist_id}","starred_url":"https://api.github.com/users/grkvlt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grkvlt/subscriptions","organizations_url":"https://api.github.com/users/grkvlt/orgs","repos_url":"https://api.github.com/users/grkvlt/repos","events_url":"https://api.github.com/users/grkvlt/events{/privacy}","received_events_url":"https://api.github.com/users/grkvlt/received_events","type":"User","site_admin":false},"created_at":"2016-03-03T18:49:37Z","updated_at":"2016-03-03T18:49:37Z","body":"@bostko I think this (and https://github.com/apache/brooklyn-library/pull/14) will do what you want. The `preInstall()` methods will be skipped if the `SKIP_INSTALL` key is set, and the new `prepare()` method will set up the entity internals every time."}}