#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#  http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
#

# standalone catalog file

brooklyn.catalog:
  version: "0.10.0-SNAPSHOT"   # BROOKLYN_VERSION
  items:
  - id: java-cluster-db-policy-example
    itemType: template
    name: Elastic Web + DB
    description: Sample elastic Java cluster fronted by nginx with a MySQL backend, including a scaling policy
    iconUrl: http://www.apache.org/foundation/press/kit/poweredBy/Apache_PoweredBy.png
    item:
      name: Elastic Web + DB
      services:
      - type: org.apache.brooklyn.entity.webapp.ControlledDynamicWebAppCluster
        name: My Web with Policy
        war: 
          http://repo1.maven.org/maven2/org/apache/brooklyn/example/brooklyn-example-hello-world-sql-webapp/0.9.0/brooklyn-example-hello-world-sql-webapp-0.9.0.war
        java.sysprops: 
          brooklyn.example.db.url: $brooklyn:formatString("jdbc:%s%s?user=%s&password=%s",
             component("db").attributeWhenReady("datastore.url"), "visitors", "brooklyn", "br00k11n")
      
        brooklyn.policies:
        - type: org.apache.brooklyn.policy.autoscaling.AutoScalerPolicy
          brooklyn.config:
            metric: $brooklyn:sensor("org.apache.brooklyn.entity.webapp.DynamicWebAppCluster", "webapp.reqs.perSec.windowed.perNode")
            metricLowerBound: 10
            metricUpperBound: 100
            minPoolSize: 1
            maxPoolSize: 5
            
      - type: org.apache.brooklyn.entity.database.mysql.MySqlNode
        id: db
        name: My DB
        creationScriptUrl:
          https://raw.githubusercontent.com/apache/brooklyn-library/master/examples/simple-web-cluster/src/main/resources/visitors-creation-script.sql
