{"action":"created","issue":{"url":"https://api.github.com/repos/brooklyncentral/clocker/issues/174","labels_url":"https://api.github.com/repos/brooklyncentral/clocker/issues/174/labels{/name}","comments_url":"https://api.github.com/repos/brooklyncentral/clocker/issues/174/comments","events_url":"https://api.github.com/repos/brooklyncentral/clocker/issues/174/events","html_url":"https://github.com/brooklyncentral/clocker/issues/174","id":111348512,"number":174,"title":"HAProxyController fails: \"UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\"","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":[{"url":"https://api.github.com/repos/brooklyncentral/clocker/labels/wontfix","name":"wontfix","color":"f7c6c7"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-10-14T08:29:22Z","updated_at":"2015-10-14T10:55:20Z","closed_at":null,"body":"Deploying the riak+web clusters app to a Clocker in AWS, the HAProxyController failed with the error `UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed`.\r\n\r\nThis is with running against Brooklyn 0.9.0-SNAPSHOT.\r\n\r\nMy guess is that it's related to the patched classes in clocker, given that we get the exception in the old-named `brooklyn.entity.proxy.haproxy.HAProxySshDriver.install`.\r\n\r\n```\r\nFailed after 8m 8s: Error invoking start at HAProxyControllerImpl{id=PxrLWkuI}: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\r\norg.apache.brooklyn.util.exceptions.PropagatedRuntimeException: Error invoking start at HAProxyControllerImpl{id=PxrLWkuI}: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\tat org.apache.brooklyn.core.mgmt.internal.EffectorUtils.handleEffectorException(EffectorUtils.java:270)\r\n\tat org.apache.brooklyn.core.effector.EffectorTasks$EffectorBodyTaskFactory$2.handleException(EffectorTasks.java:90)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask.handleException(DynamicSequentialTask.java:452)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:400)\r\n\tat org.apache.brooklyn.util.core.task.BasicExecutionManager$SubmissionCallable.call(BasicExecutionManager.java:468)\r\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:262)\r\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\r\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\r\n\tat java.lang.Thread.run(Thread.java:745)\r\nCaused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\tat org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:103)\r\n\tat org.apache.brooklyn.util.core.task.BasicTask.getUnchecked(BasicTask.java:353)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask.drain(DynamicSequentialTask.java:475)\r\n\tat org.apache.brooklyn.util.core.task.DynamicTasks.drain(DynamicTasks.java:313)\r\n\tat org.apache.brooklyn.util.core.task.DynamicTasks.waitForLast(DynamicTasks.java:302)\r\n\tat org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks.start(MachineLifecycleEffectorTasks.java:314)\r\n\tat org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StartEffectorBody.call(MachineLifecycleEffectorTasks.java:214)\r\n\tat org.apache.brooklyn.entity.software.base.lifecycle.MachineLifecycleEffectorTasks$StartEffectorBody.call(MachineLifecycleEffectorTasks.java:201)\r\n\tat org.apache.brooklyn.core.effector.EffectorTasks$EffectorBodyTaskFactory$1.call(EffectorTasks.java:82)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:342)\r\n\t... 5 more\r\nCaused by: java.util.concurrent.ExecutionException: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\tat java.util.concurrent.FutureTask.report(FutureTask.java:122)\r\n\tat java.util.concurrent.FutureTask.get(FutureTask.java:188)\r\n\tat com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63)\r\n\tat org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:342)\r\n\tat org.apache.brooklyn.util.core.task.BasicTask.getUnchecked(BasicTask.java:351)\r\n\t... 13 more\r\nCaused by: org.apache.brooklyn.util.exceptions.PropagatedRuntimeException: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\tat org.apache.brooklyn.util.exceptions.Exceptions.propagate(Exceptions.java:103)\r\n\tat org.apache.brooklyn.util.core.task.BasicTask.getUnchecked(BasicTask.java:353)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask.drain(DynamicSequentialTask.java:475)\r\n\tat org.apache.brooklyn.util.core.task.DynamicTasks.drain(DynamicTasks.java:313)\r\n\tat org.apache.brooklyn.util.core.task.DynamicTasks.waitForLast(DynamicTasks.java:302)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:383)\r\n\t... 5 more\r\nCaused by: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\tat java.util.concurrent.FutureTask.report(FutureTask.java:122)\r\n\tat java.util.concurrent.FutureTask.get(FutureTask.java:188)\r\n\tat com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:63)\r\n\tat org.apache.brooklyn.util.core.task.BasicTask.get(BasicTask.java:342)\r\n\tat org.apache.brooklyn.util.core.task.BasicTask.getUnchecked(BasicTask.java:351)\r\n\t... 9 more\r\nCaused by: java.lang.UnsupportedOperationException: Driver expected to be used in a container with HAProxy installed\r\n\tat brooklyn.entity.proxy.haproxy.HAProxySshDriver.install(HAProxySshDriver.java:46)\r\n\tat org.apache.brooklyn.entity.software.base.AbstractSoftwareProcessDriver$6.run(AbstractSoftwareProcessDriver.java:139)\r\n\tat java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)\r\n\tat org.apache.brooklyn.util.core.task.DynamicSequentialTask$DstJob.call(DynamicSequentialTask.java:342)\r\n\t... 5 more\r\n```"},"comment":{"url":"https://api.github.com/repos/brooklyncentral/clocker/issues/comments/148014572","html_url":"https://github.com/brooklyncentral/clocker/issues/174#issuecomment-148014572","issue_url":"https://api.github.com/repos/brooklyncentral/clocker/issues/174","id":148014572,"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":"2015-10-14T10:55:20Z","updated_at":"2015-10-14T10:55:20Z","body":"Although I assigned _wontfix_ status, I suppoose we could be nicer in Brooklyn (and Clocker) about error reporting and the types of locations entities want. I think the best way to fix this is to fail early with an `IllegalStateException` or even an `UnsupportedLocationException`?"}}