You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by "Tidd, Bryan (MAN-Corporate)" <Br...@Manheim.com> on 2014/07/15 00:06:44 UTC

error with new 0.5.0 clocker

Successfully deployed my Docker Cluster, but cannot deploy sample application to it:

id: tomcat-cluster-with-mysql
name: "Tomcat Application Server Cluster with MySQL Database"
origin: "http://brooklyncentral.github.io/"
locations:
- docker-cloud

services:
- serviceType: brooklyn.entity.webapp.ControlledDynamicWebAppCluster
  id: tomcat-cluster
  name: "Tomcat Cluster"
  brooklyn.config:
    initialSize: 2
    wars.root:
      "https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/hello-world-sql.war"
    http.port: "8080+"
    proxy.http.port: "8000+"
    java.sysprops:
      brooklyn.example.db.url: >
        $brooklyn:formatString("jdbc:%s%s?user=%s&password=%s",
        component("mysql").attributeWhenReady("mapped.datastore.url"),
        "visitors", "brooklyn", "br00k11n")
    memberSpec:
      $brooklyn:entitySpec:
        type: brooklyn.entity.webapp.tomcat.TomcatServer
        brooklyn.config:
          docker.dockerfile.url:
            "https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/UsesJavaDockerfile"
          version: "7.0.53"
          jmx.enabled: true
          jmx.agent.mode: "JMXMP"
          jmx.direct.port: "30000+"
    controlleddynamicwebappcluster.webClusterSpec:
      $brooklyn:entitySpec:
        type: brooklyn.entity.webapp.DynamicWebAppCluster
        brooklyn.config:
          dynamiccluster.zone.enable: true
          dynamiccluster.zone.placementStrategy:
            brooklyn.location.docker.strategy.BreadthFirstPlacementStrategy
    controlleddynamicwebappcluster.controllerSpec:
      $brooklyn:entitySpec:
        type: brooklyn.entity.proxy.nginx.NginxController
        brooklyn.config:
          member.sensor.hostandport: "mapped.http.port"
- serviceType: brooklyn.entity.database.mysql.MySqlNode
  id: mysql
  name: MySQL Database
  brooklyn.config:
    creationScriptUrl:
      "https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/visitors-creation-script.sql"

Get Error:

Caused by: brooklyn.util.flags.ClassCoercionException: Cannot coerce type class java.lang.String to brooklyn.event.AttributeSensor (mapped.http.port): no adapter known
at brooklyn.util.flags.TypeCoercions.coerce(TypeCoercions.java:181) ~[brooklyn-core-0.7.0-SNAPSHOT.jar:0.7.0-SNAPSHOT]

Re: error with new 0.5.0 clocker

Posted by Andrew Kennedy <an...@cloudsoftcorp.com>.
Thanks for checking this, Bryan.

It's my fault, as I made a change to Brooklyn which enabled String to
Sensor coercion in ConfigKeys, but I hadn't compiled it into the build or
pushed it to the master branch yet. Sorry about that. I'll update the
distribution archive for the moment...

I think I need to add some CI builds for Clocker somewhere, to test these
things before a release. I can't use the Apache Jenkins server, but maybe
Travis CI or I could host it on the Cloudsoft Jenkins.

Cheers,
Andrew.

-- 
-- andrew kennedy ? engineer : http://cloudsoftcorp.com/developers/ ;


On 14 July 2014 23:21, Tidd, Bryan (MAN-Corporate) <Br...@manheim.com>
wrote:

