1 tosca_definitions_version: tosca_simple_yaml_1_0
 
   4   TOSCA simple profile with nodejs and mongodb.
 
   7   - custom_types/paypalpizzastore_nodejs_app.yaml
 
  10   host_capabilities: &host_capabilities
 
  14   os_capabilities: &os_capabilities
 
  24       description: Number of CPUs for the server.
 
  26         - valid_values: [ 1, 2, 4, 8 ]
 
  30        description: The URL to download nodejs.
 
  31        default: http://github.com/paypal/rest-api-sample-app-nodejs.git
 
  35       type: tosca.nodes.WebApplication.PayPalPizzaStore
 
  37           github_url: { get_input: github_url }
 
  40         - database_connection: mongo_db
 
  44              implementation: nodejs/config.sh
 
  46                github_url: http://github.com/paypal/rest-api-sample-app-nodejs.git
 
  47                mongodb_ip: { get_attribute: [mongo_server, private_address] }
 
  48            start: nodejs/start.sh
 
  50       type: tosca.nodes.WebServer
 
  55           create: nodejs/create.sh
 
  57       type: tosca.nodes.Database
 
  62           create: mongodb/create_database.sh
 
  64       type: tosca.nodes.DBMS
 
  69           create: mongodb/create.sh
 
  71             implementation: mongodb/config.sh
 
  73               mongodb_ip: { get_attribute: [mongo_server, private_address] }
 
  74           start: mongodb/start.sh
 
  76       type: tosca.nodes.Compute
 
  79           properties: *host_capabilities
 
  81           properties: *os_capabilities
 
  83       type: tosca.nodes.Compute
 
  86           properties: *host_capabilities
 
  88           properties: *os_capabilities
 
  92       description: URL for the nodejs server, http://<IP>:3000
 
  93       value: { get_attribute: [app_server, private_address] }
 
  95       description: URL for the mongodb server.
 
  96       value: { get_attribute: [mongo_server, private_address] }