> Change default YAML to member.sensor.hostAndPort and it worked. Please
> check default blueprints provided in the examples.
>
> Thanks
> Bryan
>
>
> On 7/14/14, 6:06 PM, "Tidd, Bryan (MAN-Corporate)"
> <Br...@Manheim.com> wrote:
>
> >Successfully deployed my Docker Cluster, but cannot deploy sample
> >application to it:
> >
> >id: tomcat-cluster-with-mysql
> >name: "Tomcat Application Server Cluster with MySQL Database"
> >origin: "http://brooklyncentral.github.io/"
> >locations:
> >- docker-cloud
> >
> >services:
> >- serviceType: brooklyn.entity.webapp.ControlledDynamicWebAppCluster
> >  id: tomcat-cluster
> >  name: "Tomcat Cluster"
> >  brooklyn.config:
> >    initialSize: 2
> >    wars.root:
> >
> >"https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/hello-world-sql.war"
> >    http.port: "8080+"
> >    proxy.http.port: "8000+"
> >    java.sysprops:
> >      brooklyn.example.db.url: >
> >        $brooklyn:formatString("jdbc:%s%s?user=%s&password=%s",
> >        component("mysql").attributeWhenReady("mapped.datastore.url"),
> >        "visitors", "brooklyn", "br00k11n")
> >    memberSpec:
> >      $brooklyn:entitySpec:
> >        type: brooklyn.entity.webapp.tomcat.TomcatServer
> >        brooklyn.config:
> >          docker.dockerfile.url:
> >
> >"https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/UsesJavaDockerfile"
> >          version: "7.0.53"
> >          jmx.enabled: true
> >          jmx.agent.mode: "JMXMP"
> >          jmx.direct.port: "30000+"
> >    controlleddynamicwebappcluster.webClusterSpec:
> >      $brooklyn:entitySpec:
> >        type: brooklyn.entity.webapp.DynamicWebAppCluster
> >        brooklyn.config:
> >          dynamiccluster.zone.enable: true
> >          dynamiccluster.zone.placementStrategy:
> >
> >brooklyn.location.docker.strategy.BreadthFirstPlacementStrategy
> >    controlleddynamicwebappcluster.controllerSpec:
> >      $brooklyn:entitySpec:
> >        type: brooklyn.entity.proxy.nginx.NginxController
> >        brooklyn.config:
> >          member.sensor.hostandport: "mapped.http.port"
> >- serviceType: brooklyn.entity.database.mysql.MySqlNode
> >  id: mysql
> >  name: MySQL Database
> >  brooklyn.config:
> >    creationScriptUrl:
> >
> >"
> https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/visitors-creation-scr
> >ipt.sql"
> >
> >Get Error:
> >
> >Caused by: brooklyn.util.flags.ClassCoercionException: Cannot coerce type
> >class java.lang.String to brooklyn.event.AttributeSensor
> >(mapped.http.port): no adapter known
> >at brooklyn.util.flags.TypeCoercions.coerce(TypeCoercions.java:181)
> >~[brooklyn-core-0.7.0-SNAPSHOT.jar:0.7.0-SNAPSHOT]
>
>

Re: error with new 0.5.0 clocker

Posted by "Tidd, Bryan (MAN-Corporate)" <Br...@Manheim.com>.
Change default YAML to member.sensor.hostAndPort and it worked. Please
check default blueprints provided in the examples.

Thanks
Bryan


On 7/14/14, 6:06 PM, "Tidd, Bryan (MAN-Corporate)"
<Br...@Manheim.com> wrote:

>Successfully deployed my Docker Cluster, but cannot deploy sample
>application to it:
>
>id: tomcat-cluster-with-mysql
>name: "Tomcat Application Server Cluster with MySQL Database"
>origin: "http://brooklyncentral.github.io/"
>locations:
>- docker-cloud
>
>services:
>- serviceType: brooklyn.entity.webapp.ControlledDynamicWebAppCluster
>  id: tomcat-cluster
>  name: "Tomcat Cluster"
>  brooklyn.config:
>    initialSize: 2
>    wars.root:
>      
>"https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/hello-world-sql.war"
>    http.port: "8080+"
>    proxy.http.port: "8000+"
>    java.sysprops:
>      brooklyn.example.db.url: >
>        $brooklyn:formatString("jdbc:%s%s?user=%s&password=%s",
>        component("mysql").attributeWhenReady("mapped.datastore.url"),
>        "visitors", "brooklyn", "br00k11n")
>    memberSpec:
>      $brooklyn:entitySpec:
>        type: brooklyn.entity.webapp.tomcat.TomcatServer
>        brooklyn.config:
>          docker.dockerfile.url:
>            
>"https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/UsesJavaDockerfile"
>          version: "7.0.53"
>          jmx.enabled: true
>          jmx.agent.mode: "JMXMP"
>          jmx.direct.port: "30000+"
>    controlleddynamicwebappcluster.webClusterSpec:
>      $brooklyn:entitySpec:
>        type: brooklyn.entity.webapp.DynamicWebAppCluster
>        brooklyn.config:
>          dynamiccluster.zone.enable: true
>          dynamiccluster.zone.placementStrategy:
>            
>brooklyn.location.docker.strategy.BreadthFirstPlacementStrategy
>    controlleddynamicwebappcluster.controllerSpec:
>      $brooklyn:entitySpec:
>        type: brooklyn.entity.proxy.nginx.NginxController
>        brooklyn.config:
>          member.sensor.hostandport: "mapped.http.port"
>- serviceType: brooklyn.entity.database.mysql.MySqlNode
>  id: mysql
>  name: MySQL Database
>  brooklyn.config:
>    creationScriptUrl:
>      
>"https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/visitors-creation-scr
>ipt.sql"
>
>Get Error:
>
>Caused by: brooklyn.util.flags.ClassCoercionException: Cannot coerce type
>class java.lang.String to brooklyn.event.AttributeSensor
>(mapped.http.port): no adapter known
>at brooklyn.util.flags.TypeCoercions.coerce(TypeCoercions.java:181)
>~[brooklyn-core-0.7.0-SNAPSHOT.jar:0.7.0-SNAPSHOT